ALTER REPLICATION GROUP

既存の 複製グループ のプロパティを変更します。

ソースアカウントから、次のアクションを実行できます。

  • 複製グループの名前を変更する。

  • 複製が有効になっている指定されたオブジェクト型のリストをリセットする。

  • セカンダリ複製グループの自動更新の複製スケジュールを設定または更新する。

  • 次の型のアカウントオブジェクトを複製グループに追加したり、複製グループから削除したりする。

    • データベース

    • 共有

    • セキュリティの統合

    • API 統合

    • 特定の種類の通知統合(統合複製 を参照)

  • 複製が有効になっているターゲットアカウントを追加または削除する。

  • データベースまたは共有をある複製グループから別の複製グループに移動する。

ターゲットアカウントから、次のアクションを実行できます。

  • ソースアカウントからターゲットアカウントのオブジェクトを更新する。

  • スケジュールされた複製を一時停止する。

  • スケジュールされた複製を再開する。

こちらもご参照ください。

CREATE REPLICATION GROUPDROP REPLICATION GROUPSHOW REPLICATION GROUPS

構文

ソースアカウント

ALTER REPLICATION GROUP [ IF EXISTS ] <name> RENAME TO <new_name>

ALTER REPLICATION GROUP [ IF EXISTS ] <name> SET
  [ OBJECT_TYPES = <object_type> [ , <object_type> , ... ] ]
  [ REPLICATION_SCHEDULE = '{ <num> MINUTE | USING CRON <expr> <time_zone> }' ]

ALTER REPLICATION GROUP [ IF EXISTS ] <name> SET
  OBJECT_TYPES = INTEGRATIONS [ , <object_type> , ... ] ]
  ALLOWED_INTEGRATION_TYPES = <integration_type_name> [ , <integration_type_name> ... ] ]
  [ REPLICATION_SCHEDULE = '{ <num> MINUTE | USING CRON <expr> <time_zone> }' ]

ALTER REPLICATION GROUP [ IF EXISTS ] <name>
  ADD <db_name> [ , <db_name> ,  ... ] TO ALLOWED_DATABASES

ALTER REPLICATION GROUP [ IF EXISTS ] <name>
  MOVE DATABASES <db_name> [ , <db_name> ,  ... ] TO REPLICATION GROUP <move_to_rg_name>

ALTER REPLICATION GROUP [ IF EXISTS ] <name>
  REMOVE <db_name> [ , <db_name> ,  ... ] FROM ALLOWED_DATABASES

ALTER REPLICATION GROUP [ IF EXISTS ] <name>
  ADD <share_name> [ , <share_name> ,  ... ] TO ALLOWED_SHARES

ALTER REPLICATION GROUP [ IF EXISTS ] <name>
  MOVE SHARES <share_name> [ , <share_name> ,  ... ] TO REPLICATION GROUP <move_to_rg_name>

ALTER REPLICATION GROUP [ IF EXISTS ] <name>
  REMOVE <share_name> [ , <share_name> ,  ... ] FROM ALLOWED_SHARES

ALTER REPLICATION GROUP [ IF EXISTS ] <name>
  ADD <org_name>.<target_account_name> [ , <org_name>.<target_account_name> ,  ... ] TO ALLOWED_ACCOUNTS
  [ IGNORE EDITION CHECK ]

ALTER REPLICATION GROUP [ IF EXISTS ] <name>
  REMOVE <org_name>.<target_account_name> [ , <org_name>.<target_account_name> ,  ... ] FROM ALLOWED_ACCOUNTS
Copy

ターゲットアカウント

ALTER REPLICATION GROUP [ IF EXISTS ] <secondary_name> REFRESH

ALTER REPLICATION GROUP [ IF EXISTS ] <secondary_name> SUSPEND

ALTER REPLICATION GROUP [ IF EXISTS ] <secondary_name> RESUME
Copy

パラメーター

ソースアカウント

name

複製グループの識別子を指定します。

RENAME TO new_name

new_name

複製グループの新しい識別子を指定します。識別子が別の複製またはフェールオーバーにすでに配置されている場合、新しい識別子は使用できません。

詳細については、 識別子の要件 をご参照ください。

SET ...

複製グループに設定する1つ(または複数)のプロパティを指定します(空白、コンマ、または改行で区切り)。設定できるプロパティの詳細については、 CREATE REPLICATION GROUP をご参照ください。

