从本地MySQL主服务器到Google Cloud SQL从属服务器的分步复制数据



我需要将数据从本地数据库主数据库(使用MySQL 5.6)复制到Google Cloud SQL从属服务器。我阅读了谷歌说明,直到现在我才这样做:

  • 在本地机器上安装 MySQL 5.6,并创建本地实例、数据库和表;
  • 设置为使用二进制文件(这是复制所必需的);
  • 创建用户"副本"以访问主;
  • 使用 mysqldump 创建了备份.sql文件,我按照谷歌说明进行操作;
  • 将此文件上传到谷歌存储桶;
  • 在谷歌云SQL中创建1º代实例;
  • 将数据库创建为1º生成实例;
  • 恢复备份.sql到数据库;

谷歌指令的下一步是在谷歌外壳中输入代码"ACCESS_TOKEN="...

ACCESS_TOKEN="$(gcloud auth application-default print-access-token)"
curl --header "Authorization: Bearer ${ACCESS_TOKEN}" 
--header 'Content-Type: application/json' 
--data '{"name": "[INTERNAL_MASTER_INSTANCE_NAME]",
"region": "[REGION_NAME]",
"databaseVersion": "[EXTERNAL_MASTER_DATABASE_VERSION]",
"onPremisesConfiguration": {"hostPort": "[IP_ADDRESS:PORT]"}}' 
-X POST 
https://www.googleapis.com/sql/v1beta4/projects/[PROJECT-ID]/instances

但是我收到一条错误消息"400 - 无效值:5.6.39 不是有效值"。我在哪里可以找到MySQL中的"databaseVersion":"[EXTERNAL_MASTER_DATABASE_VERSION]"?有人逐步使用MySQL配置本地数据库以将数据复制到Google Cloud SQL?

根据配置外部主控服务器文档,数据库版本有 2 个选项:

对于数据库版本,请提供主实例的 MySQL 版本:MYSQL_5_5MYSQL_5_6

由于您插入的是 5.6.39,因此它会触发 400 错误。

相关内容

  • 没有找到相关文章

最新更新