当前位置: 首页 > news >正文

乌班图mysql如何小版本升级

Ubuntu 20.04 下 MySQL 8.0.42 (系统源) 升级至 8.0.43 (官方源) 的完整操作手册


第一阶段:备份 (生命线)

在执行任何操作前,必须完成。

  1. 备份所有数据库数据
mysqldump -u root -p --all-databases --master-data=2--single-transaction>/root/all_db_backup_20260113.sql
  1. 备份旧配置文件
cp/etc/mysql/mysql.conf.d/mysqld.cnf /root/mysqld.cnf.bak

第二阶段:准备环境 (下载与卸载)

  1. 下载 MySQL 8.0.43 Bundle 包
cd/root/wgethttps://cdn.mysql.com/archives/mysql-8.0/mysql-server_8.0.43-1ubuntu20.04_amd64.deb-bundle.tar
  1. 解压文件
mkdirmysql-installtar-xvf mysql-server_8.0.43-1ubuntu20.04_amd64.deb-bundle.tar -C mysql-install/
  1. 卸载旧版 Ubuntu MySQL(只删软件,保留数据):
aptremove mysql-server mysql-client mysql-common mysql-server-core-* mysql-client-core-* -yaptautoremove -y

第三阶段:安装新版本

  1. 进入安装目录
cd/root/mysql-install/
  1. 批量安装所有包(忽略顺序报错,稍后修复):
dpkg -i *.deb
  1. 自动修复依赖(这一步最关键,会自动补全libmecab2等依赖并配置 MySQL):
aptupdate&&apt-finstall-y

交互提示选择

  • Configuring mysql-community-server (Data directory found): 选<Ok>
  • Root Password: 输入旧密码(不要留空)
  • Password Encryption: 必须选Legacy Authentication Method (Retain MySQL 5.x Compatibility)

第四阶段:解决 AppArmor 卡死问题 (如遇到)

如果安装过程中卡在Configuring mysql-community-server不动,或者报错AppArmor parser error

  1. 修复缺失的安全文件(在当前终端执行即可):
touch/etc/apparmor.d/abstractions/mysql
  1. 重载 AppArmor
serviceapparmor reload
  1. 强制继续配置
dpkg --configure -a

第五阶段:恢复配置文件 (您要求的覆盖法)

安装完成后,将旧的配置还原回去,确保网站能连上。

  1. 强制覆盖配置
cp-f /root/mysqld.cnf.bak /etc/mysql/mysql.conf.d/mysqld.cnf
  1. 修正权限(防止 MySQL 读不到文件):
chmod644/etc/mysql/mysql.conf.d/mysqld.cnf

第六阶段:清理与验证 (收尾)

  1. 清理多余的测试/调试包(释放空间):
aptremove mysql-testsuite mysql-community-test mysql-community-server-debug mysql-community-test-debug -y
  1. 重启服务并检查
systemctl restart mysql systemctl status mysql
  1. 确认版本
mysql -V

(预期输出: Ver 8.0.43 …)

http://www.jsqmd.com/news/241149/

相关文章:

  • SpringBoot+Vue 汽车票网上预订系统平台完整项目源码+SQL脚本+接口文档【Java Web毕设】
  • proteus示波器用于AT89C51看门狗定时器验证的完整流程
  • 基于PCAN的远程IO控制系统:项目应用
  • Python测试开发工具库:测试环境变量统一配置与加载工具
  • 低功耗MCU中UDS诊断唤醒机制设计完整指南
  • vitis安装实战案例:结合Vivado实现一体化平台部署
  • 精密制造行业应用AR装配技术
  • 用户 APC 的执行过程(下)
  • ⚡_实时系统性能优化:从毫秒到微秒的突破[20260113173734]
  • PTL仓储亮灯系统如何实现拣选“零”误差运营?
  • Keil与ST-Link连接配置:新手友好型指南
  • [特殊字符]_安全性能平衡术:如何在保证安全的前提下提升性能[20260113174726]
  • STM32芯片调试:JLink仿真器时序控制全面讲解
  • 解决 smb 签名漏洞 SMB Signing not required
  • 高压电缆故障预警与定位:基于行波与北斗的高精度监测系统解析
  • License Plate Detection Dataset (10,125 Images) 车牌检测数据集(10,125张图像)
  • 企业AI平台运营的关键密码,AI应用架构师独家解读
  • 摩擦纳米发电机高效波浪能收集方法研究:基于光学动作捕捉浮子俯仰角及摇摆性能提供高精度验证数据 |中科院一区期刊王中林院士团队案例
  • multisim14.3安装与破解步骤:初学者实用教程
  • 【期货量化入门】Python获取期货实时行情(TqSdk完整代码)
  • 浏览器插件到底安全不?教你几招快速检测方法
  • 如何检测并清除Linux系统中的恶意软件并进行预防?
  • ICRA 2025 南理工团队| 基于光学动作捕捉系统提供高精度位姿数据的腱驱动连续体机械臂(TDCM)的阻抗-容错控制实现高精度轨迹跟踪与柔顺力控
  • ST7735与MCU通信优化:智能穿戴设备操作指南
  • CCS20新手教程:手把手带你熟悉开发环境
  • ARM架构启动流程解析:零基础完整示例
  • vivado ip核创建全流程系统学习
  • 绿电直供与源网荷储一体化——探索零碳产业园区的能源闭环路径
  • Proteus元器件大全:Proteus 8.0库文件全面讲解
  • Netty入门详解:高性能网络编程框架深度解析