"MySQL Backup/Restore Issue"

9 浏览
0 Comments

"MySQL Backup/Restore Issue"

我需要将一个MySQL数据库移动到新位置。

根据工作台,该数据库的大小仅为200MB,但某些表格却拥有数百万行数据,其索引和数据长度可达数GB。因此,导出大小为15GB,导出数据库,将其复制到新位置,再将其导入需要花费许多小时。在此过程中,网站需要离线以确保数据库不被更改。第一次尝试耗时36个小时以上,导入失败。

这太长了,有没有更好/更快的方法可以替代这种可怕的导入/导出过程?我习惯使用MSSQL,它非常快速地完成此类操作:使数据库离线,将文件复制到新位置,挂载数据库,搞定。它只需几分钟即可完成,非常简单。我从来不明白为什么MySQL让这件事情变得如此困难。

admin 更改状态以发布 2023年5月25日
0
0 Comments

Percona XtraBackup是一个非常有用的工具,如果您有InnoDB表,则innobackupex可以帮助进行热备份和恢复。

同时,配置InnoDB文件每表备份将像MyISAM表一样。

如果您有MyISAM表,则处理过程如下:

  1. 停止源服务器。
  2. 将您的数据库文件夹复制(并压缩)到一个安全位置,例如:/var/lib/mysql/your_database
  3. 在停止MySQL服务器后在目标服务器上的同一位置恢复文件。
  4. 启动目标服务器。

两个服务器的版本差异应该最小,因为MyISAM有自己的格式版本。

0