Cloud SQL 備份簡介

本頁面說明 Cloud SQL 執行個體的備份作業如何運作。您可以在主要執行個體上執行備份。

如需安排或管理備份的逐步操作說明,請參閱「建立及管理隨選和自動備份」。

如需從備份還原資料至執行個體的總覽,請參閱「還原執行個體總覽」。

備份的功能

您可以運用備份,將遺失的資料還原至 Cloud SQL 執行個體。此外,如果執行個體發生問題,您可以使用備份覆寫執行個體,將其還原至先前的狀態。為含有必要資料的任何執行個體啟用自動備份功能。備份可避免資料遺失或毀損。

備份的費用

根據預設,Cloud SQL 會保留 7 個自動備份和隨選備份。您可以設定要保留的自動備份數量 (1 到 365 之間)。備份儲存空間的費率比其他類型的執行個體低。

您可以保留更多自動備份,但不得少於七個。

刪除執行個體時,您可以建立最終備份資料。這樣一來,您就能重新建立任何刪除的執行個體。不過,如果您未執行最終備份,Cloud SQL 會在您刪除執行個體後刪除所有備份。詳情請參閱「復原備份」。

詳情請參閱定價頁面

備份與匯出

Cloud SQL 會根據保留政策管理備份,並將備份與 Cloud SQL 執行個體分開儲存。Cloud SQL 備份與上傳至 Cloud Storage 的匯出內容不同,後者由您管理生命週期。備份涵蓋整個資料庫。匯出作業可選取特定內容。

備份和還原作業無法用於將資料庫升級至較新版本。您只能將備份還原至與備份來源資料庫版本相同的執行個體。

如要升級至較新版本,您可以匯出資料庫,然後匯入至新的 Cloud SQL 執行個體。

關於備份大小

Cloud SQL 備份是增量備份,這些備份只包含上次備份後變更的資料。最早的備份大小與資料庫相近,但後續備份的大小取決於資料變動率。刪除最早的備份時,下一個最早備份的大小就會增加,所以仍然會有完整的備份。

您可以查看個別備份的大小。備份大小代表每個備份的計費大小。

備份類型

Cloud SQL 可執行三種類型的備份:

隨選備份

您隨時都可以建立備份。這在某些情況下非常實用,例如您即將要在資料庫上執行具有風險性的作業時,或是您需要備份但不想等到備份期間再執行備份作業。不論執行個體是否已啟用自動備份功能,您都可以為任何執行個體建立隨選備份。.

系統不會自動刪除隨選備份,它們會一直存在,直到您刪除隨選備份或刪除其執行個體為止。由於系統不會自動刪除隨選備份,因此隨選備份可能會對您的帳單費用造成長期影響。

自動備份功能

系統每天都會在 4 小時的備份時段內自動備份資料。備份作業會在備份期間開始。如果可以,請將備份安排在執行個體活動最少的時間執行。

我們建議您不要刪除任何自動備份,因為這些備份是時間點復原功能的必要條件。

在備份時段內,系統會在執行個體執行的每一天執行自動備份。執行個體停止後,系統會再執行一次自動備份,以保護執行個體停止前所做的所有變更。根據預設,系統最多會保留七個最近的備份。您可以設定要保留的自動備份數量,但不得少於預設值 (七個)。

最終備份

最終備份可讓您在刪除 Cloud SQL 執行個體前備份該執行個體。這在刪除執行個體後保留執行個體資料時非常實用。您之後可以使用最終備份來建立執行個體,或將資料還原至現有執行個體。如要進一步瞭解如何存取及查看最終備份的詳細資料,請參閱「查看最終備份清單」。

根據預設,Cloud SQL 會將最終備份保留 30 天。不過,您可以自訂 Cloud SQL 保留備份的時間長度,從 1 天到 365 天不等。接著,只要備份可用,您就可以從備份還原執行個體。最終備份的收費方式與其他備份相同,會依據保留天數計費。

與自動備份和隨選備份不同,這兩者與執行個體相關聯,且只有在執行個體存在時才可使用,但您可以在 Cloud SQL 刪除執行個體後,查看並使用最終備份進行還原作業。

保留備份

保留備份是指 Cloud SQL 在刪除執行個體後保留的備份。這些備份包括隨選備份和在執行個體上線時建立的自動備份。刪除執行個體後,這些備份會與執行個體分開,並儲存在專案層級。保留備份與最終備份不同,後者是刪除執行個體時所採取的最後備份。

