Amazon 上 MariaDB 的快取暖機 RDS - Amazon Relational Database Service

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

Amazon 上 MariaDB 的快取暖機 RDS

InnoDB 快取預備功能可在資料庫執行個體關閉時,儲存緩衝集區的當前狀態,等到資料庫執行個體啟動時,再使用儲存的資訊重新載入緩衝集區,藉此提升 MariaDB 資料庫執行個體的效能。此方法不必在資料庫正常使用情況下將緩衝集區「熱機」,而是將已知常用查詢的頁面預先載入緩衝集區。如需快取預備功能的詳細資訊,請參閱 MariaDB 文件中的 Dumping and restoring the buffer pool (傾印和還原緩衝集區)。

在 MariaDB 10.3 版和更新版本的資料庫執行個體上,會預設啟用快取預備功能。如果要自行啟用該功能,請在資料庫執行個體的參數群組中,將 innodb_buffer_pool_dump_at_shutdowninnodb_buffer_pool_load_at_startup 參數設為 1。在參數群組中變更這些參數值會影響使用該參數群組的所有 MariaDB 資料庫執行個體。請先為資料庫執行個體建立新的參數群組,才能啟用特定 MariaDB 資料庫執行個體的快取預備功能。如需參數群組的相關資訊,請參閱Amazon RDS 的參數群組

快取預備功能主要可為使用標準儲存體的資料庫執行個體提供效能方面的好處。如果您使用PIOPS儲存,則通常不會看到顯著的效能優勢。

重要

如果您的 MariaDB 資料庫執行個體沒有正常關閉 (例如容錯移轉期間),則緩衝集區狀態不會儲存到磁碟中。這種情形下,MariaDB 會在資料庫執行個體重新啟動時,載入任何可用的緩衝集區檔案。這不會造成任何損害,只是還原的緩衝集區無法反映緩衝集區在重新啟動之前的最新狀態。為確保您有最新狀態的緩衝集區可在啟動時預備快取,建議您定期「隨需」傾印緩衝集區。您可以隨需傾印或載入緩衝集區。

您可建立事件,以定期自動傾印緩衝集區。舉例來說,下列陳述式會建立名為 periodic_buffer_pool_dump 的事件,每小時傾印緩衝集區一次。

CREATE EVENT periodic_buffer_pool_dump ON SCHEDULE EVERY 1 HOUR DO CALL mysql.rds_innodb_buffer_pool_dump_now();

如需詳細資訊,請參閱 MariaDB 文件中的事件

隨需傾印與載入緩衝集區

您可以使用下列預存程序來隨需儲存和載入快取: