ubuntu 升级mysql由mysql5.7.42 升级到8.4.0
ubuntu 升级 mysql5.7.42 到 8.4.0
1.备份数据库数据
2.卸载mysql5.7.42
2.1停止 MySQL 服务
systemctl stop mysql
2.2卸载所有 MySQL 5.7 包
apt remove --purge mysql-server mysql-client mysql-common mysql-community-server mysql-community-client mysql-community-common
2.3清理残留文件和目录
sudo rm -rf /etc/mysql /var/lib/mysql /var/log/mysql /var/log/mysql* /etc/init.d/mysql
sudo rm -rf /usr/lib/mysql /usr/share/mysql /usr/bin/mysql /usr/sbin/mysqld
sudo rm -rf /etc/systemd/system/mysql.service
sudo rm -rf /var/run/mysqld
apt autoremove -y
apt autoclean -y
2.4确认系统里没有残留
dpkg -l | grep mysql
3.安装mysql8.4.0
3.1 下载 Oracle 官方仓库包
wget https://dev.mysql.com/get/mysql-apt-config_0.8.36-1_all.deb
3.2.配置 MySQL APT 仓库(你已有 .deb 文件)
dpkg -i /home/mysql-apt-config_0.8.36-1_all.deb
选择 mysql-8.4-lts
保留其他默认选项
3.3.然后更新软件包信息
sudo apt update
3.4.安装 MySQL 8.4
sudo apt install -y mysql-server
3.5.修改mysql配置文件忽略大小写
sudo nano /etc/mysql/mysql.conf.d/mysqld.cnf
添加配置
[mysqld]
lower_case_table_names=1
character-set-server=utf8mb4
collation-server=utf8mb4_0900_ai_ci
必须在初始化数据目录前设置,否则大小写配置无法生效。 ctrl + o 保存 回车enter ctrl+x 退出
3.6.初始化数据库目录(通常安装包会自动执行,如果需要手动)
sudo mysqld --initialize --user=mysql --basedir=/usr --datadir=/var/lib/mysql
3.7.启动 MySQL 并设置开机自启动
sudo systemctl start mysql
sudo systemctl status mysql
sudo systemctl enable mysql
3.8.查看临时密码
sudo grep 'temporary password' /var/log/mysql/error.log
3.9 修改为新密码
ALTER USER 'root'@'localhost' IDENTIFIED WITH caching_sha2_password BY '******';
FLUSH PRIVILEGES;
4.0 验证配置是否成功
SHOW VARIABLES LIKE 'lower_case_table_names'; value的值应该是1 表示忽略大小写
4.1 创建远程访问用户 以及对应数据库 并赋权
CREATE USER 'lfarb'@'%' IDENTIFIED BY '密码';
CREATE DATABASE lfarb CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci;
GRANT ALL PRIVILEGES ON lfarb.* TO 'lfarb'@'%';
4.2 验证安装成功
mysql --version
4.3.导入数据备份
