Milad Hamid Elhaei Sahar Asked: 2020-04-25 03:53:32 +0800 CST2020-04-25 03:53:32 +0800 CST 2020-04-25 03:53:32 +0800 CST 如何在 Mariadb Galera 集群中安全地更改表以将 row_format 设置为压缩或动态? 772 我们有一些 row_format=Compact 的表。最大的表大约是 30Gb,那么我可以如何安全地更改表并将行格式设置为大表的压缩和动态的其他三个每个小于 10GB 的表?这是一个具有 mariadb v10.4.12 和 Galera 4 的三个节点的集群。运行 DDL / alter tables 并更改行格式会导致集群阻塞,并且可能需要很长时间! 谁能帮助并指导我如何做到这一点?您认为在此处使用 RSU 模式是否有帮助?自从我们谈论更改行格式以来它是否安全? mariadb galera 1 个回答 Voted Best Answer Rick James 2020-04-30T17:01:48+08:002020-04-30T17:01:48+08:00 由于您并没有真正更改任何数据或架构,只是底层的 row_format 似乎 RSU 会更好,而且侵入性要小得多。 您还可以在执行 时将每个节点从集群ALTER中取出,或者至少从代理列表中删除一个节点。这应该避免让查询命中表。 我很确定在转换期间该表将被阻止写入和可能读取。 明智的做法是在离线集群上进行测试,包括测试读/写。
由于您并没有真正更改任何数据或架构,只是底层的 row_format 似乎 RSU 会更好,而且侵入性要小得多。
您还可以在执行 时将每个节点从集群
ALTER
中取出,或者至少从代理列表中删除一个节点。这应该避免让查询命中表。我很确定在转换期间该表将被阻止写入和可能读取。
明智的做法是在离线集群上进行测试,包括测试读/写。