您可以更新這些備份的說明,方便在 Google Cloud 專案中管理這些備份。您隨時可以將保留的備份還原至新的或現有的 Cloud SQL 執行個體

對於這類備份,保留期限是由備份類型定義,且在刪除執行個體後無法變更。隨選備份會無限期保留,直到您手動刪除備份,或刪除含有備份的專案為止。自動備份會在執行個體刪除後,以滾動方式刪除 (每天刪除一個備份)。滾動期間的定義會根據執行個體的保留設定 (在刪除前) 而定。舉例來說,如果執行個體的自動備份保留設定設為 7,則最新的自動備份會在執行個體刪除後 7 天刪除。

您隨時可以手動刪除保留的備份。不過,刪除保留的備份後,就無法復原已刪除的備份。

由於執行個體名稱可在 Cloud SQL 中刪除執行個體後使用,因此保留的備份會儲存在 Google Cloud 專案中,並使用名為 instance_deletion_time 的欄位。這個欄位可讓您判斷特定備份是否屬於已刪除或仍在執行的執行個體。您也可以更新備份的說明,方便管理備份。

如要進一步瞭解如何為新執行個體或現有執行個體啟用保留備份,請參閱「管理保留備份」。如要進一步瞭解如何從保留的備份還原執行個體,請參閱「從保留的備份還原資料」。

備份的儲存位置

備份位置包括:

  • Cloud SQL 根據原始執行個體的位置選取的預設位置
  • 自訂位置:如果不想使用預設位置,請選擇這個選項。

預設備份位置

如果您未指定儲存位置,備份會儲存在地理位置上最接近 Cloud SQL 執行個體位置的多地區中。舉例來說,如果您的 Cloud SQL 執行個體位於 us-central1,系統預設會將備份儲存在 us 多區域。但是,諸如 australia-southeast1 等預設位置不在多地區範圍內。最近的多地區為 asia

自訂備份位置

Cloud SQL 可讓您為備份資料選取自訂位置。如果貴機構需要遵守資料落地法規,並且規定備份資料必須保留在特定地理區域內,這項功能就很實用。如果貴機構有這類需求,可能會使用「資源位置限制」機構政策。根據這項政策,如果您嘗試使用不符合政策的地理位置,系統會在「備份」頁面上顯示警示。如果您看到這則快訊,就必須將備份位置變更為政策允許的位置。

選取備份的自訂位置時,請考量下列事項:

  • 成本:執行個體中的某個叢集可能位於其他叢集的費用較低的地區。
  • 與應用程式伺服器的距離:建議您盡可能將備份儲存在離應用程式執行位置最近的位置。
  • 儲存空間用量:備份檔案大小會隨著時間增加,因此您需要足夠的儲存空間來儲存備份。視工作負載而定,您可能會有不同大小或磁碟用量的叢集。這可能會影響您選擇的叢集。

如需有效區域值的完整清單,請參閱「執行個體位置」。如需多地區值的完整清單,請參閱多地區位置

如要進一步瞭解如何設定備份位置,以及查看執行個體的備份位置,請參閱「設定備份的自訂位置」和「查看備份位置」。

自動備份保留期限

自動備份保留期限可設為預設值 (七天) 以上,但不得少於預設值。

請參閱「設定自動備份保留期限」。

我可以匯出備份嗎?

不行,您無法匯出備份。您只能匯出執行個體資料。請參閱「從 Cloud SQL 匯出資料」。

關於特殊備份使用者

Cloud SQL 會為每個執行個體建立特殊資料庫使用者 cloudsqladmin,並為該使用者產生專屬的執行個體密碼。Cloud SQL 會以 cloudsqladmin 使用者的身分登入,執行自動備份作業。

備份對執行個體作業的影響

寫入及其他作業不會受備份作業影響。

備份頻率限制

Cloud SQL 會限制資料磁碟上的備份作業頻率。每個專案的每個執行個體每 50 分鐘最多可執行五項備份作業。如果備份作業失敗,系統不會將該作業計入此配額。如果達到上限,系統會顯示錯誤訊息,說明何時可以重試,並導致作業失敗。

讓我們來看看 Cloud SQL 如何執行備份的頻率限制。

