RESET PERSIST [[IF EXISTS] system_var_name]
RESET PERSIST
は、永続化されたグローバルシステム変数設定をデータディレクトリの mysqld-auto.cnf
オプションファイルから削除します。 永続化されたシステム変数を削除すると、その変数はサーバーの起動時に mysqld-auto.cnf
から初期化されなくなります。 システム変数および mysqld-auto.cnf
ファイルの永続化の詳細は、セクション5.1.9.3「永続化されるシステム変数」 を参照してください。
RESET PERSIST
に必要な権限は、削除するシステム変数のタイプによって異なります:
動的システム変数の場合、このステートメントには
SYSTEM_VARIABLES_ADMIN
権限 (または非推奨のSUPER
権限) が必要です。読取り専用システム変数の場合、このステートメントには
SYSTEM_VARIABLES_ADMIN
およびPERSIST_RO_VARIABLES_ADMIN
権限が必要です。
セクション5.1.9.1「システム変数権限」を参照してください。
変数名と IF EXISTS
句が存在するかどうかに応じて、RESET PERSIST
ステートメントの形式は次のようになります:
-
mysqld-auto.cnf
からすべての永続変数を削除するには、システム変数に名前を付けずにRESET PERSIST
を使用します:RESET PERSIST;
mysqld-auto.cnf
に両方の種類の変数が含まれている場合は、動的システム変数と読取り専用システム変数の両方を削除する権限が必要です。 -
mysqld-auto.cnf
から特定の永続変数を削除するには、ステートメントで名前を付けます:RESET PERSIST system_var_name;
これには、プラグインが現在インストールされていない場合でも、プラグインシステム変数が含まれます。 変数がファイルに存在しない場合は、エラーが発生します。
-
mysqld-auto.cnf
から特定の永続変数を削除し、ファイルに変数が存在しない場合にエラーではなく警告を生成するには、前の構文にIF EXISTS
句を追加します:RESET PERSIST IF EXISTS system_var_name;
RESET PERSIST
は、persisted_globals_load
システム変数の値の影響を受けません。
テーブルの内容は mysqld-auto.cnf
ファイルの内容に対応しているため、RESET PERSIST
はパフォーマンススキーマ persisted_variables
テーブルの内容に影響します。 一方、RESET PERSIST
は変数値を変更しないため、サーバーが再起動されるまでパフォーマンススキーマ variables_info
テーブルの内容には影響しません。
ほかのサーバー操作の状態をクリアする RESET
ステートメントのバリアントについては、セクション13.7.8.6「RESET ステートメント」 を参照してください。