如何在不丢失数据的情况下从崩溃的 Cloud SQL 实例中保存数据

How to save data from a crashed Cloud SQL instance without data loss

My Cloud SQL 启用了高可用性的实例 (MySQL) 现在完全关闭了 - 我无法在控制台上连接到 MySQL 服务、mysqldump、导出和克隆全部关闭,即使是“停止”或“重新启动”按钮也只响应错误消息

有什么解决方案可以在不丢失数据的情况下保存我的数据?如果我从上次备份恢复实例,将导致 12 小时的数据丢失,灾难。

我考虑过“时间点恢复”,但问题是如果我无法进入MySQL.

,如何定位二进制日志文件名和恢复位置

来自崩溃实例的错误日志:

2021-01-26 19:03:29.613 CST
2021-01-26T11:03:29.612303Z 0 [ERROR] InnoDB: Invalid redo log header checksum.
Error
2021-01-26 19:03:29.613 CST
2021-01-26T11:03:29.612315Z 0 [ERROR] InnoDB: Plugin initialization aborted with error Generic error
Error
2021-01-26 19:03:30.213 CST
2021-01-26T11:03:30.213169Z 0 [ERROR] Plugin 'InnoDB' init function returned error.
Error
2021-01-26 19:03:30.214 CST
2021-01-26T11:03:30.214078Z 0 [ERROR] Plugin 'InnoDB' registration as a STORAGE ENGINE failed.
Error
2021-01-26 19:03:30.214 CST
2021-01-26T11:03:30.214456Z 0 [ERROR] Failed to initialize builtin plugins.

配置了高可用性的实例应该会在几分钟内故障转移到辅助实例。正在进行此操作时无法执行导出或其他操作。

如果故障转移花费了 4 小时,您可能有资格根据 Cloud SQL SLA 进行信用调整。如果您想探索这样的路径,我建议您打开支持票。

最后,我不建议使用旧版 HA 配置,因为它在 2021 年第一季度之后将不再可用,如前所述 here