mysql数据 5.6导入到5.7_10个步骤带你完成MySQL数据库5.6版本迁移到5.7
大家好,我是anyux。本文介绍MySQL数据库5.6版本迁移到5.7。01 搭建5.6测试环境02 模拟数据03 5.6数据库备份04 准备纯净的5.7数据库05 上传sql文件到tmp目录下06 向上更新结构07 5.6数据库模拟数据追加08 5.6数据库查看导出二进制日志09 5.7数据库binlog持续追加10 验证数据文末总结MySQL数据库5.6版本迁移到5.7,并有导图搭建5.6测试
大家好,我是anyux。本文介绍MySQL数据库5.6版本迁移到5.7。
01 搭建5.6测试环境
02 模拟数据
03 5.6数据库备份
04 准备纯净的5.7数据库
05 上传sql文件到tmp目录下
06 向上更新结构
07 5.6数据库模拟数据追加
08 5.6数据库查看导出二进制日志
09 5.7数据库binlog持续追加
10 验证数据
文末总结MySQL数据库5.6版本迁移到5.7,并有导图
搭建5.6测试环境
5.6数据库安装使用yun安装,快速方便
cat >/etc/yum.repos.d/mysql56.repo <
删除旧的yum缓存
yum clean all
建立一个缓存
yum makecache
显示所有可用的仓库列表
yum repolist enabled | grep mysql56
删除mariadb组件
yum remove -y mariadb-libs
安装数据库服务
yum install mysql-community-server -y
启动数据库服务
systemctl start mysqld.service
查看数据库服务状态
systemctl status mysqld.service
登录数据库,授权
直接无密码登录即可,
grant all on *.* to root@'localhost' identified by 'root' with grant option;flush privileges;
设置配置文件,自行重启服务
cat >/etc/my.cnf <
模拟数据
导入t100w表
create database 56_db charset utf8mb4;use 56_db;source /tmp/t100w.sql;
5.6数据库备份
mysqldump -uroot -proot -A --master-data=2 --single-transaction -R -E --triggers >/tmp/5.6.sql
准备纯净的5.7数据库
systemctl restart mysql3308
上传sql文件到tmp目录下
mysql -uroot -proot -S /data/3308/mysql.sockset sql_log_bin=0;source /tmp/5.6.sql;
对于5.6和5.7表结构有差异,如果mysql库的user表结构差异
向上更新数据库结构
mysql_upgrade -uroot -proot -S /data/3308/mysql.sock
5.6数据库模拟数据追加
create database binlog charset utf8mb4;use binlog;create table tmp(id int);insert into tmp values(1),(2),(3);commit;update tmp set id=5 where id=3;commit;insert into tmp values(6),(7);commit;
5.6数据库查看导出二进制日志
show master status;show binlog events in 'log-bin.000001';
根据上面的gtid找到对应的开始的gtid号,导出为sql
mysqlbinlog --base64-output=decode-rows -vvv --start-position=21102060/var/lib/mysql/log-bin.000001 | grep -v "^/" | grep -i 'set'mysqlbinlog --skip-gtids --include-gtids="05b2d4d3-6825-11ea-8f4d-5254002764a7:55-60" /var/lib/mysql/log-bin.000001 > /tmp/gtid-bin.sql;
5.7数据库binlog持续追加
set sql_log_bin=0;source /tmp/log-bin.sql;
验证数据
use binlog;select * from tmp;
如果业务还有新的数据,同样的方法将数据导入到5.7版本的数据库中。这种频率越高的,就更需要使用脚本来写成,而MySQL有完整的一套机制,这就是主从复制
欢迎在评论区一起讨论,质疑。文章都是手打原创,每天最浅显的介绍运维、数据库相关的技术,喜欢我的文章就关注一波吧,可以看到最新更新和之前的文章。
更多推荐
所有评论(0)