创建源表示实例
Create source representation instance
我按照文档创建了云的外部副本 SQL here。我在 Google 云上有一个版本为 8.0 的 MySQL 实例。我成功创建了外部只读副本。现在,我想将此副本降级为主。我需要为此创建一个源表示实例。如文档中所述,我调用了以下 API。
gcloud auth login
ACCESS_TOKEN="$(gcloud auth print-access-token)"
curl --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header 'Content-Type: application/json' \
--data '{
"name": "[SOURCE_REPRESENTATION_NAME]",
"region": "[REGION]",
"databaseVersion": "[EXTERNAL_SERVER_MYSQL_VERSION]",
"onPremisesConfiguration": {
"hostPort": "[EXTERNAL_SERVER_IP]:[EXTERNAL_SERVER_PORT]"
}
}' \
-X POST \
https://www.googleapis.com/sql/v1beta4/projects/[PROJECT-ID]/instances
当我将 databaseVersion 设置为 5 时,API 工作。但是当我尝试设置为版本 8 时,它失败了。
{
"error": {
"code": 400,
"message": "Missing parameter: DatabaseVersion.",
"errors": [
{
"message": "Missing parameter: DatabaseVersion.",
"domain": "global",
"reason": "required"
}
]
}
}
代表性服务器不支持 MySQL 版本 8 吗?
databaseVersion
应该是 源数据库服务器上的 MySQL 版本 运行。选项是 MYSQL_5_5、MYSQL_5_6、MYSQL_5_7 或 MYSQL_8_0。
我按照文档创建了云的外部副本 SQL here。我在 Google 云上有一个版本为 8.0 的 MySQL 实例。我成功创建了外部只读副本。现在,我想将此副本降级为主。我需要为此创建一个源表示实例。如文档中所述,我调用了以下 API。
gcloud auth login
ACCESS_TOKEN="$(gcloud auth print-access-token)"
curl --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header 'Content-Type: application/json' \
--data '{
"name": "[SOURCE_REPRESENTATION_NAME]",
"region": "[REGION]",
"databaseVersion": "[EXTERNAL_SERVER_MYSQL_VERSION]",
"onPremisesConfiguration": {
"hostPort": "[EXTERNAL_SERVER_IP]:[EXTERNAL_SERVER_PORT]"
}
}' \
-X POST \
https://www.googleapis.com/sql/v1beta4/projects/[PROJECT-ID]/instances
当我将 databaseVersion 设置为 5 时,API 工作。但是当我尝试设置为版本 8 时,它失败了。
{
"error": {
"code": 400,
"message": "Missing parameter: DatabaseVersion.",
"errors": [
{
"message": "Missing parameter: DatabaseVersion.",
"domain": "global",
"reason": "required"
}
]
}
}
代表性服务器不支持 MySQL 版本 8 吗?
databaseVersion
应该是 源数据库服务器上的 MySQL 版本 运行。选项是 MYSQL_5_5、MYSQL_5_6、MYSQL_5_7 或 MYSQL_8_0。