赞
踩
今天对项目中的一个数据库进行了迁移,其中有一张表太大了,1000w+条数据,不死心的点了一下navicat的数据传输,看着不会动的0%默默关闭。
直接进入正题,我的需求是从阿里云ESC服务器安装的mysql导出,传入到阿里云RDS数据库:
备份数据库库中某一张表:
mysqldump -h主机名 -P端口 -u用户名 -p密码 数据库名 表明 > 文件名
如:(mysqldump -h127.0.0.1 -P3306 -uroot -proot database test1 > /data/test1.sql)
其他语句拓展:
备份压缩
导出的数据有可能比较大,不好备份到远程,这时候就需要进行压缩mysqldump -h主机名 -P端口 -u用户名 -p密码 数据库名 | gzip > 文件名.sql.gz如: mysqldump -h127.0.0.1 -p 3306 -uroot -proot database | gzip > /data/database.sql.gz
备份同个库多个表
mysqldump -h主机名 -P端口 -u用户名 -p密码 数据库名 表1 表2 .... > 文件名.sql如: mysqldump -h127.0.0.1 -p3306 -uroot -proot database test1 test2 > /data/database _test1_test2.sql
同时备份多个库
mysqldump -h主机名 -P端口 -u用户名 -p密码 --databases 数据库名1 数据库名2 数据库名3 > 文件名.sql如:mysqldump -h127.0.0.1 -uroot -proot --databases db1 db2 db3 > /data/three_db.sql
备份数据库结构,不备份数据
mysqldump -h主机名 -P端口 -u用户名 -p密码 --no-data 数据库名1 数据库名2 数据库名3 > 文件名.sql如:mysqldump --no-data –databases db1 db2 db3> /data/nodata.sql
先接入目标数据库
mysql -h 阿里云rds数据库内网连接 -u 用户名 -p 数据库名
然后输入密码,直接执行命令:
source /data/test1.sql (source命令执行刚才备份的sql文件就行了)
整个过程很快,千万数据就导完了。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。