本篇重点推出一个手动的快捷导表的方式
mysqldump的特殊用法
在很多的场景,我们需要搭建测试服务器等相同结构的数据库,这样通过导出数据,再导入的方式,就比较繁琐。我们可以通过下面一句话的方式实现。
整表迁移
mysqldump -h 'xxxx' -uroot -pmlt110825 --opt --compress mail --skip-lock-tables | mysql -h localhost -uroot -p123456 mail
某张表的迁移
mysqldump -hrdsqr7ne2.rds.aliyuncs.com -uwan1 -p5137104 ecmall51_2 --tables ecm_attribute|mysql -h118.89.190.8 -uroot -p123456 ecmall51_2
缺点:如果数据量比较大,那么,我们可以需要单独对某些表进行迁移;
单独对某个表导出
mysqldump -hrdsqr7ne2m2i.aliyuncs.com -uwang51 -p58b104 -t ecmall51_2 --tables ecm_attribute>attr.sql
再mysql -uroot -pxxx ecmall <attr.sql这样就不会中断。
------------------------------------------------------------------------
以上场景属于数据库之间的链接都正常且顺畅。连接条件比较宽松。下面针对连接条件有限制的
(1) 两台主机不在同一个内网地址 ,这样传输会比较慢;如果遇到不允许外部链接的情况 ,还需要做下面授权。
grant all privileges on *.* to joe@localhost identified by '1';
flush privileges;
如果是云主机,还需要开放安全组的端口。
(2)如果是阿里云或者腾讯云的方式。RDS等。
在这种情况 下,理论上我们上面的方式都挺好,但RDS出于安全,性能等考虑,会做了各种time_out的限制,以至你的方式,会被各种中断!
在这样的情况下,请联系客服,使用官方推荐的方式及工具,进行数据库的迁移。
RDS->local ,local->RDS,RDS->RDS,ECS->ECS都有相应的指导说明。
本文介绍了一种使用 mysqldump 进行快速数据库迁移的方法,包括整表迁移和特定表迁移,并讨论了不同网络环境下的解决方案。
3460

被折叠的 条评论
为什么被折叠?



