gpt4 book ai didi

mysql - 如何快速克隆mysql innodb数据库

转载 作者:行者123 更新时间:2023-11-28 23:15:52 25 4
gpt4 key购买 nike

我们使用 MySQL(innodb) 来存储我们的数据。我们有启动 mysql 数据库(通过 docker 容器)并连接到数据库的集成测试。我们使用 MyISAM 作为测试数据库(原因解释如下)。

我们的做法是,第一个测试会将 sql 模式加载到模板数据库中,后续测试将使用文件副本简单地克隆数据库。由于 MyISAM 可以很好地处理文件复制,我们只需将整个数据库目录复制到一个新目录,并且我们为每个测试都有一个新的克隆数据库。这一直运作良好,尤其是我们的集成测试在几秒钟内运行。

然而,随着我们添加更多测试,我们不断发现由于 InnoDB 和 MyISAM 之间的差异(索引大小、外键约束等等)而导致的问题。我们希望将测试数据库移动到使用 InnoDB,但希望保持快速的克隆操作。执行 mysqldump 和恢复将花费 30 多秒,而今天需要 100 毫秒。

我的问题是,有没有办法超快地克隆 InnoDB?

最佳答案

备份 InnoDB 数据库的一种更快的方法是使用类似 innobackupex 的工具.

如果您FLUSH TABLES,您还可以对您的数据库进行镜像首先,以快照时应该一致的方式将所有内容提交到磁盘。某些服务(例如 Amazon EC2)允许对正在运行的实例进行镜像,您以后可以独立启动这些实例或将其用作备份还原点。

关于mysql - 如何快速克隆mysql innodb数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43927342/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com