首先先安装mysql5.7.26,因为要求安装的版本要和原来的一样,数据路径也要和原来一致
一、安装mysql5.7.26
mysql官网各种版本下载网址
MySQL :: Download MySQL Community Server (Archived Versions)
1、下载mysql安装包
2、环境准备
centos7.9
mysql5.7.26包
3、卸载旧版本
检查是否存在旧mysql
rpm -qa | grep mysql
rpm -qa | grep mariadb
依次卸载
rpm -e --nodeps 包名
如果提示错误,尝试用下列命令执行
rpm -ev 包名 --nodeps
rpm -e --noscripts 包名
查找之前老版本mysql的目录,并且删除老版本mysql的文件和库
find /-name mysql
#显示
/var/lib/mysql
/var/lib/mysql/mysql
/usr/lib64/mysql
# 依次删除
rm -rf /var/lib/mysql
rm -rf /var/lib/mysql/mysql
rm -rf /usr/lib64/mysql
4、开始安装
上传压缩文件到服务器
解压文件到目录
tar-xvf mysql-5.7.26-1.el7.x86_64.rpm-bundle.tar -C mysql
cd mysql
安装
rpm -ivh mysql-community-common-5.7.19-1.el7.x86_64.rpm --force --nodeps
rpm -ivh mysql-community-libs-5.7.19-1.el7.x86_64.rpm --force --nodeps
rpm -ivh mysql-community-client-5.7.19-1.el7.x86_64.rpm --force --nodeps
rpm -ivh mysql-community-server-5.7.19-1.el7.x86_64.rpm --force --nodeps
修改配置文件
就是这一步!!!,我想将mysql的数据路径更换,然后也创建了此路径
mysql起不来!!
我把路径的属主属组也都改了,权限也改了,还是一样的报错,改成原来的/var/lib/mysql就可以正常启动。
这是GPT原话,想到了selinux和防火墙,我就把防火墙和selinux都关了,就能正常启动了!!!
#临时关闭selinux
setenforce 0
#永久关闭selinux
vim /etc/selinux/config
找到SELINUX,将其改为disabled
systemctl start mysqld #启动MySQL
grep 'password' /var/log/mysqld.log #查找初始密码
mysql -uroot -p #登录MySQL
输入密码#密码要符合mysql安全规则,否则修改不成功
ALTER USER 'root'@'localhost' IDENTIFIED BY '密码';
之前只知道selinux和防火墙是一起关闭的,没想到还会对这样的事情有影响,确实了解的不多,以后要学习一下selinux相关的知识。