Cloud SQL 會使用儲存格中的符記,判斷可同時執行多少備份作業。每個執行個體都有一個值區。您最多可以在儲存格中使用五個符記來執行備份作業。每隔 10 分鐘,系統就會在值區中新增一個符記。如果 bucket 已滿,符記就會溢位。

每次發出備份作業時,系統就會從區塊中授予一個權杖。如果作業成功,系統就會從區塊中移除憑證。如果失敗,系統會將權杖傳回至儲存體。下圖說明這項功能的運作方式:

符記的運作方式

備份和資料完整性檢查

Cloud SQL 會自動執行背景資料庫完整性檢查,找出任何可能的資料完整性問題。這些檢查會以離線程序執行,還原客戶啟動的備份或復原備份的樣本。

復原備份

在刪除執行個體前,您可以建立最終備份資料。您也可以在刪除執行個體前啟用保留備份,保留所有自動和隨選備份。詳情請參閱「管理保留的備份」。

您可以從保留或最終備份還原至新的執行個體、現有執行個體、不同專案中的執行個體,或其他區域的新執行個體。詳情請參閱「還原執行個體」。

如果自動備份政策中沒有可用的有效備份,Cloud SQL 也會嘗試保留每個有效執行個體的至少一個最新的每日備份。您可以聯絡 Google Cloud 客戶服務團隊,將備份用於復原作業。

疑難排解

問題 疑難排解
您無法查看目前作業的狀態。 Google Cloud 主控台只會在作業完成時回報成功或失敗。這項功能並非用於顯示警告或其他更新。

執行 gcloud sql operations list 指令,即可列出指定 Cloud SQL 執行個體的所有作業。

您想找出誰執行了隨選備份作業。 使用者介面不會顯示啟動作業的使用者。

查看記錄並篩選文字,找出使用者。您可能需要使用稽核記錄來處理私人資訊。相關記錄檔案包括:

  • cloudsql.googleapis.com/sqlagent.out
  • cloudsql.googleapis.com/sqlserver.err
  • 如果已啟用 Cloud 稽核記錄,且您具備查看記錄的必要權限,cloudaudit.googleapis.com/activity 也可能會顯示。
執行個體刪除後,您就無法備份該執行個體。

如果您刪除執行個體時沒有備份最終資料,就無法復原資料。不過,如果您還原執行個體,Cloud SQL 也會還原備份。如要進一步瞭解如何復原已刪除的執行個體,請參閱「還原備份資料」。

如果您已執行匯出作業,請建立新的例項,然後執行匯入作業來重新建立資料庫。匯出內容會寫入 Cloud Storage,匯入內容則會從 Cloud Storage 讀取。

自動備份作業卡住好幾個小時,且無法取消。 視資料庫大小而定,備份作業可能需要較長時間。

如果您確實需要取消作業,可以請 客戶服務團隊force restart執行個體。

如果 SQL 傾印檔案中有一或多位參照的使用者不存在,還原作業就會失敗。 在還原 SQL 傾印檔案之前,如果資料庫使用者擁有傾印資料庫中的物件,或已取得傾印資料庫中的物件存取權,這些使用者都必須存在於目標資料庫中。如果沒有,還原作業就無法使用原始擁有權或權限重新建立物件。

請先 建立資料庫使用者,再還原 SQL 傾印內容。

您想將自動備份的保留天數從七天增加到 30 天或更久。 您可以 設定要保留的自動備份數量,但保留的數量不得少於預設值 (七個)。系統會根據設定的保留值定期刪除自動備份。很抱歉,這表示您只能從目前顯示的備份資料還原自動備份。

如要無限期保留備份,您可以建立隨選備份,因為系統不會以與自動備份相同的方式刪除隨選備份。隨選備份會無限期保留。也就是說,這些備份會一直存在,直到您刪除備份或刪除其所屬的執行個體為止。由於這類備份不會自動刪除,因此可能會影響計費。

自動備份失敗,且您未收到電子郵件通知。 如要讓 Cloud SQL 通知您備份狀態,請設定以記錄為依據的快訊
您無法使用 Transact-SQL RESTORE 指令SQL Server Management Studio (SSMS) 還原執行個體。 Cloud SQL 不支援透過 SSMS 還原執行個體。如要還原執行個體,請執行 gcloud sql import 指令。

後續步驟