如何导出 Google Storage 中 Cloud SQL 数据库的备份?

Ana*_*war 2 java google-app-engine google-cloud-sql

我有一个 GAE 项目,为此我使用了 Cloud SQL 数据库来存储数据。我需要对我的 Cloud SQL 数据库进行按需备份,并且备份应存储在 Google 存储中。

谁能帮助我如何使用 JAVA 以编程方式执行此操作?

Lun*_*ast 5

您无法导出备份(按需或自动),如此处所述。不过,您可以执行的操作是将数据导出到 SQL 转储文件或 CSV 文件(具体取决于您的使用案例),并将其存储在 Cloud Storage 上。

没有用于执行导出的 Java 实用程序,但 Google 公开了一个 API 端点供您触发导出。这是使用标准curl工具的示例请求:

curl --header "Authorization: Bearer ${ACCESS_TOKEN}" \
     --header 'Content-Type: application/json' \
     --data '{"exportContext":
                {"fileType": "SQL",
                 "uri": "gs://<BUCKET_NAME>/<PATH_TO_DUMP_FILE>",
                 "databases": ["<DATABASE_NAME1>", "<DATABASE_NAME2>"] }}' \
   -X POST \
   https://www.googleapis.com/sql/v1beta4/projects/[PROJECT-ID]/instances/[INSTANCE_NAME]/export
Run Code Online (Sandbox Code Playgroud)

您可以在此处的文档中找到有关导出数据的更多详细信息。