MySQL将A库的表及数据导入到B库
2,885 total views, 1 views today
在工作中,经常有开发提这样的需求:将A库中的表和数据导入到B库中。这里个记录,方便以后查找。
1、创建新数据库及用户
1 2 3 4 5 |
CREATE DATABASE db_B ; GRANT ALL PRIVILEGES ON db_B.* TO user_B@'10.%.%.%' identified by "xxxx"; flush privileges; |
2、测试用户登录
1 |
mysql -uuser_B -p'xxx' -h 10.0.97.121 |
3、导出源库数据
1 |
mysqldump -uuser_A -p -S /export1/data/mysql/mysql.sock -B db_A --single-transaction --no-create-db>/tmp/db_A.dmp |
参数说明:
–single-transaction 执行mysqldump前先加上BEGIN,确保mysqldump在一个事务中执行,保证了数据一致性。
-B 库名
–no-create-db 不导出create database语句。
4、导入到新库中
编辑db_A.dmp 文件,修改USE db_A 为USE db_B 。
1 |
mysql -uuser_B -p'xxxx' -S /export1/data/mysql/mysql.sock </tmp/db_A.dmp |