Ubuntu 上 MariaDB 版本迁移与升级实操指南
一 迁移策略与前置准备
mysqldump -u root -p --single-transaction --routines --triggers --all-databases > backup.sql二 就地升级步骤(同系列小版本,Ubuntu 常见)
mysqldump -u root -p --single-transaction --routines --triggers --all-databases > backup.sqlsudo systemctl stop mariadbsudo apt-key adv --recv-keys --keyserver hkp://keyserver.ubuntu.com:80 0xF1656F24C74CD1D8lsb_release -cs 输出):
echo "deb [arch=amd64] https://mirrors.ustc.edu.cn/mariadb/repo/10.5/ubuntu $(lsb_release -cs) main" | sudo tee /etc/apt/sources.list.d/mariadb.listsudo apt updatesudo apt install mariadb-server mariadb-clientsudo systemctl start mariadbsudo mariadb-upgrade -u root -pmysql -V 与 SELECT VERSION(); 查看版本;抽查关键库表。三 跨版本或跨产品迁移步骤(导出导入,更稳妥)
mysqldump -u root -p --single-transaction --routines --triggers --set-gtid-purged=OFF --all-databases > backup.sqlmysql -u root -p < backup.sqlsudo mariadb-upgrade -u root -p四 常见问题与修复
UPDATE mysql.user SET plugin='unix_socket' WHERE User='root'; FLUSH PRIVILEGES;[mysqld] 加入 plugin-load-add=auth_socket.so,重启后用 mysql -u root -p 登录并重置密码与插件。sudo /lib/systemd/systemd-sysv-install disable mysqlsudo aa-disable /usr/sbin/mysqld(必要时调整 /etc/apparmor.d/usr.sbin.mysqld 策略),重启。bind-address(如注释或改为 0.0.0.0)、防火墙与用户授权(如 GRANT ALL ON *.* TO 'root'@'%' IDENTIFIED BY 'pwd'; FLUSH PRIVILEGES;)。