Streams Replication 10.2.0.4 (source) and 11.1.0.6 (Destination)

I am testing streams based replication between 10204 and 11106 databases. The destination db was down for a while (>10+hours) and after the destination db was brought up, I don't see the changes getting applied on the destination database. I don't see any apply errors. I have restarted the capture, propagation, and apply processes but still don't see the changes applied on the destination database. I am unable to troubleshoot any further. Since this is a test, I can do a reinstantiation but it would help me understand what went wrong in this case. I can provide any SQL output which you can use to help me.

What is the order you have restarted the streams.
Please follow the below order.
--On Source - Stop the capture process
exec dbms_capture_adm.stop_capture(capture_name => '<capture_name>');
--make sure it is stopped:
select capture_name, status from dba_capture;
-- On Destination - Stop the apply process:
exec dbms_apply_adm.stop_apply(apply_name => '<apply_name>');
-- Make sure it is stopped:
select apply_name, status from dba_apply;
-- On Source - Stop the propagation:
exec dbms_propagation_adm.stop_propagation(propagation_name => '<prop_name>');
-- Make sure it is stopped:
select propagation_name, status from dba_propagation;
-- On Source - Start the propagation:
exec dbms_propagation_adm.start_propagation(propagation_name => '<prop_name>');
--Make sure it has started:
select propagation_name, status from dba_propagation;
-- On Destination - Start the apply process:
exec dbms_apply_adm.start_apply(apply_name => '<apply_name>');
-- Make sure apply is started
select apply_name, status from dba_apply;
-- On Source - Start the capture process:
exec dbms_capture_adm.start_capture(capture_name => '<capture_name>');
-- Make sure capture is started
select capture_name, status from dba_capture;
Verify whether streams is working or not.

