如何在两个服务器之间迁移MySQL数据库

英文原作者:Etel Sverdlov   转载&翻译来源:https://www.digitalocean.com/community/tutorials/how-to-migrate-a-mysql-database-between-two-servers

如何在两个服务器之间迁移MySQL数据库

 

在虚拟专用服务器之间传输数据库可以使用SCP(安全复制)来完成,这是一种复制从SSH Shell派生的文件的方法。请记住,您需要知道两个虚拟服务器的密码。

要迁移数据库,有两个步骤:

 

第一步 - 执行MySQL转储

在将数据库文件传输到新VPS之前,我们首先需要使用mysqldump命令在原始虚拟服务器上备份它。

mysqldump -u root -p --opt [数据库名称]> [数据库名称] .sql 

mysqldump -u root -p --opt [database name] > [database name].sql

执行转储后,您就可以传输数据库了。

 

第二步 - 复​​制数据库

SCP帮助您复制数据库。如果使用上一个命令,则将数据库导出到主文件夹。

SCP命令具有以下语法:

scp [数据库名].sql [用户名]@[servername]:path/to/database/

示例传输可能如下所示:

# 如果您有公网域名,或者自己搭建了局域网内部的DNS域名服务器,或者在/etc/hosts设置了本地域名
scp newdatabase.sql [email protected]:~/
# 如果您没有公网域名,或没有设置局域网内部的域名,或没有在/etc/hosts设置本地域名,请使用下面命令
scp newdatabase.sql [email protected]:~/

    连接后,数据库将传输到新的虚拟专用服务器。

PS:当然您不一定用SCP命令,可以直接U盘拷贝过去,可以使用rsync进行同步,也可以使用Git仓库进行同步(Git仓库:GitHub 、BitBucket、GitLab)

 

第三步 - 导入数据库

将数据传输到新服务器后,可以将数据库导入MySQL:

mysql -u root -p newdatabase </path/to/newdatabase.sql

这样,您通过SCP的转移将完成。

PS:前提条件,请确保此需要导入的数据库服务器已经创建了 newdatabse这个数据库,如果没有在执行上述命令前:

# 如果在需导入的数据库服务器上没有创建相应数据库,请先创建数据库
CREATE DATABASE newdatabase;

# 创建数据库newdatabase完毕后,在执行导入操作
mysql -u root -p newdatabase </path/to/newdatabase.sql

 

     英文原作者:Etel Sverdlov   翻译作者:Miazzy Chaos ,转载&翻译来源:https://www.digitalocean.com/community/tutorials/how-to-migrate-a-mysql-database-between-two-servers

猜你喜欢

转载自blog.csdn.net/Aria_Miazzy/article/details/84872640