程序员必学:学习如何将所有MySQL数据库从旧服务器转移到新服务器上?

    作者:课课家教育更新于: 2019-04-17 10:02:19

      今天呢,我们就开始学习如何在服务器之间转移或迁移MySQL/mariadb数据库通常只需要几个轻松的步骤,你在本文中将了解如何将所有MySQL/MariaDB数据库从旧的Linux服务器转移或迁移到新服务器,成功地导入,并证实数据已迁移到位。但转移数据要花一段时间,长短取决于想要转移的数据多少。

      你在本文中将了解如何将所有MySQL/MariaDB数据库从旧的Linux服务器转移或迁移到新服务器,成功地导入,并证实数据已迁移到位。

      重要说明:

      务必确保装有同一发行版的两台服务器上安装了同一版本的MySQL。

      务必确保两台服务器上都有足够的闲置空间,以保存数据库转储文件和导入的数据库。

      千万别考虑将数据库的data目录转移到另一台服务器上。别乱动数据库的内部结构,不然将来会出问题。

      将Mysql数据库导出到转储文件

      先登录进入到旧服务器,使用systemctl命令,停止mysql/mariadb服务,如下所示:

      #systemctlstopmariadb

      OR

      #systemctlstopmysql

      然后使用mysqldump命令,将所有MySQL数据库转储到一个文件。

      #mysqldump-u[user]-p--all-databases>all_databases.sql

      一旦转储完毕,你就可以准备转移数据库了。

      如果你想转储单单一个数据库,可以使用该命令:

      #mysqldump-uroot-p--opt[databasename]>database_name.sql

      将MySQL数据库转储文件转移到新服务器

      现在使用scp命令,将数据库转储文件转移到新服务器的主目录下,如下所示:

      #scpall_databases.sqluser@example.com:~/[AllDatabases]

      #scpdatabase_name.sqluser@example.com:~/[SingeDatabase]

      一旦连接,数据库将转移到新服务器。

      将MySQL数据库转储文件导入到新服务器

      一旦MySQL转储文件转移到了新服务器,你就可以使用下列命令将所有数据库导入到MySQL。

      #mysql-u[user]-p--all-databases

      #mysql-u[user]-pnewdatabase

      一旦导入完成,你可以在mysqlshell上使用下列命令,核实两台服务器上的数据库。

      #mysql-uuser-p

      #showdatabases;

      将MySQL数据库和用户转移到新服务器

      如果你想把所有的MySQL数据库、用户、权限和数据结构从旧服务器统统转移到新服务器,可以使用rsync命令,将来自mysql/mariadb数据目录的所有内容转移到新服务器,如下所示:

      #rsync-avz/var/lib/mysql/*user@example.com:/var/lib/mysql/

      一旦转移完成,你就可以将mysql/mariadb数据目录设成归用户mysql和用户组mysql所有,然后列出目录,检查所有文件已转移过去。

      #chownmysql:mysql-R/var/lib/mysql/

      #ls-l/var/lib/mysql/

          小编结语:

      其实,对于今天的文章,大部分都是非常有用的,就这样!你已从本文了解了如何将所有MySQL/MariaDB数据库从一台服务器轻松迁移到另一台服务器。你觉得这个方法相比其他方法怎样?大家可以留言进行一定的交流,感谢的大家的支持。

课课家教育

未登录