Ubuntu MariaDB升级与维护建议
导读:Ubuntu 上 MariaDB 的升级与维护建议 一 升级策略与准备 明确目标版本与路径:优先使用 Ubuntu 官方仓库的小版本升级;跨大版本(如 10.3 → 10.11)建议先在测试环境验证,再按阶段升级,必要时采用 逻辑备份/还...
Ubuntu 上 MariaDB 的升级与维护建议
一 升级策略与准备
- 明确目标版本与路径:优先使用 Ubuntu 官方仓库的小版本升级;跨大版本(如 10.3 → 10.11)建议先在测试环境验证,再按阶段升级,必要时采用 逻辑备份/还原 的方式降低风险。
- 完整备份与回滚方案:
- 逻辑备份:
mysqldump -u root -p --single-transaction --routines --triggers --all-databases > backup.sql - 物理备份:
sudo systemctl stop mariadb & & sudo cp -a /var/lib/mysql /var/lib/mysql.bak-$(date +%F) - 配置与系统快照:
sudo tar czf mariadb-conf-$(date +%F).tgz /etc/mysql /etc/my.cnf* /var/log/mysql
- 逻辑备份:
- 维护窗口与变更管控:选择业务低峰期,通知应用方,准备回滚脚本与演练记录。
- 依赖与兼容性检查:核对 GLIBC 与库依赖、存储引擎(如 InnoDB)、复制/集群拓扑、第三方插件与应用的 SQL 兼容性。
- 小版本就地升级通常安全;跨大版本或跨发行版源升级,优先采用“备份—全新安装—导入数据”的保守路径。
二 就地小版本升级步骤
- 更新索引与系统:
sudo apt update & & sudo apt upgrade - 执行安全与配置检查:
sudo mysql_upgrade -u root -p(必要时加--force),检查并修正不兼容的 SQL_MODE、存储引擎与视图定义。 - 重启服务:
sudo systemctl restart mariadb - 版本核验:
mysql -V或SELECT VERSION(); - 验证应用连通性与关键业务查询/存储过程。
三 跨版本或跨源升级步骤
- 规划与备份:按“准备”节完成全量与物理备份,冻结写入或切换主从,准备回滚。
- 添加 MariaDB 官方 APT 源(示例为 10.5,请替换为目标版本与 Ubuntu 代号):
- 创建源文件:
echo "deb [arch=amd64] https://mirror.yandex.ru/mariadb/repo/10.5/ubuntu $(lsb_release -sc) main" | sudo tee /etc/apt/sources.list.d/mariadb.list - 导入 GPG 公钥(以 10.5 为例):
sudo apt-key adv --recv-keys --keyserver hkp://keyserver.ubuntu.com:80 0xF1656F24C74CD1D8
- 创建源文件:
- 执行升级:
sudo apt update & & sudo apt install mariadb-server mariadb-client - 升级后处理:运行
mysql_upgrade,重启服务,核验版本与复制状态。 - 认证与登录问题处理:若从 MySQL 迁移或升级后出现
ERROR 1524 (HY000): Plugin 'unix_socket' is not loaded,可临时以--skip-grant-tables启动,调整mysql.user的plugin为mysql_native_password并重置密码后恢复。
四 日常维护与监控
- 备份策略:
- 每日全量 + 二进制日志(Point-in-Time Recovery);保留至少 7–30 天。
- 定期演练恢复流程,校验备份可用性与一致性。
- 安全加固:执行
sudo mysql_secure_installation,设置 root 强密码、移除匿名用户、禁止远程 root、删除测试库。 - 监控与告警:关注错误日志、慢查询日志、连接数、复制延迟、磁盘/InnoDB 空间使用;设置阈值告警。
- 性能与健康:定期使用 MySQLTuner 获取配置与指标建议,结合业务做索引与 SQL 优化。
五 常见问题与回滚
- 常见故障与修复:
- 升级后启动失败:检查 InnoDB 系统表空间/页大小变更、不兼容参数、残留
.frm等;必要时以旧版本数据目录回滚并重新评估升级路径。 - 复制中断:比对主从 GTID/位置,重建复制或跳过错误事务(谨慎)。
- 权限/登录异常:核对
user表的host、plugin、authentication_string,必要时重置。
- 升级后启动失败:检查 InnoDB 系统表空间/页大小变更、不兼容参数、残留
- 回滚方案优先级:
- 逻辑回滚:导入升级前全量备份;
- 物理回滚:停止服务,恢复
/var/lib/mysql.bak-< date>; - 快照/镜像回滚(如有)。
- 验证:回滚后核对数据一致性、复制状态与业务功能。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: Ubuntu MariaDB升级与维护建议
本文地址: https://pptw.com/jishu/777924.html
