ORA-26687 No Instantiation SCN provided

Hi All Guru, i am newbies to stream.
I have try to setup the stream with full database replication.
However the apply process keep aborted on target db with error ORA-26698 No Instantiation SCN provided for "WSYS"."WK$INSTANCE" in source database "primdb".
I have already tried perform instantiation by using :
DECLARE
iscn NUMBER; -- Variable to hold instantiation SCN value
BEGIN
iscn := DBMS_FLASHBACK.GET_SYSTEM_CHANGE_NUMBER();
DBMS_OUTPUT.PUT_LINE ('Instantiation SCN is: ' || iscn);
END;
connect STRMADMIN/STRMADMIN@destination
BEGIN
DBMS_APPLY_ADM.SET_GLOBAL_INSTANTIATION_SCN(
source_database_name => 'primdb',
instantiation_scn => &iscn );
END;
Please advise how to workaround this issue ?
thanks.
Does anyone have any note on how to setup stream for one way replication from source to target (full database replication) ?
Thanks in advance.

It would be helpful to know which version (3 decimal places) you are working with and what variation on Streams you have chosen.
For example under some situations you might want to do this:
conn / as sysdba
set serveroutput on
DECLARE
f_scn NUMBER;
BEGIN
  f_scn := 0;
  dbms_capture_adm.build(:f_scn);
  dbms_output.put_line('The first_scn value is ' || :f_scn);
END;
/

