在centos上安装MySQL装了很久,总是各种错误,非常痛苦,最后总算是安装成功,建议在安装前先快照。
卸载mariadb.
#列出所有被安装的rpm package
rpm -qa | grep mariadb
#强制卸载
rpm -e --nodeps mariadb-libs-5.5.37-1.el7_0.x86_64
# 下载mysql源安装包
wget http://dev.mysql.com/get/mysql57-community-release-el7-8.noarch.rpm
# 安装mysql源
yum localinstall mysql57-community-release-el7-8.noarch.rpm
#检查mysql源是否安装成功
yum repolist enabled | grep "mysql.*-community.*"
#安装MySQL
yum install mysql-community-server
#启动MySQL服务
systemctl start mysqld
#查看MySQL的启动状态
systemctl status mysqld
#开机启动
systemctl enable mysqld
systemctl daemon-reload
#禁用密码策略 修改字符集
vi /etc/my.cnf
validate_password = off
character-set-server=utf8
#重新启动mysql服务使配置生效:
systemctl restart mysqld
#修改root本地登录密码
mysql安装完成之后,在/var/log/mysqld.log文件中给root生成了一个默认密码。通过下面的方式找到root默认密码,然后登录mysql进行修改:
grep 'temporary password' /var/log/mysqld.log
ALTER USER 'root'@'localhost' IDENTIFIED BY 'zxc';
添加远程连接登录用户
mysql>GRANT ALL PRIVILEGES ON *.* TO 'root'@'%'IDENTIFIED BY 'zxc' WITH GRANT OPTION;
#centos7没有iptables,开放firewall端口即可,也可安装配置iptables
firewall-cmd --zone=public --add-port=80/tcp --permanent #添加80端口
firewall-cmd --zone=public --add-port=3306/tcp --permanent #添加3306端口
systemctl start firewalld # 重启firewall