如果我们想将表或数据库从一台MySQL服务器复制到另一台,请使用带有数据库名和表名的mysqldump 。
在源主机上运行以下命令。这会将整个数据库转储到dump.txt 文件中。
$ mysqldump -u root -p database_name table_name > dump.txt password *****
我们可以不使用特定的表名就复制完整的数据库,如上 。
现在,在另一台主机上使用ftp dump.txt文件,并使用以下命令。在运行此命令之前,请确保我们已在目标服务器上创建了database_name。
$ mysql -u root -p database_name < dump.txt password *****
在不使用中间文件的情况下完成此操作的另一种方法是,将MySQL转储的输出直接通过网络发送到远程MySQL服务器。如果我们可以从源数据库所在的主机连接到这两个服务器,请使用以下命令(确保我们可以访问这两个服务器)。
$ mysqldump -u root -p database_name \ | mysql -h other-host.com database_name
在mysqldump中,一半的命令连接到本地服务器,并将转储输出写入管道。命令的其余一半连接到other-host.com上的远程MySQL服务器。它读取用于输入的管道,并将每个语句发送到other-host.com服务器。