関連パラメーターを設定することで、データ定義言語 (DDL) 実行エンジンの動作を変更できます。 このトピックでは、DDL実行エンジンに関連するパラメーターを設定する方法について説明します。
パラメーター
必要に応じて、PolarDB-X 1.0コンソールで次のパラメーターを設定できます。
| パラメーター | 影響範囲 | デフォルト値 |
| ENABLE_ASYNC_DDL | データベースとステートメント | TRUE (有効) |
| PURE_ASYNC_DDL_MODE | データベース、セッション、およびステートメント | FALSE (無効) |
| MAX_TABLE_PARTITIONS_PER_DB | データベースとステートメント | 128 |
ENABLE_ASYNC_DDL
- 説明
- このパラメーターはデフォルトでTRUEに設定され、新しいDDL実行エンジンが使用されていることを示します。
- このパラメーターをFALSEに設定した場合、PolarDB-X 1.0はv5.3.12より前のバージョンのDDL実行エンジンを使用し、PURE_ASYNC_DDL_MODEおよびMAX_TABLE_PARTITIONS_PERパラメーターは有効になりません。 このパラメーターをFALSEに設定するかどうかを確認するために、チケットを起票することを推奨します。
- Usage
- データベースレベル: PolarDB-X 1.0コンソールの [パラメーター設定] ページでこのパラメーターを設定します。 設定した値は、データベース全体に対して有効になります。 詳細は、「パラメーターの設定」をご参照ください。
- ステートメントレベル: DDLステートメントの先頭に
/* + TDDL:cmd_extra(ENABLE_ASYNC_DDL=FALSE)*/などのヒントを追加して、このパラメーターがこのステートメントに対してのみ有効になるようにします。
PURE_ASYNC_DDL_MODE
- 説明
- このパラメーターは、
ENABLE_ASYNC_DDLがTRUEに設定されている場合にのみ有効です。 - このパラメーターをFALSEに設定すると、クライアントはPolarDB-X 1.0に接続して、同期ブロッキングモードでDDLステートメントを実行します。 このようにして、クライアントはDDLジョブを完了した後に応答を返します。 クライアントがPolarDB-X 1.0から切断された後、進行中のDDLジョブが中断される可能性があります。
- このパラメーターをTRUEに設定すると、クライアントはPolarDB-X 1.0に接続して非同期モードでDDLステートメントを実行します。 このようにして、DDL要求が受信されると、クライアントは応答を返し、DDLジョブはバックグラウンドで実行され続けます。 SHOW DDLステートメントを実行して、DDLジョブのステータスを表示できます。 このステートメントの使用方法の詳細については、「ジョブ管理ステートメント」をご参照ください。
- クライアントとPolarDB-X 1.0間の予期しない切断を防ぐために、非同期モードを有効にする必要がある場合は、このパラメーターをTRUEに設定することを推奨します。 それ以外の場合は、このパラメーターをデフォルト値 (FALSE) に設定して、PolarDB-X DRDSのDDL操作がApsaraDB RDS for MySQLインスタンスのDDL操作と互換性があるようにすることを推奨します。
- このパラメーターは、
- Usage
- データベースレベル: PolarDB-X 1.0コンソールの [パラメーター設定] ページでこのパラメーターを設定します。 設定した値は、データベース全体に対して有効になります。 詳細は、「パラメーターの設定」をご参照ください。
- セッションレベル:
- クライアントがPolarDB-X 1.0に接続したら、
set PURE_ASYNC_DDL_MODE=trueまたはset PURE_ASYNC_DDL_MODE=1ステートメントを実行して、このセッションの非同期モードを有効にします。 set PURE_ASYNC_DDL_MODE=falseまたはset PURE_ASYNC_DDL_MODE=0文を実行して、このセッションのデフォルトの同期モードを復元します。
- クライアントがPolarDB-X 1.0に接続したら、
- ステートメントレベル: DDLステートメントの先頭に
/* + TDDL:cmd_extra(PURE_ASYNC_DDL_MODE=TRUE)*/などのヒントを追加して、このパラメーターがこのステートメントに対してのみ有効になるようにします。
MAX_TABLE_PARTITIONS_PER_DB
- 説明
- このパラメーターは、
ENABLE_ASYNC_DDLがTRUEに設定されている場合にのみ有効です。 - 1つの物理データベース内のテーブルシャードの数がこのパラメーターで指定された制限を超えると、DDLジョブは停止し、エラーが報告されます。 説明 このパラメーターの値の範囲は1〜65535です。 デフォルト値は 128 です。
- このパラメーターは、
- Usage
- データベースレベル: PolarDB-X 1.0コンソールの [パラメーター設定] ページでこのパラメーターを設定します。 設定した値は、データベース全体に対して有効になります。 詳細は、「パラメーターの設定」をご参照ください。
- ステートメントレベル: DDLステートメントの先頭に
/* + TDDL:cmd_extra(MAX_TABLE_PARTITIONS_PER_DB=400)*/などのヒントを追加して、このパラメーターがこのステートメントに対してのみ有効になるようにします。