AliSQLは、データベースサービスの安定性を向上させるために、大きなファイルを非同期でパージする機能を提供します。
背景情報
DROP TABLE文を実行してデータを削除すると、対応するInnoDBデータファイルがファイルシステムから直接削除されます。 データファイルが大きい場合、データファイルの削除は、ポータブルオペレーティングシステムインターフェース (POSIX) ファイルシステムにおいて深刻な安定性の問題を引き起こす。 大量ファイルを非同期で削除する機能は、スレッドを起動してデータファイルを非同期で削除します。 DROP TABLE文を実行してデータを削除すると、対応するデータファイルが一時ファイルとして保存され、スレッドはデータファイルを非同期でスムーズに削除し始めます。
手順
次のステートメントを実行して、RDSインスタンスのグローバル変数設定を表示します。
グローバルなバリエーションを表示 '% data_file_purge %';
次のコードは、クエリ結果のサンプルを示しています。
+----------------------------------------+-------+ | Variable_name | 値 | +----------------------------------------+-------+ | innodb_data_file_purge | ON | | innodb_data_file_purge_all_at_shutdown | オフ | | innodb_data_file_purge_dir | | | innodb_data_file_purge_immediate | オフ | | innodb_data_file_purge_interval | 100 | | innodb_data_file_purge_max_size | 128 | | innodb_print_data_file_purge_process | オフ | +----------------------------------------+-------+
次の表に、グローバル変数を示します。
変数
説明
innodb_data_file_purge
ラージファイルの非同期パージ機能を有効にするかどうかを指定します。
innodb_data_file_purge_all_at_shutdown
RDSインスタンスが存在するホストがシャットダウンされたときにすべてのファイルを削除するかどうかを指定します。
innodb_data_file_purge_dir
一時ファイルを格納するディレクトリ。
innodb_data_file_purge_immediate
データファイルを保持し、データファイルのリンクのみを取り消すかどうかを指定します。
innodb_data_file_purge_interval
ファイルが削除される間隔。 単位:ミリ秒。
innodb_data_file_purge_max_サイズ
削除できる1つのファイルの最大サイズ。 単位:MB。
innodb_print_data_file_purge_プロセス
ファイル削除の進行状況を示す進行状況バーを表示するかどうかを指定します。
説明次の設定を使用することを推奨します。
セットグローバルINNODB_DATA_FILE_PURGE = on; グローバルINNODB_DATA_FILE_PURGE_INTERVAL = 100を設定します。グローバルINNODB_DATA_FILE_PURGE_MAX_SIZE = 128;
次の文を実行して、ファイルの削除の進行状況を表示します。
information_schema.innodb_purge_filesから * を選択します。
次のコードは、クエリ結果のサンプルを示しています。
------- --------------------- -------------------- -------------- ------------------------- --------------------------- | log_id | start_time | original_path | original_size | temporary_path | current_size | -------- --------------------- -------------------- -------------- ------------------------- ------------------------ | 0 | 2021-05-14 14:40:01 |. /file_purge/t.ibd | 146800640 | 。/#FP_210514 14:40:01_9 | 79691776 | -------- --------------------- -------------------- --------------- ------------------------- --------------------------
次の表に、戻り結果のパラメーターを示します。
パラメーター
説明
start_time
削除が開始される時点。
original_path
データファイルが削除される前に保存されているフォルダの元のパス。
original_size
削除される前のデータファイルの元のサイズ。 単位:バイト
temporary_path
一時ファイルが削除されたときに格納されるフォルダのパス。
current_size
削除する一時ファイルのサイズ。 単位:バイト