温馨提示×

Linux MySQL如何进行版本升级

小樊
63
2025-09-12 08:26:12
栏目: 云计算

Linux下升级MySQL版本主要有以下两种方法,步骤如下:

方法一:使用包管理器升级(推荐)

1. 备份数据

mysqldump -u root -p --all-databases > full_backup.sql  # 逻辑备份  
# 或使用物理备份工具(如Percona XtraBackup)  

2. 停止MySQL服务

sudo systemctl stop mysql  # Debian/Ubuntu/CentOS/RHEL通用  

3. 卸载旧版本

  • Debian/Ubuntu
    sudo apt-get remove --purge mysql-server mysql-common  
    sudo apt-get autoremove  
    
  • CentOS/RHEL
    sudo yum remove mysql-server mysql-common  
    

4. 安装新版本

  • Debian/Ubuntu
    sudo apt-get update  
    sudo apt-get install mysql-server  # 会自动安装最新版  
    
  • CentOS/RHEL
    sudo yum install mysql-server  # 需先添加官方仓库  
    

5. 启动服务并升级系统表

sudo systemctl start mysql  
mysql_upgrade -u root -p  # 检查并升级系统表  

6. 验证升级

mysql -u root -p -e "SELECT VERSION();"  # 确认版本  

方法二:手动升级(适用于大版本跨升级)

1. 备份数据与配置

同方法一。

2. 停止服务并备份原文件

sudo systemctl stop mysql  
sudo cp -R /var/lib/mysql /var/lib/mysql_backup  # 备份数据目录  
sudo cp -R /etc/mysql /etc/mysql_backup  # 备份配置文件  

3. 下载并解压新版本

cd /opt  
wget https://dev.mysql.com/get/Downloads/MySQL-8.0/mysql-8.0.37-linux-glibc2.28-x86_64.tar.xz  
tar -xf mysql-8.0.37-linux-glibc2.28-x86_64.tar.xz  

4. 替换二进制文件

sudo mv /usr/local/mysql /usr/local/mysql_backup  # 备份旧二进制  
sudo mv mysql-8.0.37-linux-glibc2.28-x86_64 /usr/local/mysql  
sudo chown -R mysql:mysql /usr/local/mysql  

5. 恢复数据与配置

sudo cp -R /var/lib/mysql_backup/* /usr/local/mysql/data/  
sudo cp /etc/mysql_backup/my.cnf /etc/my.cnf  # 若有自定义配置  

6. 启动服务并升级

sudo systemctl start mysql  
# 若跨大版本,需执行:  
sudo /usr/local/mysql/bin/mysqld --upgrade=AUTO  

7. 验证

同方法一。

注意事项

  • 兼容性:升级前需查阅新版本官方文档,确认与应用程序的兼容性。
  • 测试环境:生产环境升级前,先在测试环境验证。
  • 日志监控:升级后查看MySQL日志(/var/log/mysql/),排查错误。

参考来源:

0