改变一个大的mysql表700 gb

时间:2015-10-13 09:27:39

标签: mysql pt-online-schema-change

我想改变的生产表大约是700 Gb。我想从该表中删除FK。 Mysql版本是5.1.61-log。

我找到了以下选项:

pt-online-schema-change:改变表的结构而不阻止读取或写入。这在改变时间方面看起来最有效。这还可以通过将表副本分成块来处理服务器负载,并在服务器上出现高负载时暂停数据复制过程。

工具的唯一问题是服务器上的可用空间是450 GB,并且没有其他驱动器的空间。此工具适用于表格的副本,大约700 GB。

升级到Mysql 5.6:使用5.6的ONLINE DDL功能,大多数ALTER类型不会阻止对正在更改的表的写入。它还支持添加/删除外键约束,而无需全表复制。

但我不确定如何处理服务器负载以及需要多长时间进行更改。

还有其他选项,例如pt-online-schema-change,它不需要复制表吗? 有关Mysql 5.6的ONLINE DDL的任何经验/评论吗?

提前致谢!

1 个答案:

答案 0 :(得分:0)

以下是有关online DDL

的官方文档的链接

它就位,不需要复制表。我刚刚在sysbench测试期间删除了FK(顺便说一句,随意在本地5.6安装上重现测试)