您的位置:首页 > 数据库 > MySQL

mysql 数据迁移失败原因总结

2015-07-03 00:53 716 查看
今年4月15号我们进行了一次数据库迁移,迁移的步聚如下:

修改mysql配置,开启binlog

并设置保留日志15天
直接修改配置文件/usr/my.cnf

binlog_cache_size=4M

log-bin=master-bin.log

log-bin-index=master-bin.index

max_binlog_size=1G

max_binlog_cache_size=2G

expire_logs_days=15

binlog_format=mixed

server-id=1

binlog-do-db=wewe

log-short-format

binlog-row-image=minimal

master-info-repository=TABLE

relay-log-info-repository=TABLE

sync-master-info=1
关闭所有数据库事件
停止所有应用服务209wewe服务器

service tomcatwewe1 stop

service tomcatwewe2 stop

service tomcatwewe3 stop

service tomcatwewebatch stop

service tomcatwewereport stop

service tomcatweweapp3 stop

service tomcatweweapp stop

service httpd stop

121商城服务器

service tomcatweixin restart

service tomcatqy stop

service tomcatoa stop

203代理服务器

tomcatwmall

tomcat6

27.154.54.202商城前端

tomcatwewecity

tomcatwewemall

Apache2.2
重启数据库,记录首日志文件service mysql stop

service mysql start
开启不含报表中心的全备份

观察并确保启动备份
检查备份情况并启动所有服务
检查备份中主要业务数据的数据量是否完全一致

与还原后需一致
select count(1) from smm_sale_invoice where CREATE_TIME <='2015-04-09';

select count(1) from smm_sale_invoice_dtl where CREATE_TIME <='2015-04-09';

select count(1) from pss_invoice where CREATE_TIME <='2015-04-09';

select count(1) from pss_invoice_dtl where CREATE_TIME <='2015-04-09';

select count(1) from imm_stock_total where CREATE_TIME <='2015-04-09';

select count(1) from imm_stock_detail where CREATE_TIME <='2015-04-09';
上传(FTP)备份至阿里云ftp://120.55.98.156/db/
还原备份至阿里云数据库(去掉事务)navicate
还原后数据核对
阿里云RDS进行物理备份
关闭报表中心抽数,并开启报表中心备份
手动增量同步binlog数据mysqlbinlog --start-datetime="2015-04-09 00:00:00" --stop-datetime="2015-04-10 00:00:00" "/home/wewe/mysql/data/master-bin.?" -s -r "/home/wewe/qydata/?.sql";

D:\data\mysql -h rdsjmnyi3jmnyi3.mysql.rds.aliyuncs.com -u pssmis -ptofanepos wewe;

source D:\data\bin.000352.sql;

source D:\data\master-bin.000353.sql;

mysql -h rdsjmnyi3jmnyi3.mysql.rds.aliyuncs.com -u pssmis -ptofanepos wewe < /home/date/master-bin.000353.sql
手动增量同步binlog数据mysqlbinlog "/home/wewe/mysql/data/master-bin.000353" -s -r "/home/wewe/qydata/master-bin.000353.sql";
重启数据库service mysql stop

service mysql start
同步最后一个binlog数据(注意检查中文乱码)mysqlbinlog "/home/wewe/mysql/data/master-bin.000360" |sed -n -e '/^update/I,/;/p' -e '/^insert/I,/;/p' -e '/^delete/I,/;/p' -e '/^alter/I,/;/p' -e '/^drop/I,/;/p' -e '/^create/I,/;/p' >"/home/wewe/qydata/60.sql";
服务发布e服宝:wewe

e服宝:wewegs
服务地址修改
邮件通知用户访问地址切换
4月15日做迁移时失败了,失败的原因是因为有一部分单据数据没有被记录到mysql的binlog日志中。

4月23日做了第二次迁移,通过手工导过去的。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: