你的位置:首页 > 数据库

[数据库]MySQL快速复制数据库的方法


某些时候,例如为了搭建一个测试环境,或者克隆一个网站,需要复制一个已存在的mysql数据库。使用以下方法,可以非常简单地实现。

假设已经存在的数据库名字叫db1,想要复制一份,命名为newdb。步骤如下:

1. 首先创建新的数据库newdb

1
2
3
4
#mysql
 -u root -ppassword
mysql>CREATE
 DATABASE `newdb` DEFAULT CHARACTER SET UTF8 COLLATE UTF8_GENERAL_CI;



2. 使用mysqldump及mysql的命令组合,一次性完成复制

1
2
#mysqldump
 db1 -u root -ppassword --add-drop-table | mysql newdb -u root -ppassword



(注意-ppassword参数的写法:-p后面直接跟密码,中间没有空格)

以上是在同一台MySQL服务器上复制数据库的方法。如果要复制到远程另一台MySQL服务器上,可以使用mysql的“ -h 主机名/ip”参数。前提是mysql允许远程连接,且远程复制的传输效率和时间可以接受。

1
2
#mysqldump
 db1 -uroot -ppassword --add-drop-table | mysql -h 192.168.1.22 newdb -uroo