如何在Ubuntu上迁移MySQL数据库

1018
2025/4/15 12:32:14
栏目: 云计算
开发者测试专用服务器限时活动,0元免费领,库存有限,领完即止! 点击查看>>

在Ubuntu上迁移MySQL数据库可以通过多种方法实现,以下是几种常见的方法:

方法一:使用 mysqldumpmysql 命令

  1. 导出数据库 在源服务器上,使用 mysqldump 命令导出数据库:

    mysqldump -u username -p database_name > database_name.sql
    

    系统会提示你输入密码。

  2. 传输导出的SQL文件 将导出的SQL文件传输到目标服务器。可以使用 scp 命令:

    scp database_name.sql username@target_server_ip:/path/to/destination
    
  3. 在目标服务器上导入数据库 在目标服务器上,使用 mysql 命令导入数据库:

    mysql -u username -p database_name < /path/to/destination/database_name.sql
    

    系统会提示你输入密码。

方法二:使用 mysqlpumpmysql 命令

mysqlpumpmysqldump 的一个并行版本,适用于大型数据库。

  1. 导出数据库 在源服务器上,使用 mysqlpump 命令导出数据库:

    mysqlpump -u username -p database_name > database_name.sql
    
  2. 传输导出的SQL文件 将导出的SQL文件传输到目标服务器:

    scp database_name.sql username@target_server_ip:/path/to/destination
    
  3. 在目标服务器上导入数据库 在目标服务器上,使用 mysql 命令导入数据库:

    mysql -u username -p database_name < /path/to/destination/database_name.sql
    

方法三:使用 xtrabackupinnobackupex

xtrabackup 是一个用于备份和恢复InnoDB存储引擎的免费工具。

  1. 安装 xtrabackup 在源服务器上安装 xtrabackup

    sudo apt-get update
    sudo apt-get install percona-xtrabackup-24
    
  2. 备份数据库 使用 innobackupex 命令备份数据库:

    innobackupex --user=username --password=password /path/to/backup
    
  3. 传输备份文件 将备份文件传输到目标服务器:

    scp -r /path/to/backup username@target_server_ip:/path/to/destination
    
  4. 准备备份 在目标服务器上,准备备份文件:

    innobackupex --apply-log /path/to/destination/backup
    
  5. 恢复数据库 将备份文件复制到MySQL数据目录并启动MySQL服务:

    innobackupex --copy-back /path/to/destination/backup
    systemctl start mysql
    

方法四:使用图形化工具

你也可以使用图形化工具如 NavicatphpMyAdmin 来迁移数据库。这些工具提供了直观的界面来导出和导入数据库。

  1. 导出数据库 使用图形化工具连接到源服务器,选择要导出的数据库,然后导出为SQL文件。

  2. 传输导出的SQL文件 将导出的SQL文件传输到目标服务器。

  3. 在目标服务器上导入数据库 使用图形化工具连接到目标服务器,选择要导入的数据库,然后导入SQL文件。

选择适合你需求的方法进行迁移。对于大型数据库,xtrabackup 是一个高效的选择。对于小型数据库,使用 mysqldumpmysqlpump 可能更简单。

辰迅云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>

推荐阅读: ubuntu kickstart的兼容性