Skip to content

适用虚谷数据库版本

v12.9



适用虚谷数据库版本

v12.9


订阅者消费日志-SYS_STREAMS

📄字数 2.3K
👁️阅读量 加载中...

功能描述

SYS_STREAMS系统表用于记载备份数据本次读取结束位置,系统包POLL_MODIFY_DATA参数KEEP_POS为true时生效。

字段说明

序号字段名类型说明V11V12
0DB_IDINTEGER库ID
1SUBS_IDINTEGER订阅ID
2PARTI_NOINTEGER分区号
3FILE_NOINTEGER流服务的起始点对应的文件序号
4FILE_OFFBIGINT流服务的起始点对应的分段内偏移量(单位:字节)
5RESERVED1VARCHAR保留字段

应用实例

  • 查看订阅者各分区消费情况
sql
SQL> CREATE TABLE tab_modify(id INT);
-- 创建变更日志
SQL> EXEC DBMS_REPLICATION.CREATE_MODIFY_SOURCE('sysdba','tab_modify');
-- 创建变更日志访问订阅者
SQL> EXEC DBMS_REPLICATION.CREATE_SUBSCRIBER('sub_info','SYSDBA');

SQL> BEGIN
     FOR i IN 1..10 LOOP
     INSERT INTO tab_modify VALUES(i);
     END LOOP;
     END;
     /

-- 查看订阅者各分区消费情况
SQL> EXEC DBMS_REPLICATION.POLL_MODIFY_DATA('sub_info',0,null,1024,false,0,0);
+---------+--------+----------+---------+-------+---------+--------------------------+--------------------------+-----+------+---------+---------+----------+-------------------------------------------------+----------+
| TRAN_ID | ACTION | PARTI_NO | SRC_NID | DB_ID | OBJ_ID  |       DILIVER_TIME       |       COMMIT_TIME        | FNO | FPOS | LOB_NUM | DAT_LEN |   DATA   |                       SQL                       | SQL_UNDO |
+---------+--------+----------+---------+-------+---------+--------------------------+--------------------------+-----+------+---------+---------+----------+-------------------------------------------------+----------+
| 1167    | 8      | 0        | 1       | 1     | 1048584 | 2025-06-25 14:11:03.212  | 2025-06-25 14:11:03.212  | 0   | 0    | 0       | 68      | <BINARY> | SET SCHEMA TO SYSDBA;load meta                  | <NULL>   |
| 1277    | 10     | 0        | 1       | 1     | 1048584 | 2025-06-26 11:45:26.261  | 2025-06-26 11:45:26.261  | 0   | 128  | 0       | 57      | <BINARY> | SET SCHEMA TO SYSDBA;drop table tab_modify;     | <NULL>   |
| 1279    | 8      | 0        | 1       | 1     | 1048598 | 2025-06-26 11:45:33.290  | 2025-06-26 11:45:33.290  | 0   | 245  | 0       | 68      | <BINARY> | SET SCHEMA TO SYSDBA;load meta                  | <NULL>   |
| 1280    | 1      | 0        | 1       | 1     | 1048598 | 2025-06-26 11:45:40.361  | 2025-06-26 11:45:40.361  | 0   | 373  | 0       | 45      | <BINARY> | INSERT INTO SYSDBA.TAB_MODIFY ( ID ) VALUES (8) | <NULL>   |
| 1282    | 10     | 0        | 1       | 1     | 1048598 | 2025-06-26 11:46:16.724  | 2025-06-26 11:46:16.724  | 0   | 478  | 0       | 57      | <BINARY> | SET SCHEMA TO SYSDBA;drop table tab_modify;     | <NULL>   |
| 1147    | 8      | 0        | 3       | 1     | 1048599 | 2025-06-26 11:46:51.407  | 2025-06-26 11:46:51.407  | 0   | 595  | 0       | 68      | <BINARY> | SET SCHEMA TO SYSDBA;load meta                  | <NULL>   |
| 1150    | 1      | 0        | 3       | 1     | 1048599 | 2025-06-26 11:47:09.917  | 2025-06-26 11:47:09.917  | 0   | 723  | 0       | 45      | <BINARY> | INSERT INTO SYSDBA.TAB_MODIFY ( ID ) VALUES (8) | <NULL>   |
+---------+--------+----------+---------+-------+---------+--------------------------+--------------------------+-----+------+---------+---------+----------+-------------------------------------------------+----------+

