我正在尝试更改Google Cloud SQL数据库中的一个表,该表具有几百万条记录并具有几个索引。
过一会儿(在此数据库实例上使用的空间增加了几个GB)之后,“更改表”命令失败,并显示错误:“错误1034(HY000):表xxx的密钥文件不正确”。 / p>
1)我搜索了它,它似乎经常在tmpdir空间不足时发生。建议似乎是将MySql数据库的tmpdir位置更改为文件系统上有更多可用存储空间的位置。据我所知,我真的没有在Google Cloud SQL设置中使用该选项。
2)我在提到的表上运行了“检查表xxx”命令,并显示status = OK。因此,在任何地方都没有涉及表的真正损坏。在这个笨重的桌子上的“更改桌子”中,似乎幕后花光了。
有什么建议吗?我可以以某种方式增加Google Cloud Sql设置上的tmpdir空间吗?我可以更改其位置并以某种方式为其提供更多空间吗?
答案 0 :(得分:0)
这听起来像Cloud SQL第一代实例特定的问题。不幸的是,在这种情况下,无法更改tmpdir存储(10 Gb)的位置或分配的数量。
唯一合理的选择是迁移到Cloud SQL Second gen实例: https://cloud.google.com/sql/docs/mysql/upgrade-2nd-gen