説明
V4.4.2バージョンでは、このビューはV4.4.2 BP2バージョンから導入されました。
機能の概要
ビューGV$OB_LS_LOG_TRANSPORT_STATは、強力同期モード(SYNC_MODEがSYNC)で、テナント内のすべてのノード上の各LS(ログストリーム)がスタンバイテナント(スタンバイデータベース)にログをプッシュする転送状態を表示します。クエリ時には、プライマリテナント(プライマリデータベース)またはそのクラスタのsysテナントにログインして実行する必要があります。
ログ転送サービスは強力同期モードでのみ動作します。非同期モードでは、スタンバイデータベースが積極的にログをプルするため、この行のレコードは無意味です。
フィールドの説明
フィールド名 |
型 |
NULL許容 |
説明 |
|---|---|---|---|
| TENANT_ID | bigint(20) | NO | テナントID |
| LS_ID | bigint(20) | NO | ログストリームID |
| SVR_IP | varchar(46) | NO | サーバーのIPアドレス |
| SVR_PORT | bigint(20) | NO | サーバーのポート番号 |
| ROLE | varchar(32) | NO | ログストリームレプリカロール:
|
| ENABLED | tinyint(4) | NO | ログ転送サービス(Transport Service)が有効かどうか |
| END_LSN | bigint(20) unsigned | NO | プライマリテナント(プライマリデータベース)PalfがコミットしたLSN |
| END_SCN | bigint(20) unsigned | NO | プライマリテナント(プライマリデータベース)PalfがコミットしたSCN |
| LAST_SENT_LSN | bigint(20) unsigned | NO | スタンバイテナント(スタンバイデータベース)に最後に送信されたLSN |
| LAST_SENT_SCN | bigint(20) unsigned | NO | スタンバイテナント(スタンバイデータベース)に最後に送信されたSCN |
| STANDBY_END_LSN | bigint(20) unsigned | NO | スタンバイテナント(スタンバイデータベース)で確認済みの書き込みLSN |
| STANDBY_END_SCN | bigint(20) unsigned | NO | スタンバイテナント(スタンバイデータベース)で確認済みの書き込みSCN |
| STANDBY_ADDR | varchar(52) | NO | スタンバイテナント(スタンバイデータベース)の現在のログストリームリーダーのアドレス。0.0.0.0:0の場合は無効です |
クエリ例
プライマリテナントが存在するクラスタのsysテナントで、テナントIDが1002のプライマリテナントのすべてのノード上の各LSからスタンバイテナントへのログプッシュ転送状態を照会します。
プライマリテナントLSの同期モードを確認します。
obclient(root@sys)[oceanbase]> SELECT TENANT_ID, SVR_IP, SVR_PORT, LS_ID, ROLE, SYNC_MODE FROM oceanbase.GV$OB_LOG_STAT WHERE TENANT_ID = 1002 AND ROLE = 'LEADER';クエリ結果は次のとおりです:
+-----------+-------------+----------+-------+--------+-----------+ | TENANT_ID | SVR_IP | SVR_PORT | LS_ID | ROLE | SYNC_MODE | +-----------+-------------+----------+-------+--------+-----------+ | 1002 | 6.xx.xxx.91 | 2882 | 1 | LEADER | SYNC | | 1002 | 6.xx.xxx.91 | 2882 | 1001 | LEADER | SYNC | +-----------+-------------+----------+-------+--------+-----------+ 2 rows in set結果が
SYNCと表示されている場合、現在のテナントのログストリーム同期モードが強力同期モードであることを意味します。そのプライマリテナントのすべてのノード上の各ログフローがスタンバイテナントにログをプッシュする伝送状態を照会します。
obclient(root@sys)[oceanbase]> SELECT TENANT_ID, SVR_IP, SVR_PORT, LS_ID, ROLE, ENABLED, END_LSN, LAST_SENT_LSN, STANDBY_END_LSN, STANDBY_ADDR FROM oceanbase.GV$OB_LS_LOG_TRANSPORT_STAT WHERE TENANT_ID = 1002 AND ROLE = 'LEADER';クエリ結果は次のとおりです:
+-----------+-------------+----------+-------+--------+---------+-----------+---------------+-----------------+-------------------+ | TENANT_ID | SVR_IP | SVR_PORT | LS_ID | ROLE | ENABLED | END_LSN | LAST_SENT_LSN | STANDBY_END_LSN | STANDBY_ADDR | +-----------+-------------+----------+-------+--------+---------+-----------+---------------+-----------------+-------------------+ | 1002 | 6.xx.xxx.91 | 2882 | 1 | LEADER | 1 | 304766784 | 304766784 | 304766784 | 6.xx.xxx.160:2882 | | 1002 | 6.xx.xxx.91 | 2882 | 1001 | LEADER | 1 | 200961942 | 200961942 | 200961942 | 6.xx.xxx.160:2882 | +-----------+-------------+----------+-------+--------+---------+-----------+---------------+-----------------+-------------------+ 2 rows in set