管理最終備份
透過集合功能整理內容
你可以依據偏好儲存及分類內容。
本頁面說明如何管理 Cloud SQL 執行個體的最終備份。刪除執行個體前,您可以建立執行個體的最終備份。接著,您可以將最終備份還原至新的或現有的執行個體。這樣一來,您就能重新建立意外刪除的任何執行個體,或在任何災難復原情況下使用這些執行個體。
與自動備份和隨選備份不同,這類備份與執行個體相關聯,您可以在刪除執行個體前建立最終備份。Cloud SQL 會在執行個體的生命週期結束後,繼續儲存這項備份。
您可以使用現有的 gcloud CLI 指令,列出、說明、更新及刪除最終備份。如果您使用的是自訂角色,請為角色新增下列權限:
cloudsql.backupRuns.list
cloudsql.backupRuns.get
cloudsql.backupRuns.update
cloudsql.backupRuns.delete
如要進一步瞭解這些權限,請參閱「必要權限」。此外,如要進一步瞭解備份的運作方式,請參閱「關於 Cloud SQL 備份」。
所需權限
Google Cloud 控制台
如要管理 Google Cloud 專案中的最終備份,您必須具備下列權限:
工作 |
所需權限 |
列出最終備份 |
cloudsql.backupRuns.list |
說明最終備份 |
cloudsql.backupRuns.get |
更新最終備份 |
cloudsql.backupRuns.update |
刪除最終備份 |
cloudsql.backupRuns.delete |
如要管理 Google Cloud 專案中的最終備份,您必須具備下列權限:
動作 |
指令 |
所需權限 |
列出最終備份 |
gcloud sql backups list |
cloudsql.backupRuns.list |
說明最終備份 |
gcloud sql backups describe |
cloudsql.backupRuns.get |
更新最終備份 |
gcloud sql backups patch |
cloudsql.backupRuns.update |
刪除最終備份 |
gcloud sql backups delete |
cloudsql.backupRuns.delete |
REST
如要管理 Google Cloud 專案中的最終備份,您必須具備下列權限:
動作 |
方法 |
所需權限 |
列出最終備份 |
Backups.ListBackups |
cloudsql.backupRuns.list |
說明最終備份 |
Backups.GetBackup |
cloudsql.backupRuns.get |
更新最終備份 |
Backups.UpdateBackup |
cloudsql.backupRuns.update |
刪除最終備份 |
Backups.DeleteBackup |
cloudsql.backupRuns.delete |
查看最終備份清單
您可以使用 Google Cloud 控制台、gcloud CLI 或 Cloud SQL API,查看最終備份清單和備份詳細資料。
Google Cloud 主控台不會在備份記錄中顯示略過或失敗的備份。如要查看這類備份,請使用 gcloud
或 Cloud SQL API。
控制台
前往 Google Cloud 控制台的「Cloud SQL 備份」頁面。
前往 Cloud SQL 備份
這個頁面會列出與 Google Cloud 專案相關聯的所有備份 (包括最終備份)。
如要查看最終備份的詳細資料,請按一下該備份。系統會顯示「最終備份」對話方塊。這個對話方塊會顯示下列資訊:
- 用來建立最終備份的執行個體刪除的日期和時間
- 已刪除的執行個體名稱和版本
- 日期和時間戳記,表示 Cloud SQL 保留最終備份的時間長度
- 最終備份的說明
gcloud
如要取得與 Google Cloud 專案相關聯的所有最終備份清單,請使用 gcloud sql backups list
指令:
gcloud sql backups list \
--filter="type=FINAL"
如要查看最終備份的詳細資料,請使用 gcloud sql backups describe
指令:
gcloud sql backups describe \
BACKUP_NAME
您可以從執行 gcloud sql backups list
指令的輸出內容取得 BACKUP_NAME。BACKUP_NAME 的格式如下:projects/PROJECT_ID/backups/BACKUP_ID
。
REST v1
取得最終備份清單
您可以使用這個範例,取得與 Google Cloud 專案相關聯的所有最終備份清單。如需此呼叫的完整參數清單,請參閱 Backups.ListBackups 頁面。
使用任何要求資料之前,請先替換以下項目:
- PROJECT_ID:專案 ID
- INSTANCE_ID:執行個體 ID
HTTP 方法和網址:
GET https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/backups?filter=type=FINAL
如要傳送要求,請展開以下其中一個選項:
curl (Linux、macOS 或 Cloud Shell)
執行下列指令:
curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/backups?filter=type=FINAL"
PowerShell (Windows)
執行下列指令:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/backups?filter=type=FINAL" | Select-Object -Expand Content
您應該會收到如下的 JSON 回應:
回應
{
"name": "projects/PROJECT_ID/backups/BACKUP_ID",
"kind": "sql#backup",
"status": "SUCCESSFUL",
"backupInterval": {
"startTime": "2020-01-21T11:25:33.858Z",
"endTime": "2020-01-21T11:26:18.663Z",
}
"type": "FINAL",
"instance": "INSTANCE_ID",
"selfLink": "https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/backups/BACKUP_ID",
"location": "us"
"description": "final backup",
"backupKind": "SNAPSHOT",
"dataDiskSizeGB": "10",
"expiryTime": "2020-01-30T11:26:18.663Z",
"backup_run": "projects/PROJECT_ID/instances/INSTANCE_ID/backupRuns/BACKUP_RUN_ID",
"satisfies_pzs": false,
"satisfies_pzi": false
}
查看最終備份的詳細資料
請參考以下範例,瞭解最終備份的詳細資料。如需此呼叫的完整參數清單,請參閱 Backups.GetBackup 頁面。
使用任何要求資料之前,請先替換以下項目:
- PROJECT_ID:專案 ID。
- BACKUP_ID:備份 ID。您可以從執行上一個呼叫的輸出內容取得這個 ID。
HTTP 方法和網址:
GET https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/backups/BACKUP_ID
如要傳送要求,請展開以下其中一個選項:
curl (Linux、macOS 或 Cloud Shell)
執行下列指令:
curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/backups/BACKUP_ID"
PowerShell (Windows)
執行下列指令:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/backups/BACKUP_ID" | Select-Object -Expand Content
您應該會收到如下的 JSON 回應:
回應
{
"name": "projects/PROJECT_ID/backups/BACKUP_ID",
"kind": "sql#backup",
"status": "SUCCESSFUL",
"backupInterval": {
"startTime": "2020-01-21T11:25:33.858Z",
"endTime": "2020-01-21T11:26:18.663Z",
}
"type": "FINAL",
"instance": "INSTANCE_ID",
"selfLink": "https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/backups/BACKUP_ID",
"location": "us"
"description": "final backup",
"backupKind": "SNAPSHOT",
"dataDiskSizeGB": "10",
"expiryTime": "2020-01-30T11:26:18.663Z",
"backup_run": "projects/PROJECT_ID/instances/INSTANCE_ID/backupRuns/BACKUP_RUN_ID",
"satisfies_pzs": false,
"satisfies_pzi": false
}
REST v1beta4
取得最終備份清單
您可以使用這個範例,取得與 Google Cloud 專案相關聯的所有最終備份清單。如需此呼叫的完整參數清單,請參閱 Backups.ListBackups 頁面。
使用任何要求資料之前,請先替換以下項目:
- PROJECT_ID:專案 ID
- INSTANCE_ID:執行個體 ID
HTTP 方法和網址:
GET https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/backups?filter=type=FINAL
如要傳送要求,請展開以下其中一個選項:
curl (Linux、macOS 或 Cloud Shell)
執行下列指令:
curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/backups?filter=type=FINAL"
PowerShell (Windows)
執行下列指令:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/backups?filter=type=FINAL" | Select-Object -Expand Content
您應該會收到如下的 JSON 回應:
回應
{
"name": "projects/PROJECT_ID/backups/BACKUP_ID",
"kind": "sql#backup",
"status": "SUCCESSFUL",
"backupInterval": {
"startTime": "2020-01-21T11:25:33.858Z",
"endTime": "2020-01-21T11:26:18.663Z",
}
"type": "FINAL",
"instance": "INSTANCE_ID",
"selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/backups/BACKUP_ID",
"location": "us"
"description": "final backup",
"backupKind": "SNAPSHOT",
"dataDiskSizeGB": "10",
"expiryTime": "2020-01-30T11:26:18.663Z",
"backup_run": "projects/PROJECT_ID/instances/INSTANCE_ID/backupRuns/BACKUP_RUN_ID",
"satisfies_pzs": false,
"satisfies_pzi": false
}
查看最終備份的詳細資料
請參考這個範例,查看最終備份的詳細資料。如需此呼叫的完整參數清單,請參閱 Backups.GetBackup 頁面。
使用任何要求資料之前,請先替換以下項目:
- PROJECT_ID:專案 ID。
- BACKUP_ID:備份 ID。您可以從執行上一個呼叫的輸出內容取得這個 ID。
HTTP 方法和網址:
GET https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/backups/BACKUP_ID
如要傳送要求,請展開以下其中一個選項:
curl (Linux、macOS 或 Cloud Shell)
執行下列指令:
curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/backups/BACKUP_ID"
PowerShell (Windows)
執行下列指令:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/backups/BACKUP_ID" | Select-Object -Expand Content
您應該會收到如下的 JSON 回應:
回應
{
"name": "projects/PROJECT_ID/backups/BACKUP_ID",
"kind": "sql#backup",
"status": "SUCCESSFUL",
"backupInterval": {
"startTime": "2020-01-21T11:25:33.858Z",
"endTime": "2020-01-21T11:26:18.663Z",
}
"type": "FINAL",
"instance": "INSTANCE_ID",
"selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/backups/BACKUP_ID",
"location": "us"
"description": "final backup",
"backupKind": "SNAPSHOT",
"dataDiskSizeGB": "10",
"expiryTime": "2020-01-30T11:26:18.663Z",
"backup_run": "projects/PROJECT_ID/instances/INSTANCE_ID/backupRuns/BACKUP_RUN_ID",
"satisfies_pzs": false,
"satisfies_pzi": false
}
更新最終備份
您可以使用 Google Cloud 控制台、gcloud CLI 或 Cloud SQL API,更新Cloud SQL 保留最終備份的時間長度,以及備份的說明。
控制台
前往 Google Cloud 控制台的「Cloud SQL 備份」頁面。
前往 Cloud SQL 備份
這個頁面會列出與 Google Cloud 專案相關聯的所有備份 (包括最終備份)。
- 如要更新最終備份,請按一下該備份。系統會顯示「最終備份」對話方塊。
- 如要更新 Cloud SQL 保留最終備份的時間長度,請完成下列操作:
- 按一下「備份保留期限」欄位旁的「編輯保留期限」圖示。
- 按一下「保留備份至」欄位旁的「選取日期」圖示。
- 在日曆中選取新的日期,表示 Cloud SQL 保留最終備份的時間長度。
- 按一下「更新」。系統會將您帶回「Cloud SQL 備份」頁面。
- 如要更新最終備份的說明,請完成下列操作:
- 按一下最終備份。
- 按一下「Description」欄位旁的「Edit description」圖示。
- 在「為這個備份提供說明」欄位中,輸入最終備份的更新說明。
- 按一下「更新」。您會返回「Cloud SQL 備份」頁面。
gcloud
如要取得與 Google Cloud 專案相關聯的所有最終備份清單,請使用 gcloud sql backups list
指令:
gcloud sql backups list \
--filter="type=FINAL"
如要更新最終備份的說明和保留期限,請使用 gcloud sql backups patch
指令:
gcloud sql backups patch \
BACKUP_NAME \
--description=DESCRIPTION /
--expiry-time=DATE-AND-TIME-STAMP | --ttl-days=NUMBER-OF-DAYS
您可以從執行 gcloud sql backups list
指令的輸出內容取得 BACKUP_NAME。BACKUP_NAME 的格式如下:projects/PROJECT_ID/backups/BACKUP_ID
。
針對 --expiry-time
和 --ttl-days
標記,請遵循下列規範:
- 針對
--expiry-time
旗標,請指定 Cloud SQL 自動刪除最終備份的日期和時間戳記。
- 針對
--ttl-days
標記,請指定最終備份的保留期限 (1 到 365 天)。這就是所謂的存留時間 (TTL)。保留期限從目前的日期和時間開始,Cloud SQL 允許的保留期限上限為 1 年 (或 365 天)。
REST v1
取得最終備份清單
您可以使用這個範例,取得與 Google Cloud 專案相關聯的所有最終備份清單。如需此呼叫的完整參數清單,請參閱 Backups.ListBackups 頁面。
使用任何要求資料之前,請先替換以下項目:
- PROJECT_ID:專案 ID
- INSTANCE_ID:執行個體 ID
HTTP 方法和網址:
GET https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/backups?filter=type=FINAL
如要傳送要求,請展開以下其中一個選項:
curl (Linux、macOS 或 Cloud Shell)
執行下列指令:
curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/backups?filter=type=FINAL"
PowerShell (Windows)
執行下列指令:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/backups?filter=type=FINAL" | Select-Object -Expand Content
您應該會收到如下的 JSON 回應:
回應
{
"name": "projects/PROJECT_ID/backups/BACKUP_ID",
"kind": "sql#backup",
"status": "SUCCESSFUL",
"backupInterval": {
"startTime": "2020-01-21T11:25:33.858Z",
"endTime": "2020-01-21T11:26:18.663Z",
}
"type": "FINAL",
"instance": "INSTANCE_ID",
"selfLink": "https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/backups/BACKUP_ID",
"location": "us"
"description": "final backup",
"backupKind": "SNAPSHOT",
"dataDiskSizeGB": "10",
"expiryTime": "2020-01-30T11:26:18.663Z",
"backup_run": "projects/PROJECT_ID/instances/INSTANCE_ID/backupRuns/BACKUP_RUN_ID",
"satisfies_pzs": false,
"satisfies_pzi": false
}
更新保留期限
您可以透過下列其中一種方式更新最終備份的保留期限:
- 保留天數:修改 Cloud SQL 保留備份的天數。
- 到期時間:提供 Cloud SQL 自動刪除備份的更新日期和時間戳記。
更新保留天數
請參考以下範例,更新 Cloud SQL 保留最終備份的天數。如需此呼叫的完整參數清單,請參閱 Backups.UpdateBackup 頁面。
使用任何要求資料之前,請先替換以下項目:
- PROJECT_ID:專案 ID。
- BACKUP_ID:備份 ID。您可以從執行上一個呼叫的輸出內容取得此 ID。
- TTL_DAYS:最終備份的保留期限 (從 1 到 365 天)。這就是所謂的存留時間 (TTL)。保留期限會從目前的日期和時間開始計算,Cloud SQL 允許的保留期限上限為 1 年 (或 365 天)。
HTTP 方法和網址:
PATCH https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/backups/BACKUP_ID?update_mask=ttl_days
JSON 要求主體:
{
"backup": {
expiration: {
"ttl_days": TTL_DAYS,
}
},
}
如要傳送要求,請展開以下其中一個選項:
curl (Linux、macOS 或 Cloud Shell)
將要求主體儲存在名為 request.json
的檔案中,然後執行下列指令:
curl -X PATCH \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/backups/BACKUP_ID?update_mask=ttl_days"
PowerShell (Windows)
將要求主體儲存在名為 request.json
的檔案中,然後執行下列指令:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method PATCH `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/backups/BACKUP_ID?update_mask=ttl_days" | Select-Object -Expand Content
您應該會收到如下的 JSON 回應:
回應
{
"kind": "sql#operation",
"targetLink": "https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/backups/BACKUP_ID",
"status": "DONE",
"user": "[email protected]",
"insertTime": "2024-02-15T00:10:22.078Z",
"operationType": "UPDATE_BACKUP",
"name": "OPERATION_ID",
"targetId": "BACKUP_ID",
"selfLink": "https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/operations/OPERATION_ID",
"targetProject": "PROJECT_ID"
}
更新到期時間
請使用這個範例,為 Cloud SQL 刪除備份時提供更新的日期和時間戳記。如需此呼叫的完整參數清單,請參閱 Backups.UpdateBackup 頁面。
使用任何要求資料之前,請先替換以下項目:
- PROJECT_ID:專案 ID。
- BACKUP_ID:備份 ID。您可以從執行上一個呼叫的輸出內容取得這個 ID。
- DATE_AND_TIME_STAMP:Cloud SQL 自動刪除最終備份的日期和時間戳記。
HTTP 方法和網址:
PATCH https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/backups/BACKUP_ID?update_mask=expiry_time
JSON 要求主體:
{
"backup": {
expiration: {
"expiry_time": DATE_AND_TIME_STAMP,
}
},
}
如要傳送要求,請展開以下其中一個選項:
curl (Linux、macOS 或 Cloud Shell)
將要求主體儲存在名為 request.json
的檔案中,然後執行下列指令:
curl -X PATCH \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/backups/BACKUP_ID?update_mask=expiry_time"
PowerShell (Windows)
將要求主體儲存在名為 request.json
的檔案中,然後執行下列指令:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method PATCH `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/backups/BACKUP_ID?update_mask=expiry_time" | Select-Object -Expand Content
您應該會收到如下的 JSON 回應:
回應
{
"kind": "sql#operation",
"targetLink": "https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/backups/BACKUP_ID",
"status": "DONE",
"user": "[email protected]",
"insertTime": "2024-02-15T00:10:22.078Z",
"operationType": "UPDATE_BACKUP",
"name": "OPERATION_ID",
"targetId": "BACKUP_ID",
"selfLink": "https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/operations/OPERATION_ID",
"targetProject": "PROJECT_ID"
}
更新說明
請參考以下範例,更新最終備份的說明。如需此呼叫的完整參數清單,請參閱 Backups.UpdateBackup 頁面。
使用任何要求資料之前,請先替換以下項目:
- PROJECT_ID:專案 ID。
- BACKUP_ID:備份 ID。您可以從執行上一個呼叫的輸出內容取得這個 ID。
- DESCRIPTION:最終備份的更新說明。
HTTP 方法和網址:
PATCH https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/backups/BACKUP_ID?update_mask=description
JSON 要求主體:
{
"backup": {
"description": DESCRIPTION,
},
}
如要傳送要求,請展開以下其中一個選項:
curl (Linux、macOS 或 Cloud Shell)
將要求主體儲存在名為 request.json
的檔案中,然後執行下列指令:
curl -X PATCH \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/backups/BACKUP_ID?update_mask=description"
PowerShell (Windows)
將要求主體儲存在名為 request.json
的檔案中,然後執行下列指令:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method PATCH `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/backups/BACKUP_ID?update_mask=description" | Select-Object -Expand Content
您應該會收到如下的 JSON 回應:
回應
{
"kind": "sql#operation",
"targetLink": "https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/backups/BACKUP_ID",
"status": "DONE",
"user": "[email protected]",
"insertTime": "2024-02-15T00:10:22.078Z",
"operationType": "UPDATE_BACKUP",
"name": "OPERATION_ID",
"targetId": "BACKUP_ID",
"selfLink": "https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/operations/OPERATION_ID",
"targetProject": "PROJECT_ID"
}
REST v1beta4
取得最終備份清單
您可以使用這個範例,取得與 Google Cloud 專案相關聯的所有最終備份清單。如需此呼叫的完整參數清單,請參閱 Backups.ListBackups 頁面。
使用任何要求資料之前,請先替換以下項目:
- PROJECT_ID:專案 ID
- INSTANCE_ID:執行個體 ID
HTTP 方法和網址:
GET https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/backups?filter=type=FINAL
如要傳送要求,請展開以下其中一個選項:
curl (Linux、macOS 或 Cloud Shell)
執行下列指令:
curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/backups?filter=type=FINAL"
PowerShell (Windows)
執行下列指令:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/backups?filter=type=FINAL" | Select-Object -Expand Content
您應該會收到如下的 JSON 回應:
回應
{
"name": "projects/PROJECT_ID/backups/BACKUP_ID",
"kind": "sql#backup",
"status": "SUCCESSFUL",
"backupInterval": {
"startTime": "2020-01-21T11:25:33.858Z",
"endTime": "2020-01-21T11:26:18.663Z",
}
"type": "FINAL",
"instance": "INSTANCE_ID",
"selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/backups/BACKUP_ID",
"location": "us"
"description": "final backup",
"backupKind": "SNAPSHOT",
"dataDiskSizeGB": "10",
"expiryTime": "2020-01-30T11:26:18.663Z",
"backup_run": "projects/PROJECT_ID/instances/INSTANCE_ID/backupRuns/BACKUP_RUN_ID",
"satisfies_pzs": false,
"satisfies_pzi": false
}
更新保留期限
您可以透過下列其中一種方式更新最終備份的保留期限:
- 保留天數:修改 Cloud SQL 保留備份的天數
- 到期時間:提供 Cloud SQL 自動刪除備份的更新日期和時間戳記。
更新保留天數
請參考以下範例,更新 Cloud SQL 保留最終備份的天數。如需此呼叫的完整參數清單,請參閱 Backups.UpdateBackup 頁面。
使用任何要求資料之前,請先替換以下項目:
- PROJECT_ID:專案 ID。
- BACKUP_ID:備份 ID。您可以從執行上一個呼叫的輸出內容取得此 ID。
- TTL_DAYS:最終備份的保留期限 (從 1 到 365 天)。這就是所謂的存留時間 (TTL)。保留期限會從目前的日期和時間開始計算,Cloud SQL 允許的保留期限上限為 1 年 (或 365 天)。
HTTP 方法和網址:
PATCH https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/backups/BACKUP_ID?update_mask=ttl_days
JSON 要求主體:
{
"backup": {
expiration: {
"ttl_days": TTL_DAYS,
}
},
}
如要傳送要求,請展開以下其中一個選項:
curl (Linux、macOS 或 Cloud Shell)
將要求主體儲存在名為 request.json
的檔案中,然後執行下列指令:
curl -X PATCH \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/backups/BACKUP_ID?update_mask=ttl_days"
PowerShell (Windows)
將要求主體儲存在名為 request.json
的檔案中,然後執行下列指令:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method PATCH `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/backups/BACKUP_ID?update_mask=ttl_days" | Select-Object -Expand Content
您應該會收到如下的 JSON 回應:
回應
{
"kind": "sql#operation",
"targetLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/backups/BACKUP_ID",
"status": "DONE",
"user": "[email protected]",
"insertTime": "2024-02-15T00:10:22.078Z",
"operationType": "UPDATE_BACKUP",
"name": "OPERATION_ID",
"targetId": "BACKUP_ID",
"selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/operations/OPERATION_ID",
"targetProject": "PROJECT_ID"
}
更新到期時間
請使用這個範例,為 Cloud SQL 刪除備份時提供更新的日期和時間戳記。如需此呼叫的完整參數清單,請參閱 Backups.UpdateBackup 頁面。
使用任何要求資料之前,請先替換以下項目:
- PROJECT_ID:專案 ID。
- BACKUP_ID:備份 ID。您可以從執行上一個呼叫的輸出內容取得這個 ID。
- DATE_AND_TIME_STAMP:Cloud SQL 自動刪除最終備份的日期和時間戳記。
HTTP 方法和網址:
PATCH https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/backups/BACKUP_ID?update_mask=expiry_time
JSON 要求主體:
{
"backup": {
expiration: {
"expiry_time": DATE_AND_TIME_STAMP,
}
},
}
如要傳送要求,請展開以下其中一個選項:
curl (Linux、macOS 或 Cloud Shell)
將要求主體儲存在名為 request.json
的檔案中,然後執行下列指令:
curl -X PATCH \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/backups/BACKUP_ID?update_mask=expiry_time"
PowerShell (Windows)
將要求主體儲存在名為 request.json
的檔案中,然後執行下列指令:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method PATCH `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/backups/BACKUP_ID?update_mask=expiry_time" | Select-Object -Expand Content
您應該會收到如下的 JSON 回應:
回應
{
"kind": "sql#operation",
"targetLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/backups/BACKUP_ID",
"status": "DONE",
"user": "[email protected]",
"insertTime": "2024-02-15T00:10:22.078Z",
"operationType": "UPDATE_BACKUP",
"name": "OPERATION_ID",
"targetId": "BACKUP_ID",
"selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/operations/OPERATION_ID",
"targetProject": "PROJECT_ID"
}
更新說明
請參考以下範例,更新最終備份的說明。如需此呼叫的完整參數清單,請參閱 Backups.UpdateBackup 頁面。
使用任何要求資料之前,請先替換以下項目:
- PROJECT_ID:專案 ID。
- BACKUP_ID:備份 ID。您可以從執行上一個呼叫的輸出內容取得這個 ID。
- DESCRIPTION:最終備份的更新說明。
HTTP 方法和網址:
PATCH https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/backups/BACKUP_ID?update_mask=description
JSON 要求主體:
{
"backup": {
"description": DESCRIPTION,
},
}
如要傳送要求,請展開以下其中一個選項:
curl (Linux、macOS 或 Cloud Shell)
將要求主體儲存在名為 request.json
的檔案中,然後執行下列指令:
curl -X PATCH \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/backups/BACKUP_ID?update_mask=description"
PowerShell (Windows)
將要求主體儲存在名為 request.json
的檔案中,然後執行下列指令:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method PATCH `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/backups/BACKUP_ID?update_mask=description" | Select-Object -Expand Content
您應該會收到如下的 JSON 回應:
回應
{
"kind": "sql#operation",
"targetLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/backups/BACKUP_ID",
"status": "DONE",
"user": "[email protected]",
"insertTime": "2024-02-15T00:10:22.078Z",
"operationType": "UPDATE_BACKUP",
"name": "OPERATION_ID",
"targetId": "BACKUP_ID",
"selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/operations/OPERATION_ID",
"targetProject": "PROJECT_ID"
}
刪除最終備份
您可以使用 Google Cloud 控制台、gcloud CLI 或 Cloud SQL API 刪除最終備份。
刪除備份所釋放的空間可能無法達到備份的大小。這是因為備份是以增量方式備份,因此刪除較舊備份可能會將其部分內容轉移到更近的備份,以保留較新備份的完整性。
控制台
前往 Google Cloud 控制台的「Cloud SQL 備份」頁面。
前往 Cloud SQL 備份
這個頁面會列出與 Google Cloud 專案相關聯的所有備份 (包括最終備份)。
- 針對要刪除的最後一個備份,按一下更多動作圖示
,然後選取「Delete」(刪除)。
- 在「Delete final backup?」視窗中,輸入用來建立最終備份的執行個體名稱,然後按一下「Delete」。
gcloud
如要取得與 Google Cloud 專案相關聯的所有最終備份清單,請使用 gcloud sql backups list
指令:
gcloud sql backups list \
--filter="type=FINAL"
如要刪除最終備份,請使用 gcloud sql backups delete
指令:
gcloud sql backups delete \
BACKUP_NAME
您可以從執行 gcloud sql backups list
指令的輸出內容取得 BACKUP_NAME。BACKUP_NAME 的格式如下:projects/PROJECT_ID/backups/BACKUP_ID
。
REST v1
取得最終備份清單
您可以使用這個範例,取得與 Google Cloud 專案相關聯的所有最終備份清單。如需此呼叫的完整參數清單,請參閱 Backups.ListBackups 頁面。
使用任何要求資料之前,請先替換以下項目:
- PROJECT_ID:專案 ID
- INSTANCE_ID:執行個體 ID
HTTP 方法和網址:
GET https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/backups?filter=type=FINAL
如要傳送要求,請展開以下其中一個選項:
curl (Linux、macOS 或 Cloud Shell)
執行下列指令:
curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/backups?filter=type=FINAL"
PowerShell (Windows)
執行下列指令:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/backups?filter=type=FINAL" | Select-Object -Expand Content
您應該會收到如下的 JSON 回應:
回應
{
"name": "projects/PROJECT_ID/backups/BACKUP_ID",
"kind": "sql#backup",
"status": "SUCCESSFUL",
"backupInterval": {
"startTime": "2020-01-21T11:25:33.858Z",
"endTime": "2020-01-21T11:26:18.663Z",
}
"type": "FINAL",
"instance": "INSTANCE_ID",
"selfLink": "https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/backups/BACKUP_ID",
"location": "us"
"description": "final backup",
"backupKind": "SNAPSHOT",
"dataDiskSizeGB": "10",
"expiryTime": "2020-01-30T11:26:18.663Z",
"backup_run": "projects/PROJECT_ID/instances/INSTANCE_ID/backupRuns/BACKUP_RUN_ID",
"satisfies_pzs": false,
"satisfies_pzi": false
}
刪除最終備份
請參考以下範例,瞭解如何刪除最終備份。如需此呼叫的完整參數清單,請參閱 Backups.DeleteBackup 頁面。
使用任何要求資料之前,請先替換以下項目:
- PROJECT_ID:專案 ID。
- BACKUP_ID:備份 ID。您可以從執行上一個呼叫的輸出內容取得這個 ID。
HTTP 方法和網址:
DELETE https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/backups/BACKUP_ID
如要傳送要求,請展開以下其中一個選項:
curl (Linux、macOS 或 Cloud Shell)
執行下列指令:
curl -X DELETE \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/backups/BACKUP_ID"
PowerShell (Windows)
執行下列指令:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method DELETE `
-Headers $headers `
-Uri "https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/backups/BACKUP_ID" | Select-Object -Expand Content
您應該會收到如下的 JSON 回應:
回應
{
"kind": "sql#operation",
"targetLink": "https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/backups/BACKUP_ID",
"status": "PENDING",
"user": "[email protected]",
"insertTime": "2020-01-21T22:43:37.981Z",
"operationType": "DELETE_BACKUP",
"name": "OPERATION_ID",
"targetId": "BACKUP_ID",
"selfLink": "https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/operations/OPERATION_ID",
"targetProject": "PROJECT_ID"
}
REST v1beta4
取得最終備份清單
您可以使用這個範例,取得與 Google Cloud 專案相關聯的所有最終備份清單。如需此呼叫的完整參數清單,請參閱 Backups.ListBackups 頁面。
使用任何要求資料之前,請先替換以下項目:
- PROJECT_ID:專案 ID
- INSTANCE_ID:執行個體 ID
HTTP 方法和網址:
GET https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/backups?filter=type=FINAL
如要傳送要求,請展開以下其中一個選項:
curl (Linux、macOS 或 Cloud Shell)
執行下列指令:
curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/backups?filter=type=FINAL"
PowerShell (Windows)
執行下列指令:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/backups?filter=type=FINAL" | Select-Object -Expand Content
您應該會收到如下的 JSON 回應:
回應
{
"name": "projects/PROJECT_ID/backups/BACKUP_ID",
"kind": "sql#backup",
"status": "SUCCESSFUL",
"backupInterval": {
"startTime": "2020-01-21T11:25:33.858Z",
"endTime": "2020-01-21T11:26:18.663Z",
}
"type": "FINAL",
"instance": "INSTANCE_ID",
"selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/backups/BACKUP_ID",
"location": "us"
"description": "final backup",
"backupKind": "SNAPSHOT",
"dataDiskSizeGB": "10",
"expiryTime": "2020-01-30T11:26:18.663Z",
"backup_run": "projects/PROJECT_ID/instances/INSTANCE_ID/backupRuns/BACKUP_RUN_ID",
"satisfies_pzs": false,
"satisfies_pzi": false
}
刪除最終備份
請參考以下範例,瞭解如何刪除最終備份。如需此呼叫的完整參數清單,請參閱 Backups.DeleteBackup 頁面。
使用任何要求資料之前,請先替換以下項目:
- PROJECT_ID:專案 ID。
- BACKUP_ID:備份 ID。您可以從執行上一個呼叫的輸出內容取得這個 ID。
HTTP 方法和網址:
DELETE https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/backups/BACKUP_ID
如要傳送要求,請展開以下其中一個選項:
curl (Linux、macOS 或 Cloud Shell)
執行下列指令:
curl -X DELETE \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/backups/BACKUP_ID"
PowerShell (Windows)
執行下列指令:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method DELETE `
-Headers $headers `
-Uri "https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/backups/BACKUP_ID" | Select-Object -Expand Content
您應該會收到如下的 JSON 回應:
回應
{
"kind": "sql#operation",
"targetLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/backups/BACKUP_ID",
"status": "PENDING",
"user": "[email protected]",
"insertTime": "2020-01-21T22:43:37.981Z",
"operationType": "DELETE_BACKUP",
"name": "OPERATION_ID",
"targetId": "BACKUP_ID",
"selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/operations/OPERATION_ID",
"targetProject": "PROJECT_ID"
}
後續步驟
除非另有註明,否則本頁面中的內容是採用創用 CC 姓名標示 4.0 授權,程式碼範例則為阿帕契 2.0 授權。詳情請參閱《Google Developers 網站政策》。Java 是 Oracle 和/或其關聯企業的註冊商標。
上次更新時間:2025-05-16 (世界標準時間)。
[[["容易理解","easyToUnderstand","thumb-up"],["確實解決了我的問題","solvedMyProblem","thumb-up"],["其他","otherUp","thumb-up"]],[["難以理解","hardToUnderstand","thumb-down"],["資訊或程式碼範例有誤","incorrectInformationOrSampleCode","thumb-down"],["缺少我需要的資訊/範例","missingTheInformationSamplesINeed","thumb-down"],["翻譯問題","translationIssue","thumb-down"],["其他","otherDown","thumb-down"]],["上次更新時間:2025-05-16 (世界標準時間)。"],[],[]]