このページは機械翻訳したものです。
コンポーネントは、使用する前にサーバーにロードする必要があります。 MySQL は、実行時の手動コンポーネントロードおよびサーバー起動時の自動ロードをサポートしています。
コンポーネントがロードされている間、セクション5.5.2「コンポーネント情報の取得」 で説明されているように、コンポーネントに関する情報を使用できます。
INSTALL COMPONENT および UNINSTALL COMPONENT SQL ステートメントを使用すると、コンポーネントのロードおよびアンロードが可能になります。 例:
INSTALL COMPONENT 'file://component_validate_password';
UNINSTALL COMPONENT 'file://component_validate_password';
ローダーサービスは、コンポーネントのロードおよびアンロードを処理し、ロードされたコンポーネントを mysql.component システムテーブルに登録します。
コンポーネント操作の SQL ステートメントは、次のようにサーバー操作および mysql.component システムテーブルに影響します:
INSTALL COMPONENTは、コンポーネントをサーバーにロードします。 コンポーネントがすぐにアクティブになります。 ローダーサービスでは、ロードされたコンポーネントもmysql.componentシステムテーブルに登録されます。 その後のサーバーの再起動では、ローダーサービスは、起動シーケンス中にmysql.componentにリストされているコンポーネントをすべてロードします。 これは、サーバーが--skip-grant-tablesオプションを使用して起動された場合でも発生します。UNINSTALL COMPONENTによってコンポーネントが非アクティブ化され、サーバーからアンロードされます。 ローダーサービスは、mysql.componentシステムテーブルからコンポーネントの登録を解除して、その後の再起動のためにサーバーが起動シーケンス中にコンポーネントをロードしないようにします。
サーバープラグインの対応する INSTALL PLUGIN ステートメントと比較すると、コンポーネントの INSTALL COMPONENT ステートメントには、コンポーネントに名前を付けるためのプラットフォーム固有のファイル名接尾辞を知る必要がないという大きな利点があります。 つまり、特定の INSTALL COMPONENT ステートメントをプラットフォーム間で均一に実行できます。
コンポーネントをインストールすると、関連するユーザー定義関数 (UDF) も自動的にインストールされる場合があります。 その場合、アンインストール時にコンポーネントによってそれらの UDF も自動的にアンインストールされます。