设为首页 收藏本站
查看: 1101|回复: 0

[经验分享] mysql数据迁移采用MySQLdump工具迁移

[复制链接]
累计签到:2 天
连续签到:1 天
发表于 2016-8-10 09:56:38 | 显示全部楼层 |阅读模式
此处以阿里云ecs迁移至专业版RDS数据库为例;
该方案优点是简单,容易上手;缺点是停机时间较长。 因此它适用于数据量不大,或者允许停机的时间较长,并且在这个时间范围内能够完成。
由于RDS提供的关系数据库服务与原生的数据库服务是完全兼容的,所以对于用户来说,从原有数据库迁移到RDS数据的过程,与从一个mysql服务器迁移到另外一台mysql服务器的过程基本类似。具体的迁移流程如下:
1、 开通云服务器服务。
2、 开通RDS服务,如果开通成功,会返回给用户连接地址和端口,比如cloudcc.mysql.rds.aliyuncs.com:3306。
3、 先停止业务,使用MySQLdump的数据导出工具,将您线下原有数据库数据导出为数据文件((本步骤仅仅导出数据,不包括存储过程,函数,触发器)。具体命令如下:
mysqldump -h local_ip -u user_name -p –opt –default-character-set=utf8   –hex-blob db_name –skip-triggers  > /tmp/db_name.sql

其中
local_ip 以您真实的线下MySQL服务器IP地址代替
user_name 以您真实的数据库用户代替
db_name   以您真实的数据库名代替
/tmp/db_name.sql是文件名,由您自己随意填写。

4、备份您线下原有数据库的存储过程、触发器和函数(若您数据库中没有使用存储过程、触发器和函数,则跳过这步),在导出存储过程、触发器和函数时,需要将definer去掉,以兼容RDS。具体命令如下:
mysqldump -h local_ip -u user_name -p –opt –default-character-set=utf8   –hex-blob db_name –triggers -d -t  -R | sed -e ‘s/DEFINER[ ]*=[ ]*[^*]*\*/\*/’  > /tmp/trigger_procedure.sql
其中
local_ip 以您真实的线下MySQL服务器IP地址代替
user_name 以您真实的数据库用户代替
db_name   以您真实的数据库名代替
/tmp/trigger_procedure.sql是文件名,由您自己随意填写。

5、将数据文件和存储过程文件上传到已经购买的云服务器中。
6、远程登录到云服务器,将刚才上传的数据文件导入到已购买的RDS实例中。具体命令如下:
mysql -hexample.mysql.rds.aliyuncs.com –uuserName -p dbName < /tmp/dbName.sql
其中
example.mysql.rds.aliyuncs.com:RDS实例连接地址;
user_name 以您真实的RDS数据库用户代替
db_name   以您真实的RDS数据库名代替
/tmp/db_name.sql是刚才前面您导出的数据文件名称

7、远程登录到云服务器,将刚才上传的存储过程文件(包含存储过程、触发器和函数,若没有则请跳过此步)导入到已购买的RDS实例中。具体命令如下:
mysql -h example.mysql.rds.aliyuncs.com -u userName -p dbName < /tmp/triggerProcedure.sql
其中
example.mysql.rds.aliyuncs.com:RDS实例连接地址;
user_name 以您真实的RDS数据库用户代替
db_name   以您真实的RDS数据库名代替
/tmp/trigger_procedure.sql是刚才前面您导出的存储过程文件名称
至此数据迁移完毕,可以对RDS正常使用。用户可使用数据库客户端工具(如MySQL-Front)或第三方数据库管理工具(如phpmyadmin)以及程序的方式,通过域名和端口号连接数据库,在输入正确的用户名和密码后即可登录DB进行操作和开发。


运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-255793-1-1.html 上篇帖子: 利用amoeba实现mysql主从复制读写分离 下篇帖子: mysql3.0监控mysql数据库 中间件 mysql
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表