温馨提示×

ubuntu mysql怎样升级版本

小樊
34
2026-09-28 06:33:46
栏目: 云计算

在 Ubuntu 上升级 MySQL 版本,常见有 APT 官方源升级 和 MySQL 官方仓库升级 两种方式。下面按最常用、最安全的思路说明。


一、升级前必做(非常重要)

1. 备份数据库

mysqldump -u root -p --all-databases > all_db_backup.sql

或物理备份:

systemctl stop mysql
cp -r /var/lib/mysql /var/lib/mysql_backup

2. 查看当前版本

mysql -V
# 或
mysql -u root -p -e "SELECT VERSION();"

3. 确认 Ubuntu 版本

lsb_release -a

二、通过 Ubuntu 官方 APT 升级(推荐)

适用于:小版本升级(如 5.7 → 5.7.x)
或 Ubuntu 新版本自带更高 MySQL(如 20.04 → 22.04)

1. 更新系统

sudo apt update
sudo apt upgrade

2. 升级 MySQL

sudo apt install --only-upgrade mysql-server

3. 检查版本

mysql -V

⚠️ 如果是 跨大版本(如 5.7 → 8.0),Ubuntu APT 默认不会自动升,需要用下面方法。


三、升级到 MySQL 8.0(官方仓库方式)

1. 添加 MySQL 官方源

wget https://dev.mysql.com/get/mysql-apt-config_0.8.29-1_all.deb
sudo dpkg -i mysql-apt-config_0.8.29-1_all.deb

选择 MySQL 8.0

sudo apt update

2. 停止旧 MySQL

sudo systemctl stop mysql

3. 安装 MySQL 8.0

sudo apt install mysql-server

4. 运行升级脚本(关键)

sudo mysql_upgrade -u root -p

(MySQL 8.0.16+ 可省略,启动自动升级)

5. 启动并验证

sudo systemctl start mysql
mysql -V

四、跨大版本注意事项(非常重要)

  • ✅ 5.7 → 8.0 不兼容点

    • 默认认证插件改为 caching_sha2_password
    • 一些 SQL 语法不兼容
    • 旧客户端可能连不上
  • ✅ 建议先:

    mysqldump 全库
    

    再升级


五、常见问题

1. 升级后无法启动

journalctl -xe
cat /var/log/mysql/error.log

2. 数据目录冲突

不要直接覆盖 /var/lib/mysql,先备份


六、总结建议

场景 推荐方式
小版本升级 apt upgrade
5.7 → 8.0 官方仓库
生产环境 先备份 + 测试机验证

如果你告诉我:

  • 当前 MySQL 版本
  • Ubuntu 版本
  • 是否生产环境

我可以给你定制升级步骤。

0 踩