1.1 COMPATIBLE 9.2.0 or higher
1.2 GLOBAL_NAMES TRUE
1.3 JOB_QUEUE_PROCESSES 2 or higher
1.4 AQ_TM_PROCESSES 1
1.5 LOGMNR_MAX_PERSISTENT_SESSIONS equal to or higher than the number of planned capture processes
1.6 LOG_PARALLELISM 1
1.7 PARALLEL_MAX_SERVERS 2
1.8 SHARED_POOL_SIZE 100M
1.9 OPEN_LINKS 4 or higher
1.10 The databases involved in Streams must be running in ARCHIVELOG mode
listener.ora和 tnsnames.ora
关闭Agent
编辑ORACLE_BASE/ora92/network/agent /services.ora,加上你的数据库,services.ora设为只读
启动Agent
select * from DBA_APPLY_INSTANTIATED_OBJECTS;
no rows selected
也就是说 instantiation => DBMS_STREAMS_ADM.INSTANTIATION_TABLE_NETWORK
这个操作 根本没有执行到
手工实例化所有对象
在源库上取得实例化scn号:
connectSTRADMIN/STRADMIN@STREAMs
set serveroutput on
DECLARE
iscn NUMBER;
BEGIN
iscn := DBMS_FLASHBACK.GET_SYSTEM_CHANGE_NUMBER();
DBMS_OUTPUT.PUT_LINE ('Instantiation SCN is: ' || iscn);
END;
/
用该SCN实例化目标库上的对象
过 程 SET_TABLE_INSTANTIATION_SCN控制表的哪些LCRs将被应用进程应用。
如果源库上LCRs的提交scn小于等于实 例化的scn,则应用进程丢弃该LCR,否则应用进程应用该scn。
connectSTRADMIN/STRADMIN@streamd
BEGIN
DBMS_APPLY_ADM.SET_TABLE_INSTANTIATION_SCN(
source_object_name => 'TEST.EMP',
source_database_name =>' STREAM',
instantiation_scn => 18902052364 );
END;
DBMS_APPLY_ADM.SET_SCHEMA_INSTANTIATION_SCN('TEST','STREAM', 18902294194 );
ORA-01031:insufficient privileges; 无此权限
select dbms_flashback.get_system_change_number from dual;取得scn
检查一下 source database的global name和db link的名字,如果是一样的那我也不知道为什么了.
strmadmin@ICWEB > select owner, db_link from dba_db_links;
OWNER DB_LINK
---------------------------------- -------------------------------------------
STRMADMIN OPDB.xxxxxxx.COM
strmadmin@OPDB > select * from global_name;
GLOBAL_NAME
--------------------------------------------------------
OPDB.xxxxxxx.COM
Set the SCN by calling DBMS_APPLY_ADM.SET_INSTANTIATION_SCN
源 数据库上执行
DECLARE
iscn NUMBER;
BEGIN
iscn := DBMS_FLASHBACK.GET_SYSTEM_CHANGE_NUMBER();
DBMS_APPLY_ADM.SET_SCHEMA_INSTANTIATION_SCN@zhj151 (
source_schema_name => 'scott.st',
source_database_name => 'ora2.utrust.com',
instantiation_scn => iscn,
recursive => true);
END;
/