本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
從未分割資料表封存資料
在無法分割的資料庫資料表中,您可以使用 Percona Toolkit pt-archiver
pt-archiver 工具用於將記錄從大型資料表存檔到其他資料表或檔案。這是一種讀取/寫入工具,這表示它會在封存來源資料表之後刪除來源資料表中的資料,因此您不需要單獨管理來源資料刪除。此指令碼的主要目的是從資料表封存舊資料,而不會影響現有的線上交易處理 (OLTP) 查詢負載 (請參閱附錄 I),並將資料插入相同或不同伺服器上的另一個資料表。
您可以下載 Percona Toolkit
pt-archiver --source h=<HOST>,D=<DATABASE>,t=<TABLE>,u=<USER>,p=<PASSWORD> --dest h=<HOST>,D=<DATABASE>,t=<TABLE> --where ""1=1"" --statistics
將 HOST、TABLE、 DATABASE和 取代USER為您的來源和目的地資料庫詳細資訊和憑證。
您也可以使用 AWS Batch 為您的資料表建立和排程此任務。
當您使用 pt-archiver 工具封存資料表的資料時,請考慮下列事項:
-
在來源資料表上擁有主索引鍵可改善此工具的效能。如果資料表沒有主索引鍵,您可以在唯一資料欄上建立索引
,這將有助於 pt-archiver 瀏覽資料表的所有資料列並將其封存。 -
根據預設,pt-archiver 會在封存資料表之後刪除資料。在生產伺服器上執行之前,請務必使用 測試您的封存任務
--dry-run。或者,您可以使用--no-delete選項。 -
pt-archiver 工具會根據系統負載調整其封存速率 (請參閱附錄 II)。負載較高時,您可以預期封存效能會變慢。
在您執行 pt-archiver 之後,封存的資料應該位於封存結構描述中的對應資料表中。您可以從該處將其移至 Amazon S3。