ADD db_name [ , db_name ,  ... ] TO ALLOWED_DATABASES

複製が有効になっているデータベースのリストに追加する、データベースのコンマ区切りリストを指定します。データベースを追加するには、指定されたオブジェクト型のリストに DATABASES を含める必要があります。オブジェクト型のリストにまだ DATABASES が含まれていない場合は、追加する必要があります。

db_name

データベースの識別子を指定します。

MOVE DATABASES db_name [ , db_name ,  ... ] TO REPLICATION GROUP move_to_rg_name

ある複製グループから別の複製グループに移動する、データベースのコンマ区切りリストを指定します。データベースの移動先の複製グループには、指定されたオブジェクト型のリストに DATABASES を含める必要があります。

db_name

データベースの識別子を指定します。

move_to_rg_name

データベースの移動先の複製グループに対する識別子を指定します。

REMOVE db_name [ , db_name ,  ... ] FROM ALLOWED_DATABASES

複製が有効になっているデータベースのリストから、削除するデータベースのコンマ区切りリストを指定します。

ADD share_name [ , share_name ,  ... ] TO ALLOWED_SHARES

複製用の共有のリストに追加する、コンマで区切られた共有のリストを指定します。共有を追加するには、指定されたオブジェクト型のリストに SHARES を含める必要があります。オブジェクト型のリストにまだ SHARES が含まれていない場合は、追加する必要があります。

share_name

共有の識別子を指定します。

MOVE SHARES share_name [ , share_name ,  ... ] TO REPLICATION GROUP move_to_rg_name

ある複製グループから別の複製グループに移動する、共有のコンマ区切りリストを指定します。共有の移動先の複製グループには、指定されたオブジェクト型のリストに SHARES を含める必要があります。

share_name

共有の識別子を指定します。

move_to_rg_name

共有の移動先の複製グループに対する識別子を指定します。

REMOVE share_name [ , share_name ,  ... ] FROM ALLOWED_SHARES

複製が有効になっている共有のリストから、削除する共有のコンマ区切りリストを指定します。

ADD org_name.target_account_name [ , org_name.target_account_name ,  ... ] TO ALLOWED_ACCOUNTS

ソースアカウント内にある指定されたオブジェクトのターゲットアカウントへの複製を有効にするために、プライマリ複製グループに追加するターゲットアカウントのコンマ区切りリストを指定します。

org_name

Snowflake組織の名前。

target_account_name

指定されたオブジェクトの複製を有効にするターゲットアカウント。

REMOVE org_name.target_account_name [ , org_name.target_account_name ,  ... ] FROM ALLOWED_ACCOUNTS

ソースアカウント内にある指定されたオブジェクトのターゲットアカウントへの複製を無効にするために、プライマリ複製グループから削除するターゲットアカウントのコンマ区切りリストを指定します。

org_name

Snowflake組織の名前。

target_account_name

指定されたオブジェクトの複製を無効にするターゲットアカウント。

IGNORE EDITION CHECK

次のいずれかのシナリオで、下位エディションのアカウントにオブジェクトを複製できるようにします。

  • データベースのみおよび/または共有オブジェクトがあるプライマリ複製グループはBusiness Critical(またはそれ以上)のアカウントにあるが、複製を承認された1つ以上のアカウントは下位エディションにある。Business Critical Editionは、非常に機密性の高いデータを有するSnowflakeアカウントを対象としています。

  • 任意の オブジェクトタイプ があるプライマリ複製グループがBusiness Critical(またはそれ以上)のアカウントにあり、 HIPAA および HITRUST 規制に従ってアカウントに PHI データを格納するための署名済みビジネスアソシエイト契約が整っている。しかし、Business Critical(またはそれ以上)のアカウントであるかどうかにかかわりなく、複製が承認された1つ以上のアカウントに対してはそのような契約がない。

Business Critical(またはそれ以上)のアカウントのアカウント管理者が機密データを下位エディションのアカウントに誤って複製することを防ぐため、両方のシナリオともデフォルトで禁止されています。

ターゲットアカウント

secondary_name

複製グループの識別子を指定します。

REFRESH

ソースアカウントからターゲット(現在の)アカウントのオブジェクトを更新します。

SUSPEND

