配置ポリシーを作成する

CREATE PLACEMENT POLICYは、後でテーブル、パーティション、またはデータベース スキーマに割り当てることができる名前付きの配置ポリシーを作成するために使用されます。

あらすじ

CreatePolicyStmt
CREATEPLACEMENTPOLICYIfNotExistsPolicyNamePlacementOptionList
PolicyName
Identifier
PlacementOptionList
PlacementOptionPlacementOptionListPlacementOptionPlacementOptionList,PlacementOption
PlacementOption
CommonPlacementOptionSugarPlacementOptionAdvancedPlacementOption
CommonPlacementOption
FOLLOWERSEqOptLengthNum
SugarPlacementOption
PRIMARY_REGIONEqOptstringLitREGIONSEqOptstringLitSCHEDULEEqOptstringLit
AdvancedPlacementOption
LEARNERSEqOptLengthNumCONSTRAINTSEqOptstringLitLEADER_CONSTRAINTSEqOptstringLitFOLLOWER_CONSTRAINTSEqOptstringLitLEARNER_CONSTRAINTSEqOptstringLit

ノート:

クラスターで使用可能なリージョンを確認するには、 SHOW PLACEMENT LABELSを参照してください。

利用可能なリージョンが表示されない場合は、TiKV インストールでラベルが正しく設定されていない可能性があります。

CREATE PLACEMENT POLICY p1 PRIMARY_REGION="us-east-1" REGIONS="us-east-1,us-west-1" FOLLOWERS=4; CREATE TABLE t1 (a INT) PLACEMENT POLICY=p1; SHOW CREATE PLACEMENT POLICY p1;
Query OK, 0 rows affected (0.08 sec) Query OK, 0 rows affected (0.10 sec) +--------+---------------------------------------------------------------------------------------------------+ | Policy | Create Policy | +--------+---------------------------------------------------------------------------------------------------+ | p1 | CREATE PLACEMENT POLICY `p1` PRIMARY_REGION="us-east-1" REGIONS="us-east-1,us-west-1" FOLLOWERS=4 | +--------+---------------------------------------------------------------------------------------------------+ 1 row in set (0.00 sec)

MySQL の互換性

このステートメントは、MySQL 構文に対する TiDB 拡張です。

こちらもご覧ください