我想要為 Amazon Relational Database (Amazon RDS) for Microsoft SQL Server 資料庫 (DB) 執行個體建立備份。我想知道影響建立備份所需時間的因素有哪些。
解決方法
根據要備份的資料量建立備份
為資料庫執行個體建立備份所需的時間取決於資料庫工作負載。資料庫工作負載越高,磁碟區中增量變更的次數就越多,導致備份時間越長。
在 Amazon RDS for SQL Server 中,您可以使用自動備份、手動資料庫快照和原生備份來備份資料庫執行個體。
Amazon RDS 自動備份和手動資料庫快照是資料庫執行個體的儲存磁碟區快照,可備份整個資料庫執行個體。資料庫執行個體的第一個備份包含完整資料庫執行個體的資料。同一資料庫執行個體的後續備份是增量的,並且僅儲存最近一次快照之後變更的資料。
對於原生 SQL 備份,您可以為資料庫執行個體建立完整備份與差異備份。將檔案儲存在 Amazon Simple Storage Service (Amazon S3) 儲存貯體中。您也可以在資料庫執行個體上建立單一資料庫的備份。
在某些情況下,您的資料庫執行個體需要的可能是完整備份,而不是增量備份。例如,在多可用區域容錯移轉後,或是開啟 Amazon RDS 自動備份後,您的執行個體可能需要完整備份。建立完整備份可能需要更長的時間。
其他可能增加備份時間的因素包括:
- CPU 和記憶體可用性
- 磁碟 I/O
- 資料庫活動
- 資料庫的大小
多可用區域容錯移轉和備份時間
在多可用區域容錯移轉後,第一個快照會比其他 Amazon RDS 快照花費更長時間,原因如下:
- 對於 SQL Server,快照一律是從多可用區域主要執行個體建立,且為增量備份。
- 多可用區域待命執行個體的 Amazon EBS 磁碟區可能與多可用區域主要執行個體的磁碟區不同步。
- 在容錯移轉後,先前的待命執行個體會成為新的主要執行個體。如果無法取得此執行個體最近的快照,則快照必須備份所有不同步的區塊。
- 備份持續時間取決於自上次備份以來已變更的資料區塊數量。
在您的維護時段或非尖峰時間透過容錯移轉演練為多可用區域容錯移轉做好準備。定期進行容錯移轉演練可確保兩個執行個體皆維持最近的快照,從而減少實際容錯移轉事件後的備份時間。
注意: 容錯移轉演練會產生停機時間,因此請根據您的營運需求進行規劃。
檢查原生備份或還原的進度
若要檢查原生備份或復原的進度,請在執行備份或還原陳述式後取得任務 ID。
或者,執行以下指令碼來識別特定資料庫所有已完成和待處理的任務:
exec msdb.dbo.rds_task_status @db_name='database_name'
注意: 請將 database_name 替換為您的資料庫名稱。
若要追蹤任務狀態,請執行下列 SQL 陳述式:
exec msdb.dbo.rds_task_status @task_id=my_task
注意: 請將 my_task 替換為您的任務 ID。
檢查手動資料庫快照的進度
請完成下列步驟:
- 開啟 Amazon Aurora 和 RDS 主控台。
- 在導覽窗格中,選擇 Snapshots (快照)。
- 選擇要檢查進度的快照,然後選擇Progress (進度) 索引標籤。
注意: 您無法使用 Aurora 和 RDS 主控台或 AWS Command Line Interface (AWS CLI) 檢查 Amazon RDS 自動備份的進度,您必須改為聯絡 AWS Support。