CREATE SERVERserver_nameFOREIGN DATA WRAPPER wrapper_name OPTIONS (option ...)option: { HOSTcharacter-literal| DATABASEcharacter-literal| USERcharacter-literal| PASSWORDcharacter-literal| SOCKETcharacter-literal| OWNERcharacter-literal| PORTnumeric-literal}
このステートメントは FEDERATED ストレージ エンジンと共に利用する為のサーバの定義を作成します。CREATE SERVER ステートメントは mysql データベース内の servers テーブル内の新しい行を作成します。
server_name はサーバの固有の参照でなければいけません。サーバ定義は、サーバの領域内では広範囲です。特定のデータ ベースにサーバ定義を適応するのは不可能です。server_name は最長63文字の長さを持ち(63文字以上の名前は静かに切り捨てられる)、大文字と小文字を区別しません。単一引用句を利用して名前を指定します。
wrapper_name は mysql となる必要があり、そして1つの引用句を利用して引用されます。wrapper_name のその他の値は現在はサポートされていません。
各 option に対しては、文字直定数か数値定数のどちらかを指定しなければいけません。文字直定数は UTF 8で、最高64文字の長さとデフォルトを空の文字列にサポートします。文字列定数は静かに64文字まで切り捨てられます。数値定数は0から9999の間の数字である必要があり、デフォルト値は0です。
CREATE SERVER ステートメントを利用する為に特別な権限は必要ありません。
CREATE SERVER ステートメントは mysql.server テーブル内に FEDERATED テーブルを作成する時に CREATE TABLE ステートメントと共に利用する事ができるエントリを作成します。指定するオプションは mysql.server テーブル内にカラムを投入する為に利用されます。テーブルカラムは Server_name、Host、Db、Username、Password、Port そして Socket です。
例:
CREATE SERVER s FOREIGN DATA WRAPPER mysql OPTIONS (USER 'Remote', HOST '106', DATABASE 'test');
テーブルに格納されたデータは FEDERATED テーブルへの接続を作成する時に利用できます。
CREATE TABLE t (s1 INT) ENGINE=FEDERATED CONNECTION='s';
更なる情報については 項13.9. 「FEDERATED ストレージエンジン」 を参照してください。
CREATE SERVER は自動コミットを引き起こしません。