CentOS7.4上安装MySQL步骤-已经试验过可以成功安装通过
安装的系统是centOS7.4,记录一下安装mysql5.7版本的步骤。
第一步:rpm -qa | grep mariadb
centos默认装有mariadb的安装包,mysql的分支而已,因为被oracle收购后,社区还怕闭源弄出的分支而已。
通过 rpm -e --nodeps mariadb-libs-5.5.52-1.el7.x86_64 卸载掉即可
第二步:wget http://repo.mysql.com/mysql57-community-release-el7-8.noarch.rpm
如果没有wget命令,需要先yum安装wget。
第三步:rpm -ivh mysql57-community-release-el7-8.noarch.rpm
第四步:yum -y install mysql-server
安装complete
然后修改配置文件
第五步:vim /etc/my.cnf,
添加server_id = 1
expire_logs_days = 7
并 service mysqld restart 重启mysql服务
设置binlog日志过期时间为7天
第六步:通过grep 'password' /var/log/mysqld.log 查看现在的密码:
第七步:通过 mysql -uroot -p 输入上面查到的乱密码登录后修改root的密码
由于mysql5.7之后安全策略增强,密码要包含数字、大小写字母和特殊符号,为了统一好记,设置成了Root!2018
alter user 'root'@'localhost' identified by 'Root!2018';
flush privileges;
第八步:使用sqlyog等界面化工具是不能使用root登录的,需要创建新用户才能登录
create user '你的用户名'@'%' IDENTIFIED BY '你的密码';
grant all on *.* to '你的用户名'@'%'; // 设置权限 ,现在是所有的库权限都给了该用户
或者设置某个库的权限给该用户
grant all on 库名.* to '你的用户名'@'%';
flush privileges;
第九步:如果当前防火墙开着,外部依然连接不上数据库的
查看防火墙状态 systemctl status firewalld
如果防火墙关了,最好开启一下 systemctl start firewalld
开启后,要将mysql的端口3306 开放出来
firewall-cmd --add-port=3306/tcp --permanent
看到success即可。
重启防火墙 systemctl restart firewalld
现在就可以使用sqlyog登录了