説明
- V4.3.x系では、この変数はV4.3.2バージョンから導入されました。
- V4.2.x系では、この変数はV4.2.3バージョンから導入されました。
機能の概要
ob_compatibility_controlは、MYSQL5.7およびMYSQL8.0との互換性に競合が生じた場合の動作パターンを制御します。ob_compatibility_controlの値をMYSQL5.7に設定しても、動作上の競合がないMYSQL8.0の機能の使用には影響しません。テナント作成時に互換モードを指定し、テナント作成後は変更できません。
適用対象
この変数はOceanBaseデータベースのMySQLモードにのみ適用されます。
権限要件
変数の確認
sysテナントとすべてのユーザーテナントはSHOW VARIABLESステートメント、またはinformation_schema.GLOBAL_VARIABLESビュー(MySQLモード)を使用してグローバルシステム変数の値を確認できます。変数の変更
この変数は、テナント作成後にSQLステートメントで変更することはサポートされていません。
プロパティの説明
| プロパティ | 説明 |
|---|---|
| パラメータタイプ | Enum |
| デフォルト値 | MYSQL5.7 |
| 値の範囲 | ["MYSQL5.7", "MYSQL8.0"] |
| 適用範囲 | グローバル |
| 変更は可能か | 不可。この変数はテナント作成時にのみ指定でき、テナント作成後にSETまたはALTER SESSION SETステートメントで変更することはできません。 |
使用方法
この変数が存在しないテナントを、この変数が制御するバージョンにアップグレードする場合、この変数はデフォルト値
MYSQL5.7を取得します。新規作成されるテナントでは、互換モードを指定できます。既存のバージョンでMySQL 8.0として実装されている機能について、
ob_compatibility_version < 4.2.3の場合、ob_compatibility_controlの値に関係なく、MySQL 8.0に従って互換性が確保されます。
設定例
テナント作成時に互換モードをMySQL 5.7に指定します。
obclient> create tenant tenant_m57 zone_list=('z1'),primary_zone='z1',resource_pool_list=('pool1') set ob_compatibility_mode='mysql',ob_compatibility_control='MYSQL5.7',ob_tcp_invited_nodes='%';