Similar Messages

  • ORA-26687: no instantiation SCN provided for ... in source database ...

    We are testing streams on Databases between our Main and Branch Campus. We set up the Capture, Propagation and the Apply for the databases and receive the error on the Apply process when doing an insert:
    ORA-26687: no instantiation SCN provided for [TABLE] in source database [DATABASE]
    We are running Oracle 10.2.0.2.0
    Thank you in advance for your help.

    At source, execute the following as strmadmin
    SELECT * FROM DBA_CAPTURE_PREPARED_TABLES;
    Get the SCN for the correspoing table and use at destination
    At destination:
    BEGIN
    DBMS_APPLY_ADM.SET_TABLE_INSTANTIATION_SCN (
    source_object_name => 'schema.tablename',
    source_database_name => 'global db name of source',
    instantiation_scn => &iscn);
    END;
    Enter iscn that you got at souce.
    Retry the error. This will work.

  • STREAMS ORA-26687: no instantiation SCN provided for...

    Hi guys,
    I set streams replication on two instance oracle 10.2.0.3 capture and propagation seems working fine but on the apply side I got error message ORA-26687: no instantiation SCN provided for "SCOTT"."EMP" in source database "DB5.REGRESS.RDBMS.DEV.US.ORACLE.COM" and I tried to instantiate the SCN to Required SCN from
    select REQUIRED_CHECKPOINT_SCN
    from dba_capture;
    also tried to export import the table scott.emp again to instantiate to SCN but it didn't work still get the same error. Any Idea ?

    Set the instantiation SCN to few thousands less to current SCN. It will take care of the SCN. Otherwise find the required SCN and instantiate that number. Of course you need to stop streams process before doing it.
    You can find the required SCN by using the following qury:
    select REQUIRED_CHECKPOINT_SCN
    from dba_capture;

  • 26687 error, no instantiation SCN provided

    We have servers RAC1 and RAC2, using streams to replicate from RAC2 to RAC1
    I had to drop and recreate a table
    Now we get the following error
    26687 error, no instantiation SCN provided
    for "db"."table" in source database "string"
    After recreating and loading the table, I got the SCN from RAC1 using
    DBMS_FLASHBACK.GET_SYSTEM_CHANGE_NUMBER
    then on RAC2 I executed
    DBMS_APPLY_ADMIN.SET_TABLE_INSTANTIATION_SCN
    ("schema.table", "RAC1", 1.470+10)
    What am I missing and how can I fix this problem
    Thanks

    You can look at instanciation SCNs using the following request at destination DB:
    SELECT * from DBA_APPLY_INSTANTIATED_OBJECTS;
    You can check the values against SCN at the source database.
    The following statement enables to look at SCN taken during prepare phase
    SELECT * from dba_capture_prepared_tables;
    Either fix the SCN value
    Either reinstaciate table by
    1 preparing the table for instanciation
    2 export the table from source to destination
    You may benefit from taking a look at Oracle Streams Replication Administrator's Guide chapter 14 which mention your error code.

  • Ora -26687

    HI THERE
    i have startup oralce streaming on database(object) level, capture and propogation on source database is OK,
    But the apply process on destination database give error, and the error is following.
    ORA-26687 no instantiation SCN provided for "SYSMAN"."MGMT_SYSTEM_PERFORMANCE_LOG" in source database
    ORA-26687: no instantiation SCN provided for "SYSMAN"."MGMT_EMD_PING" in source database
    PLZ someone let me know how can i find out the INSTANTIATION SCN
    THNAK'S

    LEt me quote from oracle error msg doc:
    "ORA-26687: no instantiation SCN provided for "string"."string" in source database "string"
    Cause: Object SCN was not set. If the object is a table, then both fields will be filled, for example "SCOTT"."EMP". If the object is a schema, only one field will be set, for example "SCOTT"."". And if the object is the entire database, no fields will be set, for example ""."".
    Action: Set the SCN by calling DBMS_APPLY_ADM.SET_%_INSTANTIATION_SCN"
    Also check Metalink Doc ID:      223000.1 Streams Apply Process Fails with ORA-26687 or "Missing Streams multi-version data dictionary" and there are several other search result at metalink...(for search string "ORA-26687")

  • "ORA-01203 - wrong creation SCN" got during copy of a db on another machine

    Hello colleagues,
    I copy a database from a machine to a second one through this procedure:
    I set each tablespace (data and temp) in backup mode
    I copy the datafiles (data and temp)
    I copy the control file
    I copy archived redo logs
    On the second machine I try to startup the database by the command
    On the second machine I try to startup the database but the following errors are got:
    SQL> @/usr/Systems/1359HA_9.0.0_Master/HA_EOMS_1_9.0.0_Master/tmp/oracle/CACH
    E/apply_redo.sql;
    ORACLE instance started.
    Total System Global Area 423624704 bytes
    Fixed Size 2044552 bytes
    Variable Size 209718648 bytes
    Database Buffers 209715200 bytes
    Redo Buffers 2146304 bytes
    Database mounted.
    alter database recover automatic from '/usr/Systems/1359HA_9.0.0_Master/HA_EOMS_1_9.0.0_Master/data/warm_rep
    l/WarmArchive/CACHE' database until cancel using backup controlfile
    but the following errors are got:
    SQL> @/usr/Systems/1359HA_9.0.0_Master/HA_EOMS_1_9.0.0_Master/tmp/oracle/CACH
    E/apply_redo.sql;
    ORACLE instance started.
    Total System Global Area 423624704 bytes
    Fixed Size 2044552 bytes
    Variable Size 209718648 bytes
    Database Buffers 209715200 bytes
    Redo Buffers 2146304 bytes
    Database mounted.
    alter database recover automatic from '/usr/Systems/1359HA_9.0.0_Master/HA_EOMS_1_9.0.0_Master/data/warm_rep
    l/WarmArchive/CACHE' database until cancel using backup controlfile
    ERROR at line 1:
    ORA-00283: recovery session canceled due to errors
    ORA-01110: data file 1: '/cache/db/db01/system_1.dbf'
    ORA-01122: database file 1 failed verification check
    ORA-01110: data file 1: '/cache/db/db01/system_1.dbf'
    ORA-01203: wrong incarnation of this file - wrong creation SCN
    You see the mount command and the error got.
    What can I do to troubleshoot the problem?
    thanks for the support
    Enrico
    The complete copy procedure is the following:
    #!/bin/ksh
    # Step 2 -- Verifying the DBMS ARCHIVELOG mode
    $ORACLE_HOME/bin/sqlplus /nolog << EOF
    connect / as sysdba
    spool ${ORACLE_TMP_DIR}/archive.log
    archive log list;
    spool off
    EOF
    grep NOARCHIVELOG ${ORACLE_TMP_DIR}/archive.log >/dev/null 2>&1
    # Step 3 -- Creating DB_filenames.conf / DB_controfile.conf fles
    [ -f ${ORACLE_TMP_DIR}/DB_filenames.conf ] && rm -f ${ORACLE_TMP_DIR}/DB_filenames.conf
    [ -f ${ORACLE_TMP_DIR}/DB_controfile.conf ] && rm -f ${ORACLE_TMP_DIR}/DB_controfile.conf
    [ -f ${ORACLE_TMP_DIR}/DB_TEMP_filenames.conf ] && rm -f ${ORACLE_TMP_DIR}/DB_TEMP_filenames.conf
    $ORACLE_HOME/bin/sqlplus /nolog << EOF
    connect / as sysdba
    set linesize 600;
    spool ${ORACLE_TMP_DIR}/DB_filenames.conf
    select 'TABLESPACE=',tablespace_name from sys.dba_data_files;
    select 'FILENAME=',file_name from sys.dba_data_files;
    select 'LOGFILE=',MEMBER from v\$logfile;
    spool off
    EOF
    $ORACLE_HOME/bin/sqlplus /nolog << EOF
    connect / as sysdba
    set linesize 600;
    spool ${ORACLE_TMP_DIR}/DB_controfile.conf
    select name from v\$controlfile;
    spool off
    EOF
    $ORACLE_HOME/bin/sqlplus /nolog << EOF
    connect / as sysdba
    set linesize 600;
    spool ${ORACLE_TMP_DIR}/DB_TEMP_filenames.conf
    select 'TABLESPACE=',tablespace_name from sys.dba_temp_files;
    select 'FILENAME=',file_name from sys.dba_temp_files;
    spool off
    EOF
    note "Executing cp ${ORACLE_TMP_DIR}/DB_filenames.conf ${INSTANCE_DATA_DIR}/DB_filenames.conf ..."
    cp ${ORACLE_TMP_DIR}/DB_filenames.conf ${INSTANCE_DATA_DIR}/DB_filenames.conf
    [ $? -ne 0 ] && error "Error executing cp ${ORACLE_TMP_DIR}/DB_filenames.conf ${INSTANCE_DATA_DIR}/DB_filenames.conf!"\
         && LocalExit 1
    chmod ug+x ${INSTANCE_DATA_DIR}/DB_filenames.conf
    note "Executing cp ${ORACLE_TMP_DIR}/DB_controfile.conf ${INSTANCE_DATA_DIR}/DB_controfile.conf ..."
    cp ${ORACLE_TMP_DIR}/DB_controfile.conf ${INSTANCE_DATA_DIR}/DB_controfile.conf
    [ $? -ne 0 ] && error "Error executing cp ${ORACLE_TMP_DIR}/DB_controfile.conf ${INSTANCE_DATA_DIR}/DB_controfile.conf!"\
         && LocalExit 1
    chmod ug+x ${INSTANCE_DATA_DIR}/DB_controfile.conf
    note "Executing cp ${ORACLE_TMP_DIR}/DB_TEMP_filenames.conf ${INSTANCE_DATA_DIR}/DB_TEMP_filenames.conf ..."
    cp ${ORACLE_TMP_DIR}/DB_TEMP_filenames.conf ${INSTANCE_DATA_DIR}/DB_TEMP_filenames.conf
    [ $? -ne 0 ] && error "Error executing cp ${ORACLE_TMP_DIR}/DB_TEMP_filenames.conf ${INSTANCE_DATA_DIR}/DB_TEMP_filenames.conf!"\
         && LocalExit 1
    chmod ug+x ${INSTANCE_DATA_DIR}/DB_TEMP_filenames.conf
    set -a
    set -A arr_tablespace `grep "^TABLESPACE=" ${INSTANCE_DATA_DIR}/DB_filenames.conf | awk '{ print \$2 }'`
    index=`grep "^TABLESPACE" ${INSTANCE_DATA_DIR}/DB_filenames.conf | wc -l`
    backup_status=0
    i=0
    while [ $i -lt $index ]
    do
    note "tablespace=${arr_tablespace[$i]}"
    $ORACLE_HOME/bin/sqlplus /nolog << EOF
    connect / as sysdba
    set linesize 600;
    spool ${ORACLE_TMP_DIR}/tablespace.log
    select 'FILENAME=',file_name from sys.dba_data_files where tablespace_name='${arr_tablespace[$i]}';
    spool off
    alter tablespace ${arr_tablespace[$i]} end backup;
    spool ${ORACLE_TMP_DIR}/backup_tablespace.log
    alter tablespace ${arr_tablespace[$i]} begin backup;
    spool off
    EOF
    set -A arr_filename `grep "^FILENAME=" ${ORACLE_TMP_DIR}/tablespace.log | awk '{ print \$2 }'`
    index1=`grep "^FILENAME" ${ORACLE_TMP_DIR}/tablespace.log | wc -l`
    h=0
    while [ $h -lt $index1 ]
    do
    name=`basename ${arr_filename[$h]}`
    note "filename = ${arr_filename[$h]}"
    $ORACLE_HOME/bin/sqlplus /nolog << EOF
    connect / as sysdba
    host compress -c ${arr_filename[$h]} > ${BACKUP_AREA}/$name.Z
    EOF
    h=`expr $h + 1`
    done
    $ORACLE_HOME/bin/sqlplus /nolog << EOF
    connect / as sysdba
    spool ${ORACLE_TMP_DIR}/backup_tablespace.log
    alter tablespace ${arr_tablespace[$i]} end backup;
    spool off
    EOF
    i=`expr $i + 1`
    done
    [ $backup_status -eq 1 ] && LocalExit 1
    set -a
    set -A arr_tablespace `grep "^TABLESPACE=" ${INSTANCE_DATA_DIR}/DB_TEMP_filenames.conf | awk '{ print \$2 }'`
    index=`grep "^TABLESPACE" ${INSTANCE_DATA_DIR}/DB_TEMP_filenames.conf | wc -l`
    ${ORACLE_TMP_DIR}/tablespace.logi=0
    while [ $i -lt $index ]
    do
    note "tablespace=${arr_tablespace[$i]}"
    $ORACLE_HOME/bin/sqlplus /nolog << EOF
    connect / as sysdba
    set linesize 600;
    spool ${ORACLE_TMP_DIR}/tablespace.log
    select 'FILENAME=',file_name from sys.dba_temp_files where tablespace_name='${arr_tablespace[$i]}';
    spool off
    EOF
    set -A arr_filename `grep "^FILENAME=" ${ORACLE_TMP_DIR}/tablespace.log | awk '{ print \$2 }'`
    index1=`grep "^FILENAME" ${ORACLE_TMP_DIR}/tablespace.log | wc -l`
    h=0
    while [ $h -lt $index1 ]
    do
    name=`basename ${arr_filename[$h]}`
    note "filename = ${arr_filename[$h]}"
    $ORACLE_HOME/bin/sqlplus /nolog << EOF
    connect / as sysdba
    host compress -c ${arr_filename[$h]} > ${BACKUP_AREA}/$name.Z
    EOF
    h=`expr $h + 1`
    done
    i=`expr $i + 1`
    done
    # "log switch & controlfile backup"
    $ORACLE_HOME/bin/sqlplus /nolog << EOF
    connect / as sysdba
    spool ${ORACLE_TMP_DIR}/backup_controlfile.log
    alter database backup controlfile to '${BACKUP_AREA}/ctrl_pm.ctl' reuse;
    host chmod a+rw ${BACKUP_AREA}/ctrl_pm.ctl
    alter system archive log current;
    spool off
    spool ${ORACLE_TMP_DIR}/archive_info.log
    archive log list;
    spool off
    EOF
    # Step 5 -- Copying the DBMS on the companion node
    note "transferring archived redo log files from ACT to SBY host"
    name=`grep 'Archive destination' ${ORACLE_TMP_DIR}/archive_info.log| awk '{ print \$3 }'`
    set -A vett_logfiles `grep "^LOGFILE=" ${INSTANCE_DATA_DIR}/DB_filenames.conf | awk '{ print \$2 }'`
    index=`grep "^LOGFILE" ${INSTANCE_DATA_DIR}/DB_filenames.conf | wc -l`
    i=0
    while [ $index -gt 0 ]
    do
    name=`basename ${vett_logfiles[$i]}`
    ###MOD001
    $ORACLE_HOME/bin/sqlplus /nolog << EOF
    connect / as sysdba
    host cp ${vett_logfiles[$i]} ${BACKUP_AREA}/$name
    host chmod a+rw ${BACKUP_AREA}/$name
    EOF
    if [ $? -ne 0 ]; then
    error "Error copying logfile on LOCAL_BACKUP_AREA"
    LocalExit 1
    fi
    note "log_file=${vett_logfiles[$i]}"
    index=`expr $index - 1`
    i=`expr $i + 1`
    done
    note "Executing RemoteCopy ${COMPANION_HOSTNAME} ${INSTANCE_DATA_DIR}/DB_filenames.conf ${INSTANCE_DATA_DIR}/DB_filenames.conf 0 -k -ret 2 ..."
    RemoteCopy ${COMPANION_HOSTNAME} ${INSTANCE_DATA_DIR}/DB_filenames.conf ${INSTANCE_DATA_DIR}/DB_filenames.conf 0 -k -ret 2
    if [ $? -ne 0 ]; then
    error "Error executing RemoteCopy ${COMPANION_HOSTNAME} ${INSTANCE_DATA_DIR}/DB_filenames.conf ${INSTANCE_DATA_DIR}/DB_filenames.conf 0 -ret 2!"
    LocalExit 1
    fi
    note "Executing RemoteCopy ${COMPANION_HOSTNAME} ${INSTANCE_DATA_DIR}/DB_TEMP_filenames.conf ${INSTANCE_DATA_DIR}/DB_TEMP_filenames.conf 0 -k -ret 2 ..."
    RemoteCopy ${COMPANION_HOSTNAME} ${INSTANCE_DATA_DIR}/DB_TEMP_filenames.conf ${INSTANCE_DATA_DIR}/DB_TEMP_filenames.conf 0 -k -ret 2
    if [ $? -ne 0 ]; then
    error "Error executing RemoteCopy ${COMPANION_HOSTNAME} ${INSTANCE_DATA_DIR}/DB_TEMP_filenames.conf ${INSTANCE_DATA_DIR}/DB_TEMP_filenames.conf 0 -ret 2!"
    LocalExit 1
    fi
    note "Executing RemoteCopy ${COMPANION_HOSTNAME} ${INSTANCE_DATA_DIR}/DB_controfile.conf ${INSTANCE_DATA_DIR}/DB_controfile.conf 0 -k -ret 2 ..."
    RemoteCopy ${COMPANION_HOSTNAME} ${INSTANCE_DATA_DIR}/DB_controfile.conf ${INSTANCE_DATA_DIR}/DB_controfile.conf 0 -k -ret 2
    if [ $? -ne 0 ]; then
    error "Error executing RemoteCopy ${COMPANION_HOSTNAME} ${INSTANCE_DATA_DIR}/DB_controfile.conf ${INSTANCE_DATA_DIR}/DB_controfile.conf 0 -k -ret 2!"
    LocalExit 1
    fi
    note "Executing RemoteCopy ${COMPANION_HOSTNAME} ${BACKUP_AREA} ${RECOVER_AREA} 0 -k -ret 2 ..."
    RemoteCopy ${COMPANION_HOSTNAME} ${BACKUP_AREA} ${RECOVER_AREA} 0 -k -ret 2

    If the Operating system is same :
    Working Machine
    ================
    Shutdown the database and copy everything
    Copy the init.ora
    Copy the pdf,ctl,and log
    Copy the bdump, udump etc..
    On the second machine
    ==================
    Copy your file in the same path as original i.e
    C:\oracle..<dbname>\system.dbf
    C:\oracle..<dbname>\system.dbf
    Start the database
    If your paths in second machine does not match as original update this thread again
    Michael
    http://mikegeorgiou.blogspot.com

  • Oracle stream - Table instantiation

    Hi,
    I have included DDL rules in capture process. Everthing goes fine except when I am creating new table in source. It gives below error.
    ORA-26687: no instantiation SCN provided for "PCAT_NT"."" in source database "PCAT"
    My DDL rules are as below :
    BEGIN
    DBMS_STREAMS_ADM.ADD_SCHEMA_RULES(
    schema_name => 'PCAT_NT',
    streams_type => 'CAPTURE',
    streams_name => 'PCAT_NT_CAPTURE',
    queue_name => 'STRMADMIN.STRMPCAT_QUEUE',
    include_dml => false,
    include_ddl => true,
    source_database => 'PCAT',
    inclusion_rule => TRUE,
    and_condition => '(:ddl.get_command_type() = ''TRUNCATE TABLE'')'
    END;
    BEGIN
    DBMS_STREAMS_ADM.ADD_SCHEMA_RULES(
    schema_name => 'PCAT_NT',
    streams_type => 'CAPTURE',
    streams_name => 'PCAT_NT_CAPTURE',
    queue_name => 'STRMADMIN.STRMPCAT_QUEUE',
    include_dml => false,
    include_ddl => true,
    source_database => 'PCAT',
    inclusion_rule => TRUE,
    and_condition => '(:ddl.get_command_type() = ''ALTER TABLE'')'
    END;
    BEGIN
    DBMS_STREAMS_ADM.ADD_SCHEMA_RULES(
    schema_name => 'PCAT_NT',
    streams_type => 'CAPTURE',
    streams_name => 'PCAT_NT_CAPTURE',
    queue_name => 'STRMADMIN.STRMPCAT_QUEUE',
    include_dml => false,
    include_ddl => true,
    source_database => 'PCAT',
    inclusion_rule => TRUE,
    and_condition => '(:ddl.get_command_type() = ''CREATE INDEX'')'
    END;
    BEGIN
    DBMS_STREAMS_ADM.ADD_SCHEMA_RULES(
    schema_name => 'PCAT_NT',
    streams_type => 'CAPTURE',
    streams_name => 'PCAT_NT_CAPTURE',
    queue_name => 'STRMADMIN.STRMPCAT_QUEUE',
    include_dml => false,
    include_ddl => true,
    source_database => 'PCAT',
    inclusion_rule => TRUE,
    and_condition => '(:ddl.get_command_type() = ''CREATE TABLE'')'
    END;
    Regards

    I followed document id 733691.1 for downstream setup and cudn't see DBMS_STREAMS_ADM.MAINTAIN_SCHEMAS procedure there.
    Regards

  • Need help with streams

    Hi all! Just started with an amazing oracle feature STREAMS! Can't you spent 10 minutes and help me to find the solution to my errors.
    I have a two-node bidirectional replication. If insert at rep1 i see changes at rep2, but when i insert into rep2 nothing happends with rep1. I ssupect that i am having very bad problems with apply server or with SCN (or flashback number).
    -- connected to REP1
    BEGIN
      DBMS_APPLY_ADM.START_APPLY(
        apply_name  => 'apply_from_rep2');
    END;
    SELECT sid,serial#,apply#,apply_name
    FROM V$STREAMS_APPLY_SERVER
    SID                    SERIAL#                APPLY#                 APPLY_NAME                    
    136                    53                     1                      APPLY_FROM_REP2  
    --from REP2:
    insert into hrmult.test_streams values(203);
    commit;
    --from REP1:
    SELECT sid,serial#,apply#,apply_name
    FROM V$STREAMS_APPLY_SERVER
    0 rows selected
    SELECT apply_name,error_message from dba_apply_error;
    APPLY_FROM_REP2     "ORA-26687: no instantiation SCN provided for "HRMULT"."TEST_STREAMS" in source database "REP2"
    select DBMS_FLASHBACK.GET_SYSTEM_CHANGE_NUMBER() from dual;
    2629183
    -- freom REP2:
    select DBMS_FLASHBACK.GET_SYSTEM_CHANGE_NUMBER() from dual;
    2629202
    --- from REP1:
    DECLARE
      iscn  NUMBER;         -- Variable to hold instantiation SCN value
    BEGIN
      iscn := DBMS_FLASHBACK.GET_SYSTEM_CHANGE_NUMBER();
      DBMS_APPLY_ADM.SET_SCHEMA_INSTANTIATION_SCN@rep2(
        source_schema_name    => 'hrmult',
        source_database_name  => 'rep2',
        instantiation_scn     => iscn);
    END;but now i have different scn using DBMS_FLASHBACK.GET_SYSTEM_CHANGE_NUMBER() from dual;
    what's going on?

    mark answered post as helpful / correctvery helpfull!!

  • Schema Level Bidirectional streams - works only in one direction

    Hi All,
    we are implementing bidirectional streams at schema level(using scott schema for testing).
    Our environment and different parameters are:
    Source:
    OS =Win2003 64bit
    DB Version= 10.2.0.5.0 64bit
    DB SID=CIBSPROD
    log_archive_dest_1 LOCATION=E:\DBFILES\ArchiveLog\CIBSPROD\PrimaryRole VALID_FOR=(ALL_LOGFILES,ALL_ROLES) DB_UNIQUE_NAME=CIBSPROD
    log_archive_dest_2 SERVICE=CIBSREP LGWR ASYNC NOREGISTER VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=CIBSREP
    job_queue_processes=2
    Dest:
    OS =Win2003 64bit
    DB Version= 10.2.0.5.0 64bit
    DB SID=CIBSREP
    log_archive_dest_1 LOCATION=E:\DBFILES\ArchiveLog\CIBSREP\PrimaryRole VALID_FOR=(ONLINE_LOGFILE,PRIMARY_ROLE) DB_UNIQUE_NAME=CIBSREP
    log_archive_dest_2 SERVICE=CIBSPROD LGWR ASYNC NOREGISTER VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=CIBSPROD
    job_queue_processes=2
    Follow the "Streams Bi-Directional Setup [ID 471845.1]" article
    Problem we are facing is changes are propagating from Source(CIBSPROD)  to Destination(CIBSREP) BUT NOT from Destination to Source Database(although archivelogs are shipping from Destination to Source).
    Executed below script for configuration:
    SET ECHO ON
    SPOOL strm-reconfig-scott.out
    conn sys/&sys_pwd_source@CIBSPROD as sysdba
    EXEC DBMS_STREAMS_ADM.REMOVE_STREAMS_CONFIGURATION;
    DROP USER STRMADMIN CASCADE;
    CREATE USER strmadmin IDENTIFIED BY strmadmin DEFAULT TABLESPACE streams_tbs QUOTA UNLIMITED ON streams_tbs;
    GRANT CONNECT, RESOURCE, AQ_ADMINISTRATOR_ROLE,DBA to STRMADMIN;
    EXECute DBMS_STREAMS_AUTH.GRANT_ADMIN_PRIVILEGE('STRMADMIN');
    drop database link CIBSREP;
    create public database link CIBSREP connect to strmadmin identified by strmadmin using 'CIBSREP';
    conn sys/&sys_pwd_downstream@CIBSREP as sysdba
    EXEC DBMS_STREAMS_ADM.REMOVE_STREAMS_CONFIGURATION;
    DROP USER STRMADMIN CASCADE;
    CREATE USER strmadmin IDENTIFIED BY strmadmin DEFAULT TABLESPACE streams_tbs QUOTA UNLIMITED ON streams_tbs;
    GRANT CONNECT, RESOURCE, AQ_ADMINISTRATOR_ROLE,DBA to STRMADMIN;
    EXECute DBMS_STREAMS_AUTH.GRANT_ADMIN_PRIVILEGE('STRMADMIN');
    drop user SCOTT CASCADE;
    create user SCOTT identified by scott175;
    GRANT CONNECT, RESOURCE to SCOTT;
    drop database link CIBSPROD;
    create public database link CIBSPROD connect to strmadmin identified by strmadmin using 'CIBSPROD';
    --Set up 2 queues for Capture and apply in CIBSPROD Database
    conn strmadmin/strmadmin@CIBSPROD
    EXEC DBMS_STREAMS_ADM.SET_UP_QUEUE( queue_table => 'APPLY_CIBSPROD_TAB', queue_name => 'APPLY_CIBSPROD', queue_user => 'strmadmin'); 
    EXEC DBMS_STREAMS_ADM.SET_UP_QUEUE( queue_table => 'CAPTURE_CIBSPROD_TAB', queue_name => 'CAPTURE_CIBSPROD', queue_user => 'strmadmin');
    --Set up 2 queues for Capture and apply in CIBSREP Database
    conn strmadmin/strmadmin@CIBSREP
    EXEC DBMS_STREAMS_ADM.SET_UP_QUEUE( queue_table => 'APPLY_CIBSREP_TAB', queue_name => 'APPLY_CIBSREP', queue_user => 'strmadmin'); 
    EXEC DBMS_STREAMS_ADM.SET_UP_QUEUE( queue_table => 'CAPTURE_CIBSREP_TAB', queue_name => 'CAPTURE_CIBSREP', queue_user => 'strmadmin');
    --Configure capture,apply and propagation process on CIBSPROD database.
    conn strmadmin/strmadmin@CIBSPROD
    EXEC dbms_streams_adm.add_schema_rules ( schema_name => 'scott', streams_type => 'CAPTURE', streams_name => 'CAPTURE_CIBSPROD', queue_name => 'CAPTURE_CIBSPROD', include_dml => true, include_ddl => true, inclusion_rule => true);
    EXEC dbms_streams_adm.add_schema_rules ( schema_name => 'scott', streams_type => 'APPLY', streams_name => 'APPLY_CIBSPROD', queue_name => 'APPLY_CIBSPROD', include_dml => true, include_ddl => true, source_database => 'CIBSREP');
    EXEC DBMS_APPLY_ADM.SET_PARAMETER(apply_name => 'APPLY_CIBSPROD', parameter => 'PARALLELISM', value => '5');
    EXEC DBMS_APPLY_ADM.SET_PARAMETER(apply_name => 'APPLY_CIBSPROD', parameter => '_HASH_TABLE_SIZE', value => '10000000');
    EXEC DBMS_APPLY_ADM.SET_PARAMETER(apply_name => 'APPLY_CIBSPROD', parameter => 'TXN_LCR_SPILL_THRESHOLD', value => '1000000');
    EXEC DBMS_APPLY_ADM.SET_PARAMETER(apply_name => 'APPLY_CIBSPROD', parameter => 'DISABLE_ON_ERROR', value => 'N');
    EXEC DBMS_APPLY_ADM.Set_parameter(apply_name => 'APPLY_CIBSPROD', parameter => '_dynamic_stmts',value => 'Y');
    EXEC DBMS_APPLY_ADM.Set_parameter(apply_name => 'APPLY_CIBSPROD', parameter => 'COMMIT_SERIALIZATION',value => 'NONE');
    EXEC DBMS_APPLY_ADM.Set_parameter(apply_name => 'APPLY_CIBSPROD', parameter => '_RESTRICT_ALL_REF_CONS',value => 'N');
    EXEC DBMS_APPLY_ADM.Set_parameter(apply_name => 'APPLY_CIBSPROD', parameter => 'ALLOW_DUPLICATE_ROWS',value => 'Y');
    EXEC dbms_streams_adm.add_schema_propagation_rules ( schema_name => 'scott', streams_name => 'PROP_CIBSPROD_to_CIBSREP', source_queue_name => 'CAPTURE_CIBSPROD', destination_queue_name => 'APPLY_CIBSREP@CIBSREP', include_dml => true, include_ddl => true, source_database => 'CIBSPROD');
    --Configure capture,apply and propagation process process on CIBSREP Database
    conn strmadmin/strmadmin@CIBSREP
    EXEC dbms_streams_adm.add_schema_rules ( schema_name => 'scott', streams_type => 'CAPTURE', streams_name => 'CAPTURE_CIBSREP', queue_name => 'CAPTURE_CIBSREP', include_dml => true, include_ddl => true);
    EXEC dbms_streams_adm.add_schema_rules ( schema_name => 'scott', streams_type => 'APPLY', streams_name => 'APPLY_CIBSREP', queue_name => 'APPLY_CIBSREP', include_dml => true, include_ddl => true, source_database => 'CIBSPROD');
    EXEC DBMS_APPLY_ADM.SET_PARAMETER(apply_name => 'APPLY_CIBSREP', parameter => 'PARALLELISM', value => '5');
    EXEC DBMS_APPLY_ADM.SET_PARAMETER(apply_name => 'APPLY_CIBSREP', parameter => '_HASH_TABLE_SIZE', value => '10000000');
    EXEC DBMS_APPLY_ADM.SET_PARAMETER(apply_name => 'APPLY_CIBSREP', parameter => 'TXN_LCR_SPILL_THRESHOLD', value => '1000000');
    EXEC DBMS_APPLY_ADM.SET_PARAMETER(apply_name => 'APPLY_CIBSREP', parameter => 'DISABLE_ON_ERROR', value => 'N');
    EXEC DBMS_APPLY_ADM.Set_parameter(apply_name => 'APPLY_CIBSREP', parameter => '_dynamic_stmts',value => 'Y');
    EXEC DBMS_APPLY_ADM.Set_parameter(apply_name => 'APPLY_CIBSREP', parameter => 'COMMIT_SERIALIZATION',value => 'NONE');
    EXEC DBMS_APPLY_ADM.Set_parameter(apply_name => 'APPLY_CIBSREP', parameter => '_RESTRICT_ALL_REF_CONS',value => 'N');
    EXEC DBMS_APPLY_ADM.Set_parameter(apply_name => 'APPLY_CIBSREP', parameter => 'ALLOW_DUPLICATE_ROWS',value => 'Y');
    EXEC dbms_streams_adm.add_schema_propagation_rules ( schema_name => 'scott', streams_name => 'PROP_CIBSREP_to_CIBSPROD', source_queue_name => 'CAPTURE_CIBSREP', destination_queue_name => 'APPLY_CIBSPROD@CIBSPROD', include_dml => true, include_ddl => true, source_database => 'CIBSREP');
    --Import export schema
    host exp USERID=SYSTEM/cibsmgr@CIBSPROD parfile=expparfile-scott.txt
    host imp USERID=SYSTEM/cibsmgr@CIBSREP parfile=impparfile-scott.txt
    --Start capture and apply processes on CIBSREP
    conn strmadmin/strmadmin@CIBSREP
    EXEC dbms_capture_adm.start_capture (capture_name=>'CAPTURE_CIBSREP');
    EXEC DBMS_APPLY_ADM.START_APPLY(apply_name => 'APPLY_CIBSREP');
    --Start capture and apply processes on CIBSPROD
    conn strmadmin/strmadmin@CIBSPROD
    EXEC dbms_capture_adm.start_capture (capture_name=>'CAPTURE_CIBSPROD');
    EXEC DBMS_APPLY_ADM.START_APPLY(apply_name => 'APPLY_CIBSPROD');
    SPOOL OFF
    What we have missed in the configuration?
    Regards,
    Asim

    Find error SRC database "ORA-26687: no instantiation SCN provided fro SCOTT.STRMTEST in source database CIBSREP"
    SCOTT.STRMTEST is heartbeat table used from streams replication on Source and Destination database

  • Streams to Sybase

    Hello,
    I am attempting to propagate changes from a oracle (9.2.0.4) table to a sybase (12.5.0.3) table, using streams.
    I have configured the capture and apply process (it would seem) correctly. I can start the capture and it picks up the changes, but when I start the apply, it aborts with an ORA-26687 (no instantiation scn provided).
    I have run the dbms_apply_adm.set_table_instantiation_sch procedure, but I still get this error. Any suggestions?
    Jim

    Make sure that you specified the apply_database_link parameter to the set_table_instantiation_scn procedure. The apply_db_link should be the database link name that you use to get to the sybase system.

  • ORA-28239: no key provided in Mail Queue

    Hi,
    I try send mail from APEX (apex_mail.send) and I have in Manage Instance -> Manage Meta Data -> Mail Queue list of mails with error: ORA-28239: no key provided
    Oracle Docs give the following recommendation:
    ORA-28239: no key provided
    Cause: A NULL value was passed in as an encryption or decryption key.
    Action: Provide a non-NULL value for the key.
    Where do I 'Provide' the non-NULL value and where is this derived?

    The apply instantiation scn is independent of capture mode (Sync or redo log). When you set an apply instantiation scn, you are telling the apply process the source scn at which the instantiation occurred.
    Use the procedure dbms_apply_adm.set_table_instantiation_scn (see http://download.oracle.com/docs/cd/E11882_01/appdev.112/e16760/d_apply.htm#i997895)
    You may want to look at the 2Day+ Data Replication and Integration book for an example on initial configuration (chapter 4) and extending a Streams environment (chapter 5). Look for the tutorial for sync capture in each chapter. The 11.1 version of the 2Day+ book performs most tasks with pl/sql while the 11.2 version utilizes EM Grid Control for most operations.
    11.2 2Day+ Data Replication and Integration: http://download.oracle.com/docs/cd/E11882_01/server.112/e17516/toc.htm
    11.1 2Day+ Data Replication and Integration: http://download.oracle.com/docs/cd/B28359_01/server.111/b28324/toc.htm

  • Error creating Streams example - ORA-01729: database link name expected

    Running 11gR1. Example from doc, "4 Single-Database Capture and Apply Example"
    the database name is "11G3". when I run the Step 3 statement below, I get the error below. What am I doing wrong? Thanks!
    DECLARE
    iscn NUMBER; -- Variable to hold instantiation SCN value
    BEGIN
    iscn := DBMS_FLASHBACK.GET_SYSTEM_CHANGE_NUMBER();
    DBMS_APPLY_ADM.SET_TABLE_INSTANTIATION_SCN(
    source_object_name => 'hr.employees',
    source_database_name => '11G3',
    instantiation_scn => iscn);
    END;
    Error at line 1
    ORA-01729: database link name expected
    ORA-06512: at "SYS.DBMS_LOGREP_UTIL", line 742
    ORA-06512: at "SYS.DBMS_APPLY_ADM", line 726
    ORA-06512: at line 5

    The manual stated to be GLOBAL_NAMES compliant which means DBLINK=target DB_NAME and SID cannot start with a figure. I strongly suggest to pay a careful look to manuals as Streams has a lot of others tricks under the hat awaiting for you.

  • Ora-4031&ora-1280 error-Shared Memory Problem

    Sir ,
    I am using oracle Streams for Data Replication
    I am facing the problem while confifurung cApture Process..It is giving error-ora-4031
    description
    Ora-4031-Unable to allocate <n> bytes of shared memory ( "Shared Pool","Unknown Object ","Streams Pool","Internal low LCR")
    Ora-1280 : Ligminer Fatal error
    I followed the steps given below
         # Instance Setup
              setup is like
                   Database Mode = archive
                   Share_pool_size=52m &
                   share_pool_reseved_size= 5m (10% of share pool Area)
                   processes=500
                   parallel_max_servers=35
                   parallel_min_servers=1
                   job_que_processes=1
                   aq_tm_processe=1
                   global_name=true
                   Archive log mode =true
                   log_archive_dest_1 :='location =E:\oracle\archive1 reopen=30"
                   log_archive_dest_2 :='location =E:\oracle\archive2 reopen=30"
         # Stream Administrator Setup
         # LogMinor Tablespace Setup
         # Supplemental Logging
         # Configure Propagation Process
         # Configure Capture Process
         # Configure Instantiation SCN
         # Configure Apply Process
         # Start Apply Process
         # Start Capture Process
    Please give me as solution to overcome this problem

    I suspect you are running 10.1 or earlier version of the data base? If that is the case, logminer has a memory leak that runs the SGA out of memory over time.
    Look in metalink for logminer memory leak bugs. This forum has the exact bug if you search for it. It is patched in release 10.2.0.2.0. I just loaded that release and have other issues to fix before the bug appears again or not.
    Hope this helps,
    J.

  • Unable to find the utl_file_directory option in init.ora

    Hi all these are the contents of init.ora file in nacedell server.i did'nt find any thing as utl_file_directory to update with my directory created through sql*plus using
    command
    create directory dir as 'c:\dir';
    here are the contents of init.ora file
    cat init.ora command is giving contents as
    # $Header: init.ora 06-aug-98.10:24:40 atsukerm Exp $
    # Copyright (c) 1991, 1997, 1998 by Oracle Corporation
    # NAME
    # init.ora
    # FUNCTION
    # NOTES
    # MODIFIED
    # atsukerm 08/06/98 - fix for 8.1.
    # hpiao 06/05/97 - fix for 803
    # glavash 05/12/97 - add oracle_trace_enable comment
    # hpiao 04/22/97 - remove ifile=, events=, etc.
    # alingelb 09/19/94 - remove vms-specific stuff
    # dpawson 07/07/93 - add more comments regarded archive start
    # maporter 10/29/92 - Add vms_sga_use_gblpagfile=TRUE
    # jloaiza 03/07/92 - change ALPHA to BETA
    # danderso 02/26/92 - change db_block_cache_protect to dbblock_cache_p
    # ghallmar 02/03/92 - db_directory -> db_domain
    # maporter 01/12/92 - merge changes from branch 1.8.308.1
    # maporter 12/21/91 - bug 76493: Add control_files parameter
    # wbridge 12/03/91 - use of %c in archive format is discouraged
    # ghallmar 12/02/91 - add global_names=true, db_directory=us.acme.com
    # thayes 11/27/91 - Change default for cache_clone
    # jloaiza 08/13/91 - merge changes from branch 1.7.100.1
    # jloaiza 07/31/91 - add debug stuff
    # rlim 04/29/91 - removal of char_is_varchar2
    # Bridge 03/12/91 - log_allocation no longer exists
    # Wijaya 02/05/91 - remove obsolete parameters
    # Example INIT.ORA file
    # This file is provided by Oracle Corporation to help you customize
    # your RDBMS installation for your site. Important system parameters
    # are discussed, and example settings given.
    # Some parameter settings are generic to any size installation.
    # For parameters that require different values in different size
    # installations, three scenarios have been provided: SMALL, MEDIUM
    # and LARGE. Any parameter that needs to be tuned according to
    # installation size will have three settings, each one commented
    # according to installation size.
    # Use the following table to approximate the SGA size needed for the
    # three scenarious provided in this file:
    # -------Installation/Database Size------
    # SMALL MEDIUM LARGE
    # Block 2K 4500K 6800K 17000K
    # Size 4K 5500K 8800K 21000K
    # To set up a database that multiple instances will be using, place
    # all instance-specific parameters in one file, and then have all
    # of these files point to a master file using the IFILE command.
    # This way, when you change a public
    # parameter, it will automatically change on all instances. This is
    # necessary, since all instances must run with the same value for many
    # parameters. For example, if you choose to use private rollback segments,
    # these must be specified in different files, but since all gc_*
    # parameters must be the same on all instances, they should be in one file.
    # INSTRUCTIONS: Edit this file and the other INIT files it calls for
    # your site, either by using the values provided here or by providing
    # your own. Then place an IFILE= line into each instance-specific
    # INIT file that points at this file.
    # NOTE: Parameter values suggested in this file are based on conservative
    # estimates for computer memory availability. You should adjust values upward
    # for modern machines.
    # You may also consider using Database Configuration Assistant tool (DBCA)
    # to create INIT file and to size your initial set of tablespaces based
    # on the user input.
    # replace DEFAULT with your database name
    db_name=DEFAULT
    db_files = 80 # SMALL
    # db_files = 400 # MEDIUM
    # db_files = 1500 # LARGE
    db_file_multiblock_read_count = 8 # SMALL
    # db_file_multiblock_read_count = 16 # MEDIUM
    # db_file_multiblock_read_count = 32 # LARGE
    db_block_buffers = 100 # SMALL
    # db_block_buffers = 550 # MEDIUM
    # db_block_buffers = 3200 # LARGE
    shared_pool_size = 3500000 # SMALL
    # shared_pool_size = 5000000 # MEDIUM
    # shared_pool_size = 9000000 # LARGE
    log_checkpoint_interval = 10000
    processes = 50 # SMALL
    # processes = 100 # MEDIUM
    # processes = 200 # LARGE
    parallel_max_servers = 5 # SMALL
    # parallel_max_servers = 4 x (number of CPUs) # MEDIUM
    # parallel_max_servers = 4 x (number of CPUs) # LARGE
    log_buffer = 32768 # SMALL
    # log_buffer = 32768 # MEDIUM
    # log_buffer = 163840 # LARGE
    # audit_trail = true # if you want auditing
    # timed_statistics = true # if you want timed statistics
    max_dump_file_size = 10240 # limit trace file size to 5 Meg each
    # Uncommenting the line below will cause automatic archiving if archiving has
    # been enabled using ALTER DATABASE ARCHIVELOG.
    # log_archive_start = true
    # log_archive_dest = disk$rdbms:[oracle.archive]
    # log_archive_format = "T%TS%S.ARC"
    # If using private rollback segments, place lines of the following
    # form in each of your instance-specific init.ora files:
    # rollback_segments = (name1, name2)
    # If using public rollback segments, define how many
    # rollback segments each instance will pick up, using the formula
    # # of rollback segments = transactions / transactions_per_rollback_segment
    # In this example each instance will grab 40/5 = 8:
    # transactions = 40
    # transactions_per_rollback_segment = 5
    # Global Naming -- enforce that a dblink has same name as the db it connects to
    global_names = TRUE
    # Edit and uncomment the following line to provide the suffix that will be
    # appended to the db_name parameter (separated with a dot) and stored as the
    # global database name when a database is created. If your site uses
    # Internet Domain names for e-mail, then the part of your e-mail address after
    # the '@' is a good candidate for this parameter value.
    # db_domain = us.acme.com # global database name is db_name.db_domain
    # FOR DEVELOPMENT ONLY, ALWAYS TRY TO USE SYSTEM BACKING STORE
    # vms_sga_use_gblpagfil = TRUE
    # FOR BETA RELEASE ONLY. Enable debugging modes. Note that these can
    # adversely affect performance. On some non-VMS ports the db_block_cache_*
    # debugging modes have a severe effect on performance.
    #_db_block_cache_protect = true # memory protect buffers
    #event = "10210 trace name context forever, level 2" # data block checking
    #event = "10211 trace name context forever, level 2" # index block checking
    #event = "10235 trace name context forever, level 1" # memory heap checking
    #event = "10049 trace name context forever, level 2" # memory protect cursors
    # define parallel server (multi-instance) parameters
    #ifile = ora_system:initps.ora
    # define two control files by default
    control_files = (ora_control1, ora_control2)
    # Uncomment the following line if you wish to enable the Oracle Trace product
    # to trace server activity. This enables scheduling of server collections
    # from the Oracle Enterprise Manager Console.
    # Also, if the oracle_trace_collection_name parameter is non-null,
    # every session will write to the named collection, as well as enabling you
    # to schedule future collections from the console.
    # oracle_trace_enable = TRUE
    # Uncomment the following line, if you want to use some of the new 8.1
    # features. Please remember that using them may require some downgrade
    # actions if you later decide to move back to 8.0.
    #compatible = 8.1.0
    $

    There are strange things in the file you posted, are you sure that's your init.ora ? where did you find it ?
    Moreover, you use "cat" to list the file, but you name "c:\dir" the directory : what is your OS ?
    Furthermore, if you use directories, then you don't need to set utl_file_dir in init.ora, and directories don't show up within parameters, you can see them by
    SQL> select * from all_directories;

  • Is it necessary to prepare objects if use dbms_apply_admin to instantiation

    Metalink says instantiation of database objects for Oracle Streams involves the steps as:
    1. Prepare the objects for instantiation at the source site.
    2. Create a copy of the objects at the destination site (ifnecessary).
    3. Set the instantiation SCN for the objects at the destination site.
    My question is: if we didn't use exp/imp as we already has the objects in the destination database, do we still need the step one? Can't we execute the dbms_apply_admin directly?

    Hi,
    Yes you can issue the apply directly. If the tables are the same (I like to insert-select) then you need to run the following steps:
    1. Set up the q at the source (DBMS_STREAMS_ADM.SET_UP_QUEUE)
    2. Set up the q at the target
    3. Add the prop rules (DBMS_STREAMS_ADM.ADD_TABLE_PROPAGATION_RULES)
    4. Add the capture rules at the source
    5. Set the scn (from source) at the target (DBMS_APPLY_ADM.SET_SCHEMA_INSTANTIATION_SCN)
    6. add the apply rules
    7. start apply
    8. start capture
    You can skip the ones you have already done but I would stop what you have and start when everything is in place.
    Mike

Maybe you are looking for

  • Problem with opaque object/text showing as semi-transparent?

    I didn't start seeing this problem till today, but the past couple of times I've gone to create a new shape layer or text layer, it appears like it's at 50% opacity.  I've checked my layer settings, and they're all at 100% fill and opacity.  I can't

  • Can't move pictures between tabs

    First, let me start out by saying I am new to Photoshop Elements. I am using PSE 12 for digital scrapbooking. Last week, all of a sudden, I am unable to use the move tool to drag and drop an imported picture from one tab to another. In the past I was

  • How do I download a Tip Calculator for Samsung Reality U820 mobile?

    Hello, I'm new to this so bare with me.  I just got this phone and I've been trying to download a tip calculator. No success! lol Does anyone know how I can download a tip calculator from my mobile phone? Help! lol

  • Tab canvas error

    Dear All I am using forms 10g. I have a tabbed canvas and on that i have to create around 15 tabs. I have already created 10 tabs . Now if i try to add one more tab then when i run the form it is showing some error . Please check this error here :- h

  • Where to copy the codes for flow logic?

    Hi. I know that SE37 is to access the source code for function modules, and SE38 is to access the source codes for programs/reports. Does anyone know where I could get the codes for the<b> flow logic of the dialog screens</b> called by my programs? T