MySQL 8.0 リファレンスマニュアル


13.7.5 CLONE ステートメント

CLONE clone_action

clone_action: {
    LOCAL DATA DIRECTORY [=] 'clone_dir';
  | INSTANCE FROM 'user'@'host':port
    IDENTIFIED BY 'password'
    [DATA DIRECTORY [=] 'clone_dir']
    [REQUIRE [NO] SSL]
}

CLONE ステートメントは、ローカルまたはリモートの MySQL サーバーインスタンスからデータをクローニングするために使用されます。 CLONE 構文を使用するには、クローンプラグインをインストールする必要があります。 セクション5.6.7「クローンプラグイン」を参照してください。

CLONE LOCAL DATA DIRECTORY 構文は、ローカルの MySQL データディレクトリから、MySQL サーバーインスタンスが実行されているのと同じサーバーまたはノード上のディレクトリにデータをクローニングします。 'clone_dir'ディレクトリは、データのクローニング先のローカルディレクトリのフルパスです。 絶対パスが必要です。 指定されたディレクトリは存在してはいけませんが、指定されたパスは存在するパスである必要があります。 MySQL サーバーには、指定されたディレクトリを作成するために必要な書込みアクセス権が必要です。 詳細は、セクション5.6.7.2「ローカルでのデータのクローニング」を参照してください。

CLONE INSTANCE 構文は、リモート MySQL サーバーインスタンス (ドナー) からデータをクローニングし、クローニング操作が開始された MySQL インスタンス (受信者) に転送します。

  • user は、ドナー MySQL サーバーインスタンス上のクローンユーザーです。

  • host は、ドナー MySQL サーバーインスタンスの hostname アドレスです。 インターネットプロトコルバージョン 6 (IPv6) アドレス形式はサポートされていません。 かわりに、IPv6 アドレスのエイリアスを使用できます。 IPv4 アドレスはそのまま使用できます。

  • port は、ドナー MySQL サーバーインスタンスの port 番号です。 (mysqlx_port で指定された X プロトコル ポートはサポートされていません。 MySQL Router を介したドナー MySQL サーバーインスタンスへの接続もサポートされていません。)

  • IDENTIFIED BY 'password'は、ドナー MySQL サーバーインスタンス上のクローンユーザーのパスワードを指定します。

  • DATA DIRECTORY [=] 'clone_dir'は、クローニングするデータの受信者上のディレクトリを指定するために使用するオプションの句です。 このオプションは、受信者データディレクトリ内の既存のデータを削除しない場合に使用します。 絶対パスが必要であり、ディレクトリが存在していない必要があります。 MySQL サーバーには、ディレクトリの作成に必要な書込みアクセス権が必要です。

    オプションの DATA DIRECTORY [=] 'clone_dir'句を使用しない場合、クローニング操作では、受信者データディレクトリ内の既存のデータが削除され、クローニングされたデータに置き換えられ、その後サーバーが自動的に再起動されます。

  • [REQUIRE [NO] SSL]は、クローニングされたデータをネットワーク経由で転送するときに、暗号化された接続を使用するかどうかを明示的に指定します。 明示的な指定が満たされない場合は、エラーが返されます。 SSL 句が指定されていない場合、クローンはデフォルトで暗号化された接続を確立しようとし、セキュアな接続試行が失敗した場合はセキュアでない接続にフォールバックします。 暗号化データをクローニングする場合は、この句が指定されているかどうかに関係なく、セキュアな接続が必要です。 詳細は、クローニング用の暗号化された接続の構成を参照してください。

リモート MySQL サーバーインスタンスからのデータのクローニングの詳細は、セクション5.6.7.3「リモートデータのクローニング」 を参照してください。


関連キーワード:  ステートメント, CREATE, TABLE, データ, サーバー, DROP, サブクエリー, インスタンス, ディレクトリ, FUNCTION