SQL> SELECT * FROM SYS_STREAMS WHERE subs_id=(SELECT subs_id FROM SYS_SUBSCRIBERS WHERE subs_name='SUB_INFO');
+-------+---------+----------+---------+----------+-----------+
| DB_ID | SUBS_ID | PARTI_NO | FILE_NO | FILE_OFF | RESERVED1 |
+-------+---------+----------+---------+----------+-----------+
+-------+---------+----------+---------+----------+-----------+

SQL> EXEC DBMS_REPLICATION.POLL_MODIFY_DATA('sub_info',0,null,1024,true,0,0);
+---------+--------+----------+---------+-------+---------+--------------------------+--------------------------+-----+------+---------+---------+----------+-------------------------------------------------+----------+
| TRAN_ID | ACTION | PARTI_NO | SRC_NID | DB_ID | OBJ_ID  |       DILIVER_TIME       |       COMMIT_TIME        | FNO | FPOS | LOB_NUM | DAT_LEN |   DATA   |                       SQL                       | SQL_UNDO |
+---------+--------+----------+---------+-------+---------+--------------------------+--------------------------+-----+------+---------+---------+----------+-------------------------------------------------+----------+
| 1167    | 8      | 0        | 1       | 1     | 1048584 | 2025-06-25 14:11:03.212  | 2025-06-25 14:11:03.212  | 0   | 0    | 0       | 68      | <BINARY> | SET SCHEMA TO SYSDBA;load meta                  | <NULL>   |
| 1277    | 10     | 0        | 1       | 1     | 1048584 | 2025-06-26 11:45:26.261  | 2025-06-26 11:45:26.261  | 0   | 128  | 0       | 57      | <BINARY> | SET SCHEMA TO SYSDBA;drop table tab_modify;     | <NULL>   |
| 1279    | 8      | 0        | 1       | 1     | 1048598 | 2025-06-26 11:45:33.290  | 2025-06-26 11:45:33.290  | 0   | 245  | 0       | 68      | <BINARY> | SET SCHEMA TO SYSDBA;load meta                  | <NULL>   |
| 1280    | 1      | 0        | 1       | 1     | 1048598 | 2025-06-26 11:45:40.361  | 2025-06-26 11:45:40.361  | 0   | 373  | 0       | 45      | <BINARY> | INSERT INTO SYSDBA.TAB_MODIFY ( ID ) VALUES (8) | <NULL>   |
| 1282    | 10     | 0        | 1       | 1     | 1048598 | 2025-06-26 11:46:16.724  | 2025-06-26 11:46:16.724  | 0   | 478  | 0       | 57      | <BINARY> | SET SCHEMA TO SYSDBA;drop table tab_modify;     | <NULL>   |
| 1147    | 8      | 0        | 3       | 1     | 1048599 | 2025-06-26 11:46:51.407  | 2025-06-26 11:46:51.407  | 0   | 595  | 0       | 68      | <BINARY> | SET SCHEMA TO SYSDBA;load meta                  | <NULL>   |
| 1150    | 1      | 0        | 3       | 1     | 1048599 | 2025-06-26 11:47:09.917  | 2025-06-26 11:47:09.917  | 0   | 723  | 0       | 45      | <BINARY> | INSERT INTO SYSDBA.TAB_MODIFY ( ID ) VALUES (8) | <NULL>   |
+---------+--------+----------+---------+-------+---------+--------------------------+--------------------------+-----+------+---------+---------+----------+-------------------------------------------------+----------+

SQL> SELECT * FROM SYS_STREAMS WHERE subs_id=(SELECT subs_id FROM SYS_SUBSCRIBERS WHERE subs_name='SUB_INFO');
+-------+---------+----------+---------+----------+-----------+
| DB_ID | SUBS_ID | PARTI_NO | FILE_NO | FILE_OFF | RESERVED1 |
+-------+---------+----------+---------+----------+-----------+
| 1     | 1048600 | 0        | 0       | 828      | <NULL>    |
+-------+---------+----------+---------+----------+-----------+
  • 根据FILE_NO和FILE_OFF与对应分区号的变更日志大小可分析当前同步情况

相关系统表

注意

变更记载数据查询只能在变更记载节点执行。