説明
ALTER SESSION 文は、現在のセッションのプロパティを変更するために使用します。
説明
ALTER SESSION は複数の機能を持つ文に対応しており、OceanBase データベースでは現在以下の 4 種類をサポートしています:
- 現在のセッションが接続しているデータベースを切り替えます。
- 現在のセッションの分離レベルを変更します。
- セッション変数を設定します。同じ文で複数の変数を設定することも可能です。
QUERYまたはDMLの並列実行能力を設定します。
構文
ALTER SESSION
{
SET {
CURRENT_SCHEMA = schema_name
| ISOLATION_LEVEL = { READ COMMITTED | SERIALIZABLE }
| variable_name = variable_value[,variable_name = variable_value...]
}
| { ENABLE | DISABLE } PARALLEL { DML | QUERY | DDL }
| FORCE PARALLEL { DML | QUERY | DDL } integer
}
パラメータの説明
パラメータ |
説明 |
|---|---|
| SET句 | セッションレベルのパラメータを設定します。 |
| CURRENT_SCHEMA = schema_name | 現在のセッションのデフォルトスキーマをschema_nameに設定します。後続のクエリでスキーマが指定されていない場合、このスキーマがデフォルトで使用されます。 |
| ISOLATION_LEVEL | 現在のセッションのトランザクション分離レベルを設定します |
| variable_name = variable_value[,variable_name = variable_value...]; | 設定するSession変数名と値を指定します。複数の変数を設定する場合、変数間にカンマは不要です。 |
| * { ENABLE | DISABLE | FORCE } PARALLEL | QUERYまたはDMLの並列実行機能を設定します: * ENABLE:デフォルトでは、セッション上の並列度はテーブルのDOP値に基づいて決定されます
ALTER SESSIONで指定した並列度 > テーブルレベルの並列度。 |
例
ユーザーを
user1モードに切り替えます。-- ユーザーの作成 obclient> CREATE USER user1 IDENTIFIED BY yourpassword; obclient> ALTER SESSION SET CURRENT_SCHEMA = user1;セッション変数
recyclebin、sqlWarnings、tx_isolationの値を変更します。obclient> ALTER SESSION SET recyclebin = 'on' sql_warnings = 'on' tx_isolation = 'read-committed';セッション上で
QUERYとDMLの並列実行を設定します。/*並列度3で並列実行*/ obclient> ALTER SESSION FORCE PARALLEL QUERY PARALLEL 3; /*直列実行*/ obclient> ALTER SESSION FORCE PARALLEL QUERY PARALLEL 1; /*PDMLパスを有効化し、並列度3で並列実行*/ obclient> ALTER SESSION FORCE PARALLEL DML PARALLEL 3; /*直列実行*/ obclient> ALTER SESSION FORCE PARALLEL DML PARALLEL 1;