mysql 5.6升级至mysql 5.7及数据转移过程记录
原mysql安装版本:5.6.28,安装使用包:mysql-5.6.28-linux-glibc2.5-x86_64.tar.gz
升级后mysql版本:5.7.22,安装使用包:mysql-5.7.22-linux-glibc2.12-x86_64.tar.gz
停服务,备走数据文件
/etc/init.d/mysqld stop mv /opt/mysql /tmp/mysql.bak
快速部署mysql 5.7
useradd -s /sbin/nologin mysql tar -xf mysql-5.7.22-linux-glibc2.12-x86_64.tar.gz mv mysql-5.7.22-linux-glibc2.12-x86_64 /opt/mysql chown -R mysql.mysql mysql #初始化 /opt/mysql/bin/mysql_install_db --defaults-file=/etc/my.cnf --basedir=/opt/mysql/ --datadir=/opt/mysql/data --user=mysql #还原备份数据库 #备份5.7数据库的/data目录为data_57 mv /opt/mysql/data /opt/mysql/data_57 #还原5.6 数据 /data cp -rp /tmp/mysql.bak/data /opt/mysql/ \cp -rp /opt/mysql/data_57/performance_schema /opt/mysql/data rm -rf /opt/mysql/data/ib_logfile* chown -R mysql.mysql /opt/mysql/ #重启 /etc/init.d/mysqld restart 注:此时新的mysql 5.7系统用户信息全是mysql5.6转移过来的 #升级数据字典、系统表 ./bin/mysql_upgrade -uroot -p #登录mysql更新/创建账号信息 mysql> update mysql.user set authentication_string=password('Vdanny@123#sHG') where user="root" and host="localhost"; mysql> grant all on *.* to 'root'@'%' identified by 'Vdanny@123#sHG'; #注意,此处操作可能会报 You must reset your password using ALTER USER statement before executing this statement #重新修改密码 mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'Vdanny@123#sHG'; #再重新操作权限 mysql> grant all on *.* to 'root'@'%' identified by 'Vdanny@123#sHG'; mysql> flush privileges; #完成,登录测试还原数据是否完整 mysql -uroot -p -h 192.168.1.10
至此,完成快速mysql 5.6至mysql 5.7的升级操作及数据转移
好记性不如烂笔头,最难不过坚持
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了