第一步:检查服务器已装的MySQL
[root@localhost ~]#rpm -qa|grep -i mysql
如果显示列表存在已安装,则都使用rpm remove去卸载,例子(mysql-libs.x86_64)如下:
[root@localhost ~]#rpm remove mysql-libs.x86_64
然后再通过检查命令检查是否卸载干净。
第二步:更新yum源,使用yum安装MySQL
到http://dev.mysql.com/downloads/repo/yum/找要下载文件的链接
[root@localhost ~]#wget https://dev.mysql.com/get/mysql57-community-release-el6-11.noarch.rpm
安装下载的
[root@localhost ~]#yum localinstall mysql57-community-release-el6-11.noarch.rpm
查看这个源所包含的版本,以及默认版本
[root@localhost ~]#yum repolist all | grep mysql
查看到5.7是默认版本,所以可以直接安装
[root@localhost ~]#yum install mysql-community-server
然后就是各种ok,完成安装
第三步:启动与登录MySQL
[root@localhost ~]#service mysqld start
启动成功之后,使用mysql -u root 命令登录,会出现以下报错:
ERROR 1045 (28000): Access denied for user ‘root’@’localhost’ (using password: NO)
这是因为mysql安装完成之后,在/var/log/mysqld.log文件中给root生成了一个默认密码。
我们可以先把登录验证关闭后,设置完root的密码,再将登录验证开启。
修改/etc/my.cnf, 在[mysqld]下面加入skip-grant-tables=1
service mysqld restart
mysql -u root 这次可以了
修改root密码
mysql>use mysql;
mysql>update user set authentication_string = password('root'), password_expired = 'N', password_last_changed = now() where user = 'root';
mysql>exit;
然后把刚刚在my.cnf加的语句去掉,重启mysql服务就可以通过mysql -u root -p 登录
第四步,远程连接
完成以上步骤之后,只能本机连接,如果想要远程连接数据库,需要执行如下命令(不建议使用root远程登录)
mysql>use mysql;
mysql>grant all on *.* to 'root'@'%' identified by '密码' with grant option;
--这里的密码必须大小写加标点符号,否则会报错
完成以上步骤之后,以下命令查看密码策略的相关信息
mysql>show variables like '%password%';
validate_password_policy:密码策略,默认为MEDIUM策略
validate_password_dictionary_file:密码策略文件,策略为STRONG才需要
validate_password_length:密码最少长度
validate_password_mixed_case_count:大小写字符长度,至少1个
validate_password_number_count :数字至少1个
validate_password_special_char_count:特殊字符至少1个
上述参数是默认策略MEDIUM的密码检查规则。
为了安全,添加远程登录用户
默认只允许root帐户在本地登录,如果想要远程连接数据库,为了安全起见,添加一个新的帐户:
mysql>grant all privileges on *.* to 'drathin'@'%' identified by 'Password123!' with grant option;
默认配置文件路径:
配置文件:/etc/my.cnf
日志文件:/var/log//var/log/mysqld.log
服务启动脚本:/usr/lib/systemd/system/mysqld.service
socket文件:/var/run/mysqld/mysqld.pid