【发布时间】:2017-05-01 04:36:55
【问题描述】:
有没有办法从第一代云 sql 迁移到第二代,且停机时间最短甚至没有?
在我将第一代数据库设置为只读后转储它大约需要 30 分钟(这对我来说意味着停机时间),而且我相信导入第二代也需要很长时间。
在升级过程中使用克隆以及在升级完成时将差异复制到新数据库会怎样?
我正在使用 AppEngine,所以我正在考虑上传指向第二代数据库的新版本,而旧版本指向克隆。 升级完成后,我将更改版本并运行脚本来复制丢失的数据。
这行得通吗?还有更好的选择吗?
【问题讨论】:
-
如果您使用 Cloud SQL 的导出数据操作来转储您的第一代数据库数据,Cloud SQL 它使用 mysqldump
--single-transaction标志,因此您可能不需要将您的数据库设置为只读,您应该获得一致的数据视图。第二代的性能也更好,所以可能是导入会更快,你应该先测试一下。 -
感谢您的回答。它在文档中说:
You must use mysqldump to perform the export. You cannot use the export provided by Google Cloud Platform Console所以这是不可能的。这是链接:cloud.google.com/sql/docs/migrate-2nd-gen
标签: mysql google-app-engine google-cloud-platform google-cloud-sql