セカンダリ複製グループのスケジュールされた更新を一時停止します(プライマリ複製グループが、 REPLICATION_SCHEDULE プロパティを使用してスケジュールされた更新を自動的に設定した場合)。

注釈

スケジュールされた複製を一時停止しても、現在進行中の更新操作は一時停止されません。現在の更新が完了した後に追加の更新がスケジュールされないように、スケジュールを一時停止します。

RESUME

セカンダリ複製グループのスケジュールされた更新を再開します(プライマリ複製グループが、 REPLICATION_SCHEDULE プロパティを使用してスケジュールされた更新を自動的に設定した場合)。

使用上の注意

  • 次の最小限の権限が必要です。

    • ALTER REPLICATION GROUP ... REFRESH を使用してセカンダリ複製グループを更新するには、複製グループに対する OWNERSHIP または REPLICATE 権限のいずれかがロールに必要です。

    • 複製グループにその他の変更を加える、この SQL コマンドを実行できるのは、グループに対して OWNERSHIP 権限のあるロールを持つユーザーのみです。

    • データベースを複製グループに追加するには、データベースに対する MONITOR 権限がアクティブなロールに必要です。

    • 複製グループに共有を追加するには、共有に対する OWNERSHIP 権限がアクティブなロールに必要です。

  • アカウント内のフェールオーバーグループと複製グループの識別子は一意にする必要があります。

  • データベースと共有以外のオブジェクトは、同じ複製グループに属している必要があります。

  • データベースは、1つの複製グループまたはフェールオーバーグループにのみ追加できます。

  • データベースまたは共有を1つの複製グループ(移動元グループ)から別の複製グループ(移動先グループ)に移動するには、

    • 両方のグループを同じ型の REPLICATION GROUP にする必要があります。

    • 移動元グループの最後のデータベースが別のグループに移動された場合、移動元グループの allowed_databases プロパティは NULL に設定されます。同じ動作が共有にも当てはまります。

    • 移動先グループの object_types リストに移動先のオブジェクト型(databases または shares)がない場合は、オブジェクトを移動する前に、移動先グループに明示的に追加する必要があります。

  • 複製が有効になっている組織内のアカウントのリストを取得するには、 SHOW REPLICATION ACCOUNTS コマンドを使用します。

  • 組織内の複製グループのリストを取得するには、 SHOW REPLICATION GROUPS コマンドを使用します。 allowed_accounts 列には、ソースアカウントからの複製が有効になっているすべてのターゲットアカウントがリストされます。

  • メタデータについて、

    注意

    Snowflakeサービスを使用する場合、お客様は、個人データ(ユーザーオブジェクト向け以外)、機密データ、輸出管理データ、またはその他の規制されたデータがメタデータとして入力されていないことを確認する必要があります。詳細については、 Snowflakeのメタデータフィールド をご参照ください。

ソースアカウントから実行

ソースアカウントからの指定されたオブジェクトの複製が有効になっている、ターゲットアカウントのリストに myorg.myaccount3 を追加します。

ALTER REPLICATION GROUP myrg ADD myorg.myaccount3 TO ALLOWED_ACCOUNTS;
Copy

ソースアカウントで複製するオブジェクト型リストをリセットします。

ALTER REPLICATION GROUP myrg SET
  OBJECT_TYPES = DATABASES, SHARES;
Copy

複製が有効になっているデータベースのリストにデータベース db1 を追加します。

ALTER REPLICATION GROUP myrg
  ADD db1 to ALLOWED_DATABASES;
Copy

複製が有効になっている共有のリストに共有 s2 を追加します。

ALTER REPLICATION GROUP myrg
  ADD s2 TO ALLOWED_SHARES;
Copy

データベース db1 を別の複製グループ myrg2 に移動します。

ALTER REPLICATION GROUP myrg
  MOVE DATABASES db1 TO REPLICATION GROUP myrg2;
Copy

スケジュールされた更新間隔を15分に設定します。

ALTER REPLICATION GROUP myrg SET
  REPLICATION_SCHEDULE = '15 MINUTE';
Copy

ターゲットアカウントから実行

ターゲットアカウントの複製グループ myrg のオブジェクトを更新します。

ALTER REPLICATION GROUP myrg REFRESH;
Copy

自動更新を一時停止します。

ALTER REPLICATION GROUP myrg SUSPEND;
Copy