説明
この変数はV1.4バージョンから導入されました。
機能の概要
ob_route_policyは、OBServerノード内でデータレプリカを選択するためのルーティングポリシーを設定します。
権限要件
変数の確認
グローバルレベル
sysテナントとすべてのユーザーテナントはSHOW VARIABLESステートメント、またはSYS.TENANT_VIRTUAL_GLOBAL_VARIABLEビュー(Oracleモード)およびinformation_schema.GLOBAL_VARIABLESビュー(MySQLモード)を使用してグローバルシステム変数の値を確認できます。セッションレベル
sysテナントとすべてのユーザーテナントはSHOW VARIABLESステートメント、またはSYS.TENANT_VIRTUAL_SESSION_VARIABLEビュー(Oracleモード)およびinformation_schema.SESSION_VARIABLESビュー(MySQLモード)を使用してセッションシステム変数の値を確認できます。
変数の変更
グローバル有効
sysテナントはグローバルシステム変数の値を直接変更できます。MySQLユーザーテナントは
SUPERまたはALTER SYSTEM権限を持っている必要があります。グローバルシステム変数の値を変更するには。Oracleユーザーテナントは
ALTER SYSTEM権限を持っている必要があります。グローバルシステム変数の値を変更するには。
セッション有効
sysテナントとすべてのユーザーテナントは、自身のテナントのセッションシステム変数の値を直接変更できます。
プロパティの説明
| プロパティ | 説明 |
|---|---|
| パラメータタイプ | Enum |
| デフォルト値 | 1 |
| 値の範囲 |
|
| 適用範囲 |
|
| 変更は可能か | はい。SETステートメントを使用して変更できます。 |
使用方法
V4.3.5以降のバージョンでは、変数ob_route_policyの値に以下の変更があります:
- FORCE_READONLY_ZONE:このパラメータ値を設定すると、弱い整合性読み取り以外のリクエスト(強い整合性読み取り/DML)は正常に実行され、エラーは報告されません。
- COLUMN_STORE_ONLY:このパラメータ値を設定すると、弱い整合性読み取り以外のリクエスト(強い整合性読み取り/DML)は正常に実行され、エラーは報告されません。
設定例
OBServerノード内でデータレプリカを選択するためのルーティングポリシーを、読み取り専用レプリカが存在するゾーンを優先するように設定します。
セッション有効
obclient> SET ob_route_policy = 'READONLY_ZONE_FIRST';または
obclient> SET ob_route_policy = 1;グローバル有効
obclient> SET GLOBAL ob_route_policy = 'READONLY_ZONE_FIRST';または
obclient> SET GLOBAL ob_route_policy = 1;