ubuntu:
apt-get install mysql
强烈推荐使用ubuntu从这儿就很方便了
下载 mysql源安装包
[root@localhost ~]# wget https://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm
-bash: wget: 未找到命令
wget 命令没有的话,就安装下
yum -y install wget
然后继续执行上面的 wget 命令
[root@localhost ~]# wget https://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm
在线安装Mysql
yum -y install mysql-community-server
启动Mysql服务
systemctl start mysqld
设置开机启动
[root@localhost ~]# systemctl enable mysqld
[root@localhost ~]# systemctl daemon-reload
修改root本地登录密码
mysql安装完成之后,在/var/log/mysqld.log文件中给root生成了一个临时的默认密码。记下它一会用来登录mysql,修改密码
[root@localhost ~]# cat /var/log/mysqld.log | grep password
[root@localhost ~]# mysql -u root -p
Enter password:
输入临时密码 进入mysql命令行;
mysql> alter user 'root'@'localhost' identified by '你要改的密码';
mv mysql-5.7.19-linux-glibc2.12-x86_64 /usr/local/mysql
移动到/usr/local下改名成mysql
windows(my.ini) Linux (my-default.cnf)文件 在support-files 目录下
cd support-files/
复制my.cnf 到 /etc/my.cnf (mysql启动时自动读取)
输入命令cp my-default.cnf /etc/my.cnf
然后配置文件中修改字符乱码等问题
vim /etc/my.cnf
[mysql]
default-character-set=utf8 #解决客户端乱码
[mysqld]
default-storage-engine=INNODB
character_set_server=utf8 #解决服务端乱码
也可以在安装好好输入以下命令实现开机启动:注意(这会还没安装完成别输入以下,启动服务和开机启动命令)
#安装好后先启动Mysql服务
[root@localhost ~]# systemctl start mysqld
#实现开机启动
[root@localhost ~]# systemctl enable mysqld
[root@localhost ~]# systemctl daemon-reload
修改/etc/init.d/mysql 参数
vim /etc/init.d/mysql
把程序运行目录,和data两个目录位置给它
basedir=/usr/local/mysql
datadir=/usr/local/mysql/data
安装和初始化数据库命令:
./mysqld --initialize --user=mysql --basedir=/usr/local/mysql/--datadir=/usr/local/mysql/data/
这儿会生成一个临时密码,记住。该密码也保存在: /var/log/mysqld.log 文件中
cat /var/log/mysqld.log | grep password
嗯狗头像那个位置就是了,临时密码
[root@localhost bin]# ./mysqld_safe --user=mysql & #(&符表示提交到后台运行mysql服务)
或系统启动:随便目录
[root@localhost ~]# systemctl start mysqld
登录mysql:
[root@localhost ~]# mysql -uroot -p #输入刚才记下的临时密码,忘记了去 /var/log/mysqld.log 里面查
#接着输入密码
修改密码:
alter user 'root'@'localhost' identified by 'new_password';
#new_password就是换成你自己想要改的密码 ,注意:mysql的每一条命令后面都要加 ; 分号。
以后也可以通过修改密码字段:注意mysql 5.7 以后 密码字段名称变成:authentication_string
update mysql.user set authentication_string=password('你的密码') where user='root';
创建/授权用户:
查看 test 库是否存在
不存在就 :
create database test;
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| test |
| webproject |
+--------------------+
5 rows in set (0.81 sec)
mysql> grant all on test.* to '想要创建的用户名'@'%' identified by 'password'; #1
Query OK, 0 rows affected, 1 warning (1.13 sec)
1处all 代表所有权限都给了,可以给以下权限中选,查: select 插入:insert 改:update 删: delete 创建: create 删除:drop 等等......嫌麻烦就 all 全给了
然后 on 数据库名,点 . *代表下面的所有库都可以访问,如果是root用户远程授权,就可以 grant all on . 所有权限,所有库。 '想要创建的用户名' 自己想一个 @ 后面跟 ip 地址,% 代表所有地方都可以访问,localhost 代表只能本地访问, 后面的 identified by ‘password’ 在这儿输入你的密码就好了
一般还是别关防火墙:开端口
[root@localhost ~]# firewall-cmd --zone=public --add-port=3306/tcp --permanent
success
[root@localhost ~]# firewall-cmd --reload
success
再登录Mysql
mysql>flush privileges;
刷新下
添加mysql服务
输入命令 chkconfig --add mysql
设置mysql服务为自动
输入命令 chkconfig mysql on