説明
このステートメントは、マテリアライズドビューログ(Materialized View Log、mlog)のプロパティを変更するために使用されます。
説明
OceanBaseデータベースV4.3.5では、V4.3.5 BP1バージョンから ALTER MATERIALIZED VIEW LOG ステートメントがサポートされています。
権限要件
ALTER MATERIALIZED VIEW LOG ステートメントを実行するには、現在のユーザーがベーステーブル(通常のテーブルまたはマテリアライズドビュー)に対する ALTER 権限を持っている必要があります。OceanBaseデータベースの権限の詳細については、MySQLモードの権限分類を参照してください。
構文
ALTER MATERIALIZED VIEW LOG ON [database.]table_name alter_mlog_action_list;
alter_mview_action_list:
alter_mlog_action [, alter_mlog_action ...]
alter_mlog_action:
parallel_clause
| PURGE [[START WITH expr] [NEXT expr]]
| LOB_INROW_THRESHOLD [=] integer
parallel_clause:
NOPARALLEL
| PARALLEL integer
パラメータの説明
| パラメータ | 説明 |
|---|---|
| database. | オプション。マテリアライズドビューが存在するデータベースを指定します。database. を省略した場合、デフォルトでベーステーブルは現在のセッションが接続しているデータベースになります。 |
| table_name | マテリアライズドビューログに対応するベーステーブル名を指定します。 |
| alter_mlog_action_list | マテリアライズドビューログに対して実行可能な変更操作のリストを示します。複数の操作を同時に指定することができ、英語のカンマ(,)で区切ります。詳細については、以下のalter_mlog_actionを参照してください。 |
alter_mlog_action
parallel_clause:マテリアライズドビューのログテーブルの並列度を変更します。値は以下のとおりです:NOPARALLEL:並列度は1で、デフォルト設定です。PARALLEL integer:並列度を指定します。integerの値は1以上の整数です。
例:
ALTER MATERIALIZED VIEW LOG ON tbl1 PARALLEL 5;PURGE [[START WITH expr] [NEXT expr]]:マテリアライズドビューのログのバックグラウンドクリーンアップタスクの時間間隔を変更します。[START WITH expr]:オプション。マテリアライズドビューのログの最初のクリーンアップ時間を示します。[NEXT expr]:オプション。次回のマテリアライズドビューのログのクリーンアップ時間を示します。次回のマテリアライズドビューのログのクリーンアップ時間を設定するために使用されます。
注意
START WITH exprとNEXT exprの2つの時間式が将来の日付に設定されていることを確認してください。そうでない場合、エラーが発生します。現在のタイムゾーン時刻を表すには、
sysdate()を使用することを推奨します。時間式の例は以下のとおりです:START WITH sysdate() NEXT sysdate() + INTERVAL 1 DAY上記の句は、現在の時間(
sysdate())から始まり、1日ごとに期限切れのマテリアライズドビューのログレコードをクリーンアップすることを示します。例:
ALTER MATERIALIZED VIEW LOG ON tbl1 PURGE START WITH sysdate();ALTER MATERIALIZED VIEW LOG ON tbl1 PURGE NEXT sysdate() + INTERVAL 1 DAY;ALTER MATERIALIZED VIEW LOG ON tbl1 PURGE START WITH sysdate() NEXT sysdate() + INTERVAL 1 DAY;LOB_INROW_THRESHOLD [=] integer:マテリアライズドビューのログのLOBインラインストレージ長のしきい値を変更します。値の増加のみサポートされています。説明
LOB_INROW_THRESHOLDのデフォルト値は8KBです。mlogのLOB_INROW_THRESHOLDのデフォルト値は、システム変数 ob_default_lob_inrow_threshold によって制御されません。例:
ALTER MATERIALIZED VIEW LOG ON tbl1 LOB_INROW_THRESHOLD 10000;