Similar Messages

  • Streams Replication: Logical Standby DB as source

    I don't have much experience with streams replications. So, the following might sound like a silly questions to Oracle Gurus:
    If the source database is a logical standby database, can stream replication be used to replicate some of the tables in the source database to the target DB ?
    The source and the target DB are 11g R2.
    Thanks in adavance:
    - Sanjay
    Edited by: sanjayku on Dec 8, 2010 4:38 PM

    Never done it, but I don't see any reason why it should not work.
    Streams, at capture site, is only a data dictionary game and in a logical standby your data dictionary is open read write.
    Streams, at capture site, never touch the source tables, in fact they may even not exists from Streams point of view,
    as it deals only with the redo that are generated.
    So Streams horizon is limited to the data dictionary, the log buffer, the archives and, in SYSAUX tablespace, all the LOGMNR_% tables. All these structures are read write in the logical standby. However, for the capture/propagation you may have to set to true the 'include_tagged_lcr' parameters.

  • How to check the time taking to extract rows from source and time load data into destination

    Hi,
    Recently I have started working on Optimizing an SSIS package in 2012. The package reads data from AS 400 server and load into SQL Server table.. No transformations are being used in the package. only ADO.Net Source and OLE DB Destination are using in the
    package.
    The SSIS package is extracting 6500 rows and loading into database per batch. This process is taking 18 seconds. I would like to know out of 18 secs how much time is being used only to extract data from the source and how much time is taking to write the
    data to the database per each batch.
    Any thoughts be greatly appreciated...
    Thanks,
    Venu.

    Hello 
    We need more information regarding your system. If you are using SQL 2014 then you can use the new DMV
    sys.dm_exec_query_profiles which is doing this exactly. Check out this URL: http://msdn.microsoft.com/en-us/library/dn223301.aspx
    While executing your SSIS project you can examine each and every process and get the percentage it already did and all the information regarding it.
      Ronen Ariely
     [Personal Site]    [Blog]    [Facebook]

  • No data found in Update (streams replication)

    Hi,
    Our database is setup for streams replication of few tables from source database DB1 to destination database DB2. The source tables have different primary key columns than the primary key columns at destination. All tables at source and destination have primary keys, unique keys and foreign keys. There are unique keys on source tables which are used as primary keys on destination. For example, table TAB1 at source DB1 has primary key column COL1 and unique key column COL2. Whereas at destination table TAB1 on DB2 has COL2 as primary key and COL1 is dropped from the LCR.
    We have problem now, inserts are replicated perfectly, but not updates. Updates are giving “no data found” error. I went through the oracle documentation and I tried following:
    1.     Setting keys using DBMS_APPLY_ADM.SET_KEY_COLUMNS. It didn’t work. Unique key column was set as key columns.
    2.     Setting update conflict handler using DBMS_APPLY_ADM.SET_UPDATE_CONFLICT_HANDLER. It didn’t work. Unique key column was set as resolution_column and “DISCARD” as method_name (parameters).
    Is there anything I am missing? Please help me in resolving this error. If you have any leads or sample code would help me greatly. Appreciated your help.
    Thanks

    Thanks for our time and help. Yes, you are right.
    FYI... we had supplemental logging. Our team tried with different configuration combinations yesterday. Finally, we found that unconditional supplemental logging must be there to resolve the issue. We had conditional supplemental logging thou. After changing it to unconditional, it was working. There is no need for update conflict handlers or substitute keys.
    Thanks

  • Streams replication in Oracle XE.

    Hi,
    I'm planning an implementation of Oracle Streams replication. Some of the considerations and facts are stated below.
    1. DDL Changes will be maintained.
    2. Replication will be Bi-Directional.
    3. The operating system on the source and downstream sites are the same.
    4. The hardware and operating system architecture on the source and downstream sites are the same.
    5. Both the source database and the downstream database are be running Oracle Database 10g (details below).
    Source Database
    Oracle Database 10g Express Edition Release 10.2.0.1.0 - Beta
    PL/SQL Release 10.2.0.1.0 - Beta
    CORE 10.2.0.1.0 Beta
    TNS for 32-bit Windows: Version 10.2.0.1.0 - Beta
    NLSRTL Version 10.2.0.1.0 - Beta
    Downstrean Database
    Personal Oracle Database 10g Release 10.1.0.2.0 - Production
    PL/SQL Release 10.1.0.2.0 - Production
    CORE 10.1.0.2.0 Production
    TNS for 32-bit Windows: Version 10.1.0.2.0 - Production
    NLSRTL Version 10.1.0.2.0 - Production
    Here I have found that Oracle XE (source) is not supporting the local capture process.
    My questions:
    1. Can I consider downstream capture in this scenario? (As I have Personal Oracle Database 10g Release 10.1.0.2.0 as downstream database)
    2. In case of archive log downstream capture what will be the most efficient way of redo log transportation.
    Thanks in advance.

    1. In a RAC cluster? The name I would put in the scripts is "insanity." Why? You are going to bring this instance to a crawl.
    2. No problem in doing a transformation. The problem was in your first question.
    3. I wouldn't worry much about monitoring it. I'd just get a stopwatch and see how many seconds before it crashes.
    If the data is in one schema in the database then just make it available, via object privs, to the others. Replicating it, as you have described, is likely going to be a painful experience in far more ways than just wasted storage.

  • Oracle 10g streams replication problem.

    Hi,
    Can someone help me oracle replication troubleshooting ?
    I have source and target databases. I have setup one-way stream replication successfully. Whatever data I insert into table A, it is replicated to target database succesfully.
    However, if I delete the records from the destination database and then it does not apply old values of the source database to destination database.
    I reset the START_SCN in the source database and then I setup destination SCN number using DBMS_APPLY_ADM.SET_SCHEMA_INSTANTIATION_SCN and started capture process on the source database.
    Can somebody help how should I recover the destination database ?

    Hi Basu,
    Thanks a lot for response
    I set up streams between between source and destination database using schema instantiation and setup SCN number for destination after which apply process apply all the changes and all it is woking file.
    Now I deleted records from table of the same schema in the destination database. Now how do I get all the records in this table using streams.
    I looked at the oracle doc and found that I need to do build using dbms_streams_capture package and I did that and after that I reset START_SCN to the old value on the source database. I also reset the SCN at the SCHEMA label on the destination database for apply process to re-apply the old changes. But all this did not help me to get old data.
    Do you know specific steps which I need to do to get old data ?
    Thanks a lot

  • Production moves to another server with existing streams replication

    Hi All,
    We have oracle bi directional streams replication setup between 2 server(us and uk). Everything is working as expected.
    But,We are going to move UK server from (ex: cam19 to cam29).
    Will it impact on replication setup.
    we will restore new server via cold backup.Also we will stopped all the process on both the sides ,before cold backup.
    Can you please suggest? What should we do before doing that.
    How we can avoid any problem while moving server.
    so it will not impact on replication.
    Thanks in advance!!!!
    Many Thanks
    nick

    Thanks a lotz Anurag..
    I have one small question not on same topic, Its regarding table add in existing replication setup.
    What happened ,When we add a new table to existing replication setup if any reason table is not replicating between two database then we have to remove the rules for that particular table and setup again. Some time what happened we got error "queue has errors" i dont know the ORA number.
    in that case what cases when apply process ABORETED and when we try to start the process it gives same error and ABORTED again.
    then we have remove the whole replication Manually and setup again. It's very horriable....
    Could you please help that before drop the rules for particular table then wht should we do ? Do we need to unscheduled the propagation process and then drop the rules becuase i read on metalink that negative rules drops while propagation process using the same rule set.
    Please Suggest!!!!!!!!!!
    Many Thanks

  • Streams Replication:Source database Physical or Logical Standby DB

    Can the source database in streams replication be a physical or logical standby database ? If so, is the process of configuring streams the same as a regular database ? Are there any best practices or different configuration if the source is Logical or Physical standby DB ?
    Thanks in advance.

    Never done it, but I don't see any reason why it should not work.
    Streams, at capture site, is only a data dictionary game and in a logical standby your data dictionary is open read write.
    Streams, at capture site, never touch the source tables, in fact they may even not exists from Streams point of view,
    as it deals only with the redo that are generated.
    So Streams horizon is limited to the data dictionary, the log buffer, the archives and, in SYSAUX tablespace, all the LOGMNR_% tables. All these structures are read write in the logical standby. However, for the capture/propagation you may have to set to true the 'include_tagged_lcr' parameters.

  • SQL Server replication and size differences of source and destination databases

    I set up snapshot replication for a DB between two SQL instances.  On the source instance, the DB shows as 106612.56MB with 34663.75MB as available free space.  I expected that the replica would then end up being 71948.81MB (106612.56 - 34663.75
    because it wouldn't replicate the white space).  The resultant replica database is showing as 35522.94MB.  The required data appears to be present in the replicated DB as the SSRS reports that use it are able to find the data they look for.  But
    why the large discrepancy in size between the source and replicated DB?  The replicated DB is less than 1/2 the size of the source DB.  I've searched around and can't seem to find any explanation.  I realize this isn't mirroring so the DBs will
    not be identical in size but I did not expect to see such a large difference between the two.  I am replicating all almost all articles (tables, stored procs, etc.) with the exception of a handful of stored procedures and user-defined functions that either
    reference invalid column names in a table (vendor bug) or reference another DB that is not present on the replica's instance.  I would expect these 4-5 articles can not account for a 37000 MB size difference between the two DBs.
    Please note that this has nothing to do with transaction log size.  I am specifically talking about the database size and am not looking at the size that combines both DB and TxLog size.
    Any insight?

    Another factor could be that on the publisher the data is distributed through pages, paragraphs and extents. Depending on your fill factor and the amount of deletes and your datatype, there could be space in the pages, paragraphs and extents which have not
    been reclaimed.
    During the bcp process which is part of the snapshot application process on the subscriber all the data will be in the tables in a contiguous fashion. I would suspect this would be why you have the difference in space usage.
    looking for a book on SQL Server 2008 Administration?
    http://www.amazon.com/Microsoft-Server-2008-Management-Administration/dp/067233044X looking for a book on SQL Server 2008 Full-Text Search?
    http://www.amazon.com/Pro-Full-Text-Search-Server-2008/dp/1430215941

  • Help needed regarding some open source and good media streaming server

    Hi
    I am searching for some open source and java based media streaming server which can facilitate live video streaming. Can anyone please suggest me some good streaming server.
    Thank you.

    Some observations:
    (1) The use of the Configuration.createRootApplicationModule() API is recommended only for console programs, not web applications, but it should work ok as long as your use of the appliation module is completely stateless (which from the code it looks like it is since you release the AM back to the pool on each request.)
    (2) You mention "Stateful" mode, but Configuration.createRootApplicationModule() only supports stateless mode, so you are effectively using Stateless mode.
    (3) You are passing true as the 2nd argument to Configuration.releaseRootApplicationModule() which means you are asking to immediately remove the application module instance from the pool. This will hurt the scalability of your application since each request will need to be served by creating a brand new instance of the application module.
    (4) You are explicitly calling disconnect(). This is not necessary.
    I would recommend:
    (1) Changing your 2nd argument to releaseRootApplicationModule() to false
    (2) Remove the explicit call to disconnect()
    (3) Given your usage pattern, I'd recommend calling viewobject.setForwardOnly(true) before calling viewobject.executeQuery() and iterating over the results. This will avoid any caching of the fetched view object results. Also ensure you've read section "27.2 Tuning Your View Objects for Best Performance" of the ADF Developer's Guide for Forms/4GL Developers guide on the ADF Learning Center at http://www.oracle.com/technology/products/adf/learnadf.html for more performance tips
    For example, if you are fetching 65 rows, make sure the fetch size of this view object is at least 66 so you can retried all the rows in one DB roundtrip.

  • Message filtering in propagation process (stream replication environment)

    Hi!
    We have fine configured stream replication in star topology:
    ORCL2 <=> ORCL1 <=> ORCL3
    Where the ORCL1 is "headquarters" and there is no message flow between ORCL2 and ORCL3.
    For some reason we want to filter messages in propagation processes, e.g. DML captured on ORCL1 should be replicated only to ORCL2 or only to ORCL3. There is one propagation process for each "satellite" database.
    To solve this problem I have written function:
    FUNCTION Replicate_Lcr (
    p_lcr IN SYS.lcr$_row_record)
    RETURN VARCHAR2 IS
    which will be making a decision whether to pass the message (return 'Y') or not (return 'N').
    But there is problem: rule is evaluated and function is executed (there is insert into 'stream_log_lcr' table) but value of the expression seems to be 'FALSE' and message (LCR) is not beeing sent to ORCL2 (or to ORCL3).
    When I remove function 'Replicate_Lcr' from propagation rule condition then every message captured by capture process on ORCL1 reaches destination database (ORCL2 or ORCL3).
    The second observation is that, if I run the same code on ORCL2 or ORCL3 then everything seems to be OK: there is insert into 'stream_log_lcr' table and DML captured on ORCL2 (or ORCL3) appears in ORCL1 ("headquarters").
    I suppose that this could be problem with other version of database on "headquarters" (ORCL1) or configuration issues.
    I will appreciate every suggestion.
    Databases:
    ORCL1: 64-bit Windows, ver. 10.2.0.4.0, Windows 2008 server
    ORCL2: 32-bit Windows, ver. 10.2.0.1.0, Windows XP
    ORCL3: 32-bit Windows, ver. 10.2.0.1.0, Windows XP
    SQL code run on ORCL1:
    CREATE TABLE stream_log_lcr (
    data DATE NOT NULL,
    msg SYS.lcr$_row_record NOT NULL
    -- simplified, always return 'Y'
    CREATE OR REPLACE FUNCTION Replicate_Lcr (
    p_lcr IN SYS.lcr$_row_record)
    RETURN VARCHAR2 IS
    PRAGMA AUTONOMOUS_TRANSACTION;
    BEGIN
    IF p_lcr IS NOT NULL
    THEN
    INSERT INTO stream_log_lcr
    VALUES (SYSDATE,
    p_lcr);
    COMMIT;
    END IF;
    RETURN 'Y';
    END;
    -- create propagation process with above function in rule condition
    BEGIN
    DBMS_STREAMS_ADM.add_schema_propagation_rules
    (schema_name => 'data_schema',
    streams_name => 'primary_to_secondary2',
    source_queue_name => 'strmadmin.capture_primary',
    destination_queue_name => 'strmadmin.from_primary@ORCL2',
    include_dml => TRUE,
    include_ddl => TRUE,
    source_database => 'ORCL1',
    and_condition => ' strmadmin.Replicate_Lcr(:dml) = ''Y'' ',
    inclusion_rule => TRUE,
    queue_to_queue => TRUE);
    END;
    -- check if function 'Replicate_Lcr' was evoked:
    SELECT * FROM stream_log_lcr ORDER BY data;

    hi porzer,
    In Propagation process ( source) also 0 errors. But in apply ( dest ) under statistics under server status is displaying as IDLE. And Coordinator status is APPLYING. In Capture (source) no error. In Applying ( dest ) no error. what else i can do please?
    up to now what i did i am telling:
    I had 2 databases had one table same table. one database i changed the mode to ARCHIVELOG mode. Another database is in NOARCHIVELOG mode only. In first database setup streams i run. And i run manually 2 .sql files and one .dat file like this :
    SQL>@e:\oracle\product\10.2.0\client_2\sysman\report\OTEST_ADMIN_NON_OMS_SETUP.sql
    SQL>host e:\oracle\product\10.2.0\client_2\sysman\report\OTEST_ADMIN_NON_OMS_exportimport.bat
    SQL>@e:\oracle\product\10.2.0\client_2\sysman\report\OTEST_ADMIN_NON_OMS_startup.sql
    Any thing else i can do? i didn't have metalink registration.i hope i am not boring you.
    Thanks in advance.

  • Extensive IO after Configuring DB Streams Replication

    Hi all,
    <br><br>
    I'm learning on configuring and managing Oracle Streams Replication.
    <br><br>
    I managed to configure a bidirectional Database replication using the PRE_INSTANTIATION_SETUP and POST_INSTANTIATION_SETUP procedures in the DBMS_STREAMS_ADM package between two databases (DB1 and DB2). I used RMAN DUPLICATE command for instantiation.
    <br><br>
    Here is my question:
    <br><br>
    Once the configuration is finished, <b>I noticed an extensive IO activities on the hardisks in both DB1 and DB2</b>, although there were no DML or DDL against any of the databases by users. Is that normal in Oracle Streams environment? What is the reason of it? May be it is this way only in the first few hours of finishing this configuration and eventually the IO will become stable.
    <br><br>
    Oracle 10g R2 on Windows XP SP2

    Could be the writing of data dictionary to redo logs on target and the mining of it on the source.
    Did it stop after a while?

  • Can you use streams replication to replicate an advanced queue?

    We need to be able to support failover of an Advanced Queue between a primary database instance and one or more alternate instances. To insure consitancy across the multiple-database instances, every enqueued and dequeued message must be replicated in the event of a failure on the primary node. TAF is used to automatically failover the App to an alternate database instance. Without getting into the details, Data Guard/Standby/RAC are NOT options.
    Questions:
    Is replication of an Advanced Queue supported via Streams Replication?
    Are there guidlines/recommendations on how this should be done/setup?

    No. AQ is not supported by Oracle Streams. User defined and Sys.AnyData are not supported types.
    You can create AQ propagation process from source to backup site. But you will need to dequeue both sites simultaniously.
    Or you can create schadow table (

  • Adobe Flash tried to play a live or recorded stream that does not exist. Source can't be found

    NOTE: This thread was started in the flash pro forum: http://forums.adobe.com/thread/898879?tstart=0 . However, because of adninjastrators recommandation, I open the thread here:
    Hello there,
    I have started a stream from Flash media encoder to flash media server. According to my encoder, it should be located at: "rtmp://localhost/live" and is called livestream.
    In the Flash  software I try and set the source of FLVPlayback component to "rtmp://localhost/live/livestream", and I get this error: "NetStream.Play.StreamNotFound : Adobe Flash tried to play a live or recorded stream that does not exist. Source can't be found.". Both the server and encoder is runnind and I am encoding.
    Too, when I try and open the html with the stream in a browser, nothing appears.
    What should I check?
    Thanks.
    Kind regards,
    Marius

    Thanks for your reply.
    Server, encoder and player are all on the same computer.
    Admin console confirms the existence of "livestream" of type "Live" and a "NetStream" called "ABAF". No idea what the latter is.
    Also, thought I'd mention that I have to start the servers from the Control Panel -> administrative tools -> services. If I try and start the server from the start menu, they dont start.
    Thank you for your time.
    Kind regards,
    Marius

  • How to Impliment Streams replication in a Single Database

    Hi,
    I need to impliment Oracle Streams in a single Database (Source and Destination are same--In Same database).
    I have four Diferent schemas in this database.
    i need to replicate some selected tables from each Schema (some selected columns in each table), and replicate it
    with other diff schema which is also resides in the same database.
    If anybody have any ideas please let me know. Thanks in advance.
    If you have any documentation please post here.
    Thanks,
    Ray

    Hello Ray,
    Please take a look at the following thread where I have given an example to replicate from schema ORDERS to SHIPPING on to a different database.
    setup streams for tables with source and destination schema is different
    The steps are almost same except the propagation is not used in this case. There would be only one queue to which capture would enqueue the messages and apply would consume the messages.
    You need to define capture and apply (as there is no propagation) on the same queue. The schema can be renamed using DBMS_STREAMS_ADM.RENAME_SCHEMA as shown in the example. If you would like to rename the table then use DBMS_STREAMS_ADM.RENAME_TABLE.
    Hope this helps. Let me know if you have further questions.
    Thanks,
    Rijesh

Maybe you are looking for

  • The transaction log for database 'Test_db' is full due to 'LOG_BACKUP'

    My dear All, Came up with another issue: App team is pushing the data from one Prod1 server 'test_1db' to another Prod2 server 'User_db' through a job, here while pushing the data after some duration job is failing and throwing the following error 'E

  • External HDD not recognized

    I have a 1tb external hdd that i can't seem to find, on my desktop, in finder, in disk utilities or even the system profiler. it's got my 20gb itunes library and about 150 gigs worth of movies on it so i'd like to try to get it working again, without

  • How do I share a folder permanently to guest user - no internet connection

    Hi, sorry but ive tried looking everywhere and cannot find the answer. Im the main user and admin of my macbook pro, I have also set up a guest account so any user can login with no password and use the computer. However, I would like to permanently

  • Using ipod classic to store complete library to transfer to new hard drive:

    My itunes files are about to outgrow my hard drive. Can I use an ipod classic (7th gen) to store my entire library, and then, after installing a larger hard drive, "re-copy" my library from the ipod onto the new hard drive? And would it retain the fi

  • C# using ExecuteThisJavascript and appRightsValidate

    Hello,   I am trying to do the following and i keep getting the error "The server threw an exception. (Exception from HRESULT: 0x80010105 (RPC_E_SERVERFAULT))" on the actual ExecuteThisJavascript line.  Maybe ExecuteThisJavascript doesnt have access