7.1.1. 导出导入

场景:在测试的时候需要从线上导出部分表,并导入到测试库中。本章记录了下这个实施过程

7.1.1.1. 在线上导出需要的表

登录源数据库所在服务器执行以下命令

# 先查看机器上哪个磁盘空间最大,然后把导出的放到最大的磁盘上面去
df -TH

# 使用mysqldump导出需要的表到指定路径中的sql中,然后等待完成,数据量大会等待久一点
# 测试中18g数据差不多10分钟左右
mysqldump -uroot -pdbpasswd dbname 表名 表名 表名 > xxxx.sql

7.1.1.2. 导入数据库

主要使用以下命令

# 优先推荐这个命令,一般dba和网上教程都用这个,后面加 “&” 表示后台执行
mysql -uroot -pdbpasswd dbname < /data/tb_sit.sql &

# 该命令也是,但是用的人不多不知道是什么原因,这里如果不加“&”会在中断打印sql执行信息
mysqldump  -uroot -pdbpasswd dbname < /data/tb_sit.sql &

7.1.1.2.1. 同服务器导入

直接使用上面的命令就ok了

7.1.1.2.2. 不同服务器导入

先执行压缩打包,并scp到目标服务器,再解压后,执行导入命令

tar -cvzf xxx.tar.gz xxx.sql
scp xxx.tar.gz root@www.cumt.edu.cn:/data
tar -xzvf /data/xxx.tar.gz

7.1.1. 查看数据库中进度信息

# 登录mysql
mysql -uroot -pdbpasswd

# 执行显示进度命令
show processlist;

会显示一个列表,查看刚才导入的库在info栏里面寻找INSERT相关信息。就能看到当前正在执行的sql了
© All Rights Reserved            updated 2017-05-19 10:28:44

results matching ""

    No results matching ""