Cloud SQL 備份簡介

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

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

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

備份的功能

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

某些作業需要一起啟用自動備份及二進位檔記錄,例如複製與備用資源建立作業。

備份的費用

根據預設,Cloud SQL 會為每個 Cloud SQL Enterprise 版本執行個體保留 7 個自動備份,並為每個 Cloud SQL Enterprise Plus 版本執行個體保留 15 個自動備份,此外還有隨選備份。您可以設定要保留的自動備份數量 (1 到 365 之間)。備份儲存空間的費率比其他類型的執行個體低。

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

詳情請參閱定價頁面

備份與匯出

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

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

如要升級至較新版本,建議您使用資料庫遷移服務,或匯出資料庫再匯入至新的 Cloud SQL 執行個體。

關於備份大小

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

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

備份類型

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

隨選備份

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

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

自動備份功能

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

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

在備份時段內,系統會在執行個體執行的每一天執行自動備份。執行個體停止後,系統會再執行一次自動備份,以保護執行個體停止前所做的所有變更。根據預設,系統最多會保留七個最近的備份。您可以設定要保留的自動備份數量,範圍為 1 到 365 個。您可以變更備份和交易記錄保留值的預設設定。瞭解詳情

最終備份

最終備份可讓您在刪除 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 執行個體。結合自動備份和交易記錄,即可執行時間點復原

您可以設定保留期限,讓自動備份保留長達一年,而隨選備份則會一直保留在伺服器上,直到您刪除備份或刪除執行個體為止。

雖然交易記錄是以天為單位計算,但自動備份作業不保證會在一天的結束時間執行。這些保留設定會使用不同的單位。自動備份保留期限是計數值,可設定為 1 到 365 個備份。

交易記錄保留期限以天為單位。對於 Cloud SQL Enterprise Plus 版執行個體,範圍為 1 到 35 天,預設為 14 天。對於 Cloud SQL Enterprise 版本的執行個體,範圍為 1 到 7 天,預設為 7 天。無論是 Cloud SQL Enterprise Plus 版本和 Cloud SQL Enterprise 版本的執行個體,交易記錄保留設定都必須小於備份保留設定。

下限可用於測試執行個體,因為記錄和備份會更快刪除。就交易記錄檔而言,磁碟大小不會隨著較低的邊界而增加太多。將自動備份保留期限設為較高的值,即可從更早的時間點還原。

系統會每天清除一次記錄,而非持續清除。如果記錄保留天數與備份數量相同,可能會導致記錄保留天數不足。舉例來說,如果將記錄保留期限設為七天,並將備份保留期限設為七個備份,則系統會保留六到七天的記錄。

建議您將備份數量設為至少比記錄保留天數多一個,以確保記錄保留天數達到指定天數的下限。

資料庫的寫入活動量高,可能會產生大量交易記錄,進而耗用大量磁碟空間,並導致啟用自動儲存空間增加功能的執行個體磁碟空間增加。建議您根據交易記錄保留期間,調整執行個體儲存空間的大小。

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

請參閱「設定交易記錄保留時間」。

我可以匯出備份嗎?

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

關於特殊備份使用者

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

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

以 MySQL 執行個體來說,系統不會使用 FLUSH TABLES WITH READ LOCK 標記建立備份,這代表寫入作業及其他作業皆不受備份作業影響。

一般來說,備份作業會在兩分鐘內完成,但如果上次備份後寫入大量資料,備份作業可能需要較長的時間才能完成。

如果在備份嘗試期間有待處理的作業,Cloud SQL 通常會在時間範圍內多次嘗試完成備份。會阻斷備份的作業是長時間執行的 Cloud SQL 執行個體作業,例如匯入、匯出、更新 (例如執行個體中繼資料變更) 和重新啟動執行個體。如果頻繁或長時間執行的作業會在備份時段內阻斷自動備份作業,建議您在其他時間安排備份作業。

執行載入資料等長時間作業時,您可以暫時停用自動備份功能。

備份頻率限制

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

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

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

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

符記的運作方式

備份和資料完整性檢查

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

復原備份

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

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

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

疑難排解

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

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

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

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

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

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

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

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

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

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

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

您想將自動備份的保留天數從七天增加到 30 天或更久。 您可以 設定要保留的自動備份數量,範圍為 1 到 365。系統會根據設定的保留值定期刪除自動備份。因此,您只能從目前顯示的備份資料還原。

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

自動備份失敗,且您未收到電子郵件通知。 如要讓 Cloud SQL 通知您備份狀態,請設定以記錄為依據的快訊

後續步驟