CentOS7 安装 mysql8
#本文主要从以下几方面对自己在centos7下安装musql8过程做总结:
- 清理残留
- centos7安装mysql8步骤
第一部分 清理残留
1.mysql的残留
1.1.使用以下命令查看当前安装mysql情况,查找以前是否装有mysql
rpm -qa|grep -i mysql
例如:
[root@localhost ~]# rpm -qa|grep -i mysql
mysql-community-libs-8.0.17-1.el7.x86_64
mysql-community-server-8.0.17-1.el7.x86_64
mysql-community-common-8.0.17-1.el7.x86_64
mysql-community-client-8.0.17-1.el7.x86_64
mysql80-community-release-el7-1.noarch
1.2.停止musql服务、删除之前安装的mysql
删除命令:
rpm -e –nodeps 包名
如果提示依赖包错误,则使用以下命令尝试
rpm -ev MySQL-client-5.5.25a-1.rhel5 --nodeps
如果提示错误:error: %preun(xxxxxx) scriptlet failed, exit status 1
则用以下命令尝试:
rpm -e --noscripts MySQL-client-5.5.25a-1.rhel5
1.3.查找之前老版本mysql的文件夹残留,并删除
find / -name mysql
结果例如:
/var/lib/mysql
/var/lib/mysql/mysql
/usr/lib64/mysql
删除对应的mysql目录
rm -rf /var/lib/mysql
rm -rf /var/lib/mysql
rm -rf /usr/lib64/mysql
注意:卸载后/etc/my.cnf不会删除,需要进行手工删除
rm -rf /etc/my.cnf
1.4.再次查找机器是否安装musql
rpm -qa|grep -i mysql
2.MariaDB的残留
由于MySQL在CentOS7中收费了,所以已经不支持MySQL了,取而代之在CentOS7内部集成了mariadb,而安装MySQL的话会和MariaDB的文件冲突,所以需要先卸载掉MariaDB.
2.1 使用rpm 命令查找出要删除的mariadb文件;
rpm -pa | grep mariadb
2.2 删除
同mysql,这里不做重复介绍
第二部分 安装mysql
1.添加mysql8的本地源
- 1.1执行以下命令获取安装mysql源
- wget https://repo.mysql.com//mysql80-community-release-el7-1.noarch.rpm
- sudo yum localinstall mysql80-community-release-el7-1.noarch.rpm
- 1.2 可以用下面命令检测源是否添加成功
- yum repolist enabled | grep "mysql.*-community.*"
2.安装mysql本地源
- 执行以下命令进行安装
- sudo yum install mysql-community-server
-
注:安装过程中有询问输入y回车即可。
-
启动mysql
- sudo service mysqld start
- 你可以用下面的命令检查MySQL的运行状态
- sudo service mysqld status
- 注意:如果你的服务器内存是500M或者更小,可能会因为内存不够导致无法启动成功。
修改/etc/my.cnf中的innodb_buffer_pool_size=50M或者更小即可
3.mysql root账号权限配制和远程连接
3.1登陆MySQL本地Shell客户端,并修改root初始密码
3.1.1 软件安装好之后,会在错误日志中生成一个超级用户的初始密码,用下面的命令可以查看这个初始密码
sudo grep 'temporary password' /var/log/mysqld.log
2018-04-27T05:20:28.645777Z 5 [Note] [MY-010454] [Server] A temporary password is generated for root@localhost: nDjEy-#jv7Dn
3.1.2 登陆mysql shell客户端,用ALTER USER指令修改初始密码
登录指令
mysql -u root -p
修改原始密码
ALTER USER 'root'@'localhost' IDENTIFIED BY 'MyNewPass4!';
4.修改root账号远程访问权限
4.1 执行以下命令进行修改
use mysql;
update user set host="%" where user='root';
GRANT ALL ON *.* TO 'root'@'%';
flush privileges;
执行完之后用exit命令退出shell客户端,重启MySQL。
然后就可以在客户端中测试一下链接是否正常了。
注:需要开启端口,以及设置自启动
centOS防火墙使用的是firewall
具体开启命令请查看
开机自启指令:
systemctl enable mysqld.service
本文出自:
[1]:https://www.cnblogs.com/nicknailo/articles/8563456.html
[2]: https://www.cnblogs.com/virde/p/centos-mysql8-install.html