业务场景:需要将服务器A上的mysql数据库迁移到另外一台服务器B。

1. 用ssh终端连接服务器A

2. mysqldump指令将数据库表/数据保存成xx.sql文件存到本地

#导出数据到/root/目录下
# 导出所有数据库的表结构和数据
mysqldump -uroot -p123456 --all-databases > /root/alldata.sql
# 导出指定数据库(user)的所有表结构和数据
mysqldump -uroot -p123456 user > /root/user.sql
# 导出指定数据库(user)的所有表结构(不包含数据)
mysqldump -uroot -p123456 -d user > /root/user.sql
# 导出指定数据库(user)某一张表(socre)的结构
mysqldump -uroot -p123456 -d user score > /root/userscore.sql
# 导出指定数据库(user)某一张表(score)的结构和数据
mysqldump -uroot -p123456 user score > /root/userscoredata.sql

3. 上传导出的.sql文件到服务器B

1). 可以通过xshell的xftp直接拉过去

2). 使用scp指令传输到/root目录下

# '-r' 代表传输的是文件夹,这里传输的是文件,所以不需要 -r 
scp [-r] /root/user.sql root@192.168.0.100:/root/

4. 在服务器执行.sql文件完成数据迁移

# 登录mysql
mysql -uroot -p 
输入密码
# 新建迁移保存的数据库
mysql > create database user;
mysql > use user;
# 执行.sql文件
mysql > source /root/user.sql;

更多推荐

如何简单实现mysql数据库迁移