キーキャッシュはパラメータ値を更新することで、随時、再構築されます。例 :
mysql> SET GLOBAL cold_cache.key_buffer_size=4*1024*1024;
key_buffer_size
またはkey_cache_block_size
キーキャッシュ構成部位に構成部位の現在値と異なる値を割り当てた場合、サーバはキャッシュの旧構造を破壊し、新しい値に基づいた新構造を作成します。キャッシュに汚染されたブロックが存在する場合、サーバはキャッシュを破壊/再作成する前にディスクにそれを保存します。他のキーキャッシュパラメータを変更した場合再構築は起きません。
キーキャッシュを再構築する場合、サーバはディスクの汚染されたバッファ内容を最初にフラッシュします。その後、キャッシュ内容は無効となります。しかし、再構築はキャッシュに割り当てられたインデックス使用を必要とするクエリをブロックしません。その代わり、サーバはネーティブファイルシステムキャッシングを使用するテーブルインデックスに直接アクセスします。ファイルシステムキャッシュはキーキャッシュを使用した場合ほど、効率が良くありません。クエリの実行がなされますが、速度の低下が予期されます。キャッシュが再構築された後、キャッシュインデックスが割り当てられる毎に有効となり、インデックスのファイルシステムキャッシングの使用が停止します。