本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
疑難排解 Aurora 郵政中的儲存問題 SQL
如果排序或索引建立作業所需的工作記憶體數量超過work_mem
參數配置的數量,Aurora Postgre SQL 會將多餘的資料寫入暫存磁碟檔案。當它寫入資料時,Aurora Postgre SQL 會使用與用於儲存錯誤和訊息記錄 (亦即本機儲存區) 相同的儲存空間。Aurora Postgre SQL 資料庫叢集中的每個執行個體都有一定數量的可用本機儲存空間。儲存量是以其資料庫執行個體類別為基礎。若要增加本機儲存量,您需要修改執行個體以使用較大的資料庫執行個體類別。資料庫執行個體類別規格,請參閱 Aurora 的資料庫執行個體類別的硬體規格。
您可以監視 Aurora Postgre SQL 資料庫叢集的本機儲存空間,方法是觀看的 Amazon CloudWatch 指標。FreeLocalStorage
此指標回報可供 Aurora 資料庫叢集中每個資料庫執行個體用於暫時資料表與記錄的儲存量。如需詳細資訊,請參閱使用 監控 RDS Amazon Aurora 指標 CloudWatch。
排序、檢索和分組操作在工作記憶體中開始,但通常必須卸載至本機儲存體。如果您的 Aurora Postgre SQL 資料庫叢集因為這些類型的作業而耗盡本機儲存空間,您可以執行下列其中一個動作來解決此問題。
增加工作記憶體數量。這會減少使用本機儲存體的需求。默認情況下,Postgre SQL 分配 4 MB 的每個排序,組和索引操作。若要檢查 Aurora Postgre SQL 資料庫叢集的寫入器執行個體目前的工作記憶體值,請使用
psql
並執行下列命令連線至執行個體。postgres=>
SHOW work_mem;work_mem ---------- 4MB (1 row)
您可以在排序、群組和其他操作之前增加工作階段層級的工作記憶體,如下所示。
SET work_mem TO '1 GB';
如需有關工作記憶體的詳細資訊,請參閱 Postgre SQL 文件中的資源消耗
。 變更日誌保留期間,以便存放日誌的時間範圍縮短。如要瞭解如何作業,請參閱Aurora 下載後SQLRDS。
對於大於 40 TB 的 Aurora SQL 資料庫叢集,請勿使用 db.t2、db.t3 或 db.t4g 執行個體類別。建議您在開發、測試伺服器或其他非生產伺服器時,僅使用 T 資料庫執行個體類別。如需詳細資訊,請參閱資料庫執行個體類別的類型。