由于系统迁移到政务云(centos系统),经常会扫描出mysql漏洞,需要时不时升级mysql,以前升级的方式很粗暴,先备份-删除原数据库-导入备份数据,整套操作下来整奔溃,今天尝试用拷贝数据目录的方法,发现正常使用,借此做一下记录。linux环境下安装mysql可以参考https://www.cnblogs.com/secretmrj/p/15600144.html#page_end_html

我原来数据库安装目录:

/usr/local/mysql

数据文件地址:

/usr/local/mysql/data

下面是操作开始:

1、新版本下载地址:

MySQL :: Download MySQL Community Server

选择需要下载的版本:

2、上传到云服务器:

拷贝到/usr/local/中,用以下命令解压:

# .tar.gz 后缀

tar -zxvf 文件名

# .tar.xz 后缀

tar -Jxvf 文件名

3、停止mysql服务

service mysql stop

4、备份原系统(/usr/local):

mv /usr/local/mysql /usr/local/mysql_bak

5、重命名第二步解压的目录

mv mysql-8.0.32-linux-glibc2.12-x86_64 mysql

6、拷贝原data到新目录中

cp -rf /usr/local/mysql_bak/data /usr/local/mysql

7、改变mysql/data 权限

chown -R mysql:mysql /usr/local/mysql/data

chmod -R 750 /usr/local/mysql/data

chown -R mysql. /usr/local/mysql

8、启动mysql服务

service mysql start

有时会出现The server quit without updating PID file的错误,用下面命令查找mysql进程,并用kill -9 进程ID,然后重新运行service mysql start

ps -ef |grep mysql