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

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

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

#mysql -u root -ppassword

mysql>CREATE DATABASE `newdb` DEFAULT CHARACTER SET UTF8 COLLATE UTF8_GENERAL_CI;

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

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

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

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

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

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