Oracle Streams on a Rac Environment

Hi
I have some questions with respect to Setting up Streams on a rac Environment.Would appreciate a quick response as I need the answers by tommorrow.Any help would be greatly appreciated.Here are the questions
1> Do we have to create capture process for each active instance on only 1 capture process will do?
2> If yes then do they need to have a seperate queue for each one?
3> How will the apply process access multiple capture process and the propogation take place?
4> can only 2 tables in the source be replicated instead of the entire database?
5> In case if we use a push job if both the primary and secondary go down how can we move to the third instance and use it?
6> If the instance goes down do we have to restart the capture process once again?
7>What is the best suited for rac - ASM/RAW FILES with respect to Streams?
Regards
Shweta

Streams in 9iR2 RAC environment mines only from archive logs not online redo logs. This restriction is lifted in 10g RAC. If you choose to go thru the downstream capture route in 10g then you can only mine from archive logs in 10gR1.
Having said the above here are my answers:
1> Do we have to create capture process for each active instance or only 1 capture process will do?
You can run multiple capture processes each on difference instance in RAC. Unless you have a requirement to do so, a single capture process would suffice. The in-memory queue should also be on the same instance as the capture process is running from.
2> If yes then do they need to have a seperate queue for each one?
YES
3> How will the apply process access multiple capture process and the propogation take place?
Propagation is from a source queue to the destination queue. If the destination is a single instance database, then you can direct propagations for all of your capture(s) into a single apply queue. If the destination is also RAC then you can run multiple apply processes on each node and apply changes for specific set of tables. Maintenance would be something to think about here along with what happens when one node goes down.
4> can only 2 tables in the source be replicated instead of the entire database?
YES. Streams is flexible to let you decide what level you want to replicate.
5> In case if we use a push job if both the primary and secondary go down how can we move to the third instance and use it?
In theory propagation is a push job. There are certain things you need to configure correctly. If done, then you can move the entire streams configuration to any of the surviving node(s).
6> If the instance goes down do we have to restart the capture process once again?
In 9iR2 you have to restart the streams processes. In 10g the streams processes automatically migrate and restart at the new "owning" instance. In both versions, Queue ownership is transferred automatically to the surviving instance.
7> What is the best suited for rac - ASM/RAW FILES with respect to Streams?
Streams is independent of the storage system you use. I cannot think of any correlation here.

Similar Messages

  • Performance tuning and Periodic Maintance in Oracle Streaming Environment

    We had Setup the Bi-Directional Oracle Streaming between two remote Sites each of 2-Node RAC Databases
    This is Our Enviroment Summary.
    Database Oracle 10g R2 version 10.2.0.4.0
    Os: Solaris[tm] OE (64-bit)
    Currenly Oracle Streaming working Successfully and I'm Daily Monitor the Same.
    As Mention in the Master Note for Streams Performance Recommendations [ID 335516.1]
    Purging Streams Checkpoints
    10.2: Alter the capture parameter CHECKPOINT_RETENTION_TIME from the default retention of 60 days to a realistic value for your database.
    A typical setting might be to retain 7 days worth of checkpoint metadata :
    exec dbms_capture_adm.alter_capture(capture_name=>'your_capture', checkpoint_retention_time=> 7);
    My Query
    ===> Currenly In My Environment CHECKPOINT_RETENTION_TIME is as default 60 days
    I want to change the checkpoint_retention_time=> 7 so what should I take care for before execute the above command in my Live Streaming Environment.
    Edited by: user8171787 on Apr 13, 2011 11:00 PM

    We had Setup the Bi-Directional Oracle Streaming between two remote Sites each of 2-Node RAC Databases
    This is Our Enviroment Summary.
    Database Oracle 10g R2 version 10.2.0.4.0
    Os: Solaris[tm] OE (64-bit)
    Currenly Oracle Streaming working Successfully and I'm Daily Monitor the Same.
    As Mention in the Master Note for Streams Performance Recommendations [ID 335516.1]
    Purging Streams Checkpoints
    10.2: Alter the capture parameter CHECKPOINT_RETENTION_TIME from the default retention of 60 days to a realistic value for your database.
    A typical setting might be to retain 7 days worth of checkpoint metadata :
    exec dbms_capture_adm.alter_capture(capture_name=>'your_capture', checkpoint_retention_time=> 7);
    My Query
    ===> Currenly In My Environment CHECKPOINT_RETENTION_TIME is as default 60 days
    I want to change the checkpoint_retention_time=> 7 so what should I take care for before execute the above command in my Live Streaming Environment.
    Edited by: user8171787 on Apr 13, 2011 11:00 PM

  • How to create a wallet in oracle RAC environment

    How to create a wallet in oracle RAC environment.
    While running following command "alter system set encryption key identified by "thalesdata4";
    I am getting error message "cannot auto create wallet" or "failed to open wallet.
    Please suggest correct way to create a wallet in RAC environment.
    Thanks
    Sudhir

    hi,
    please refer for detailed explanation
    Master Note for SSL Configuration in Fusion Middleware 11g [ID 1218695.1]
    regards

  • Calculating total memory in oracle RAC environment

    I have to calculate total memry in RAC environment.
    For shared and buffer pool I execute show sga.
    For UGA and PGA I execute statement that have two different values.
    This is my two different methot for calculating total memory in oracle RAC environment.
    Why I have very different value in this 2 statements on pga values?
    first stat
    with vs as
    select 'PGA: ' pid
    ,iid
    ,session_pga_memory + session_uga_memory bytes
    from (select inst_id iid
    ,(select ss.value
    from gv$sesstat ss
    where ss.sid = s.sid
    and ss.inst_id = s.inst_id
    and ss.statistic# = 20) session_pga_memory
    ,(select ss.value
    from gv$sesstat ss
    where ss.sid = s.sid
    and ss.inst_id = s.inst_id
    and ss.statistic# = 15) session_uga_memory
    from gv$session s)
    union all
    select 'SGA: ' || name pid
    ,s.inst_id iid
    ,value bytes
    from gv$sga s
    select distinct iid, pid, sum(bytes) over (partition by iid, pid) bytes from vs
    IID PID BYTES
    1 PGA: 196764792 <=====
    1 SGA: Database Buffers 318767104
    1 SGA: Fixed Size 733688
    1 SGA: Redo Buffers 811008
    1 SGA: Variable Size 335544320
    2 PGA: 77159560 <=====
    2 SGA: Database Buffers 318767104
    2 SGA: Fixed Size 733688
    2 SGA: Redo Buffers 811008
    2 SGA: Variable Size 335544320
    second stat
    with vs as
    select 'PGA: ' pid
    ,p.inst_id iid
    ,p.pga_alloc_mem bytes
    from gv$session s
    ,gv$sesstat pcur
    ,gv$process p
    where pcur.statistic# in ( 20 -- = session pga memory
    ,15 -- = session uga memory
    and s.paddr = p.addr
    and pcur.sid = s.sid
    and pcur.INST_ID = s.INST_ID
    and pcur.INST_ID = p.INST_ID
    union all
    select 'SGA: ' || name pid
    ,s.inst_id iid
    ,value bytes
    from gv$sga s
    select distinct iid, pid, sum(bytes) over (partition by iid, pid) bytes from vs
    IID PID BYTES
    1 PGA: 342558636 <=====
    1 SGA: Database Buffers 318767104
    1 SGA: Fixed Size 733688
    1 SGA: Redo Buffers 811008
    1 SGA: Variable Size 335544320
    2 PGA: 186091416 <=====
    2 SGA: Database Buffers 318767104
    2 SGA: Fixed Size 733688
    2 SGA: Redo Buffers 811008
    2 SGA: Variable Size 335544320

    I'm sorry but it is not clear to me.
    - From v$session (1th stmt) I have
    nearly 196MB of PGA mem on instance 1
    and
    nearly 77MB of PGA mem on instance 2
    - From v$process (2th stmt) I have
    nearly 342MB of PGA mem on instance 1
    and
    nearly 186MB of PGA mem on instance 2
    then...
    342+186 - 196+77 = nearly 255MB of memory allocated by oracle processes but free?
    if I want calculate the total thing of the amount of the allocated memory from Oracle...It is more correct 2th statement that query v$process...it is true?

  • Are multiple PHYSICAL databases supported in one Oracle 10g RAC environment

    Hi alls,
    as of  Metalink 220970.1 Oracle RAC is also supporting different databases in one cluster installation. RAC handles any resource as a service and it doesn't matter if these services belongs to only one or to different databases. You install the Oracle Clusterware only once and you create any service you want to make high available.
    So is technically possible to install multiple databases on same Oracle Rac environment.
    My doubts are related to  SAP , does SAP certify such environments ?? we could have  one SAP R/3 database  and SAP BW database co-exist in a single Oracle RAC environment. or also co-exist SAP database with a non-SAP database (an already existing application) in the same Oracle Rac environment.
    Any comment would be higly appreciated.
    Silvio Brandani

    We have ECC, BI, PI and Portal running on same Oracle RAC environment.  We have one RAC for QA systems and one for PRD systems. We are not running any SAP applications along with Non-SAP applications on RAC.  Keeping SAP and non-SAP apps separate would be a way to go.
    Hope this helps.
    Thanks,
    Naveed

  • Transaction Recovery within an Oracle RAC environment

    Good evening everyone.
    I need some help with Oracle 11gR1 RAC transaction-level recovery issues. Here's the scenario.
    We have a three(3) node RAC Cluster running Oracle 11g R1. The Web UI portion of the application connects through WLS 9.2.3 with connection pooling set. We also have a command-line/SQL*Developer component that uses a TNSNAMES file that allows for both failover and load balancing. Within either the UI or the command line portion of the application, a user can run a process by which invokes one or more PL/SQL Packages to be invoked. The exact location of the physical to the database is dependent on which server is chosen from either the connection pooling or the TNSNAMES.ORA Load Balancing option.
    In the normal world, the process executes and all is good. The status of the execution of this process is updated by the Packages once completed. The problem we are encountering is when an Oracle Instance fails. Here's where I need some help. For Application-level (Transaction Level) recovery, the database instances are first recovered by the database background proccesses and then Users must determine which processes were in flight and either re-execute them (if restart processing is part of the process) or remove any changes and restart from scratch. Given that the database instance does not record which processes are "in flight" it is the responsibility of the application to perform its own recovery processing. Is this still true?
    If an instance fails, are "in flight" transactions/connections moved to other instances in the Grid/RAC environment? I don't think this is possible but I don't remember if this was accomplished through a combination of Application and Database Server features that provide feedback between each other. How is the underlying application notified of the change if such an issue occurs? I remember something similar to this in older versions of Oracle but I cannot remember what it was callled.
    Any help or guidance would be great as our client is being extremely difficult in pressing this issue.
    Thanks in advance
    Stephen Karniotis
    Project Architect - Compuware
    [email protected]
    (248) 408-2918

    You have not indicated whether you are using TAF or FCF ... that would be the first place to start.
    My recommendation would be to let Oracle roll back the database changes and have the application resubmit the most recent work.
    If the application knows what it did since the last "COMMIT" then you should be fine with the possible exception of variables stored
    in packages. Depending on packages retaining values is an issue best solved with PRAGMA SERIALLY_REUSABLE ... in other words
    not using the retention feature.

  • In Oracle RAC environment which is OLTP database? load balancing advantage.

    In Oracle RAC environment which is a OLTP database? List the options for load balancing along with their advantages.

    You can use a software load balancer.
    https://forums.oracle.com/forums/search.jspa?threadID=&q=Software+AND+Load+AND+Balancer&objID=c3&dateRange=all&userID=&numResults=15&rankBy=10001
    Installing and Configuring Web Cache 10g and Oracle E-Business Suite 12 [ID 380486.1]
    Thanks,
    Hussein

  • Advice on implementing oracle streams on RAC 11.2 data warehouse database

    Hi,
    I would like to know high level overview on implementing one-way schema level replication within same database using oracle streams on RAC 11.2 data warehouse database.
    Are there any points that should be kept in mind before drafting the implementation plan.
    Please share your thougts and experiences.
    Thanks in advance
    srh

    Hi,
    I would like to know high level overview on implementing one-way schema level replication within same database using oracle streams on RAC 11.2 data warehouse database.
    Are there any points that should be kept in mind before drafting the implementation plan.
    Please share your thougts and experiences.
    Thanks in advance
    srh

  • Oracle stream with rac

    hi ,
    I’m trying to configure oracle stream one direction ( tables level )..
    my source and destination database is 10.2.0.4 and destination in rac (three nodes)
    source database is one node
    please help if there is some configuration required in rac

    Hello
    Please find the Oracle RAC Specific Configuration while implementing Oracle Bidirectional streaming Setup
    #Propagation
    queue_to_queue parameter
    -- Assign Primary / Secondary Instance IDs
    dbms_aqadm.alter_queue_table(queue_table => 'capture_srctab',
    primary_instance => 1,
    secondary_instance => 2);
    dbms_aqadm.alter_queue_table(queue_table => 'apply_srctab',
    primary_instance => 1,
    secondary_instance => 2);
    All Streams processing is done at the owning instance of the queue used by
    the Streams client. To determine the owning instance of each ANYDATA queue
    in a database, run the following query:
    SELECT q.OWNER, q.NAME, t.QUEUE_TABLE, t.OWNER_INSTANCE
    FROM DBA_QUEUES q, DBA_QUEUE_TABLES t
    WHERE t.OBJECT_TYPE = 'SYS.ANYDATA' AND
    q.QUEUE_TABLE = t.QUEUE_TABLE AND
    q.OWNER = t.OWNER;
    #tbsnames.ora
    Service_name=global_name=db_name
    Please find the metalink document
    10gR2 Streams Recommended Configuration [ID 418755.1]
    Regards
    Hitgon

  • ASM Installation on Oracle 11g Clusterware (RAC) environment

    Hi All,
    I am trying to setup Oracle 11g Standared Edition RAC+ASM on RedHat Linux 5.0 VM ware box. As part of this RAC setup successfully completed. For this i have used raw devices and mounted using NFS.
    In many of forumns i have read that ASM installtion on a cluster envioronmnet is different than non cluster environment.
    I dont know how to start ASM installtion on RAC environment. Please share any documents if you have?
    Thanks,
    Rakesh

    will the steps need to be done on two nodes of cluster or it is sufficient on first node.
    "raw device" for OCR, VOTE, SPFILE_FOR ASM and ASM DISKGROUPs
    before do "raw devices" you have to fdisk(make partitions) on share storages
    node1:
    # fdisk /dev/sdf
    # ls /dev/sdf*
    node2:
    # ls /dev/sdf*
    don't find...,so just fdisk -> l and -> w
    fdisk how? http://linux.about.com/od/commands/l/blcmdl8_fdisk.htm
    Example: /etc/sysconfig/rawdevices do it every nodes
    #Oracle OCR File +~280M+
    /dev/raw/raw1 /dev/sdf1
    #Oracle Voting File +~280M+
    /dev/raw/raw2 /dev/sdf2
    #Oracle ASM spfile ~50M+
    /dev/raw/raw3 /dev/sdf3
    #Oracle ASM DISK Group1
    /dev/raw/raw4 /dev/sdg1
    #Oracle ASM DISK Group2
    /dev/raw/raw5 /dev/sdh1
    And oracle user.. can read /dev/raw/raw* You should find on every nodes
    http://oraclepitstop.wordpress.com/2008/02/15/raw-devices-on-rhel-5-or-oel-5/
    ls -la /dev/raw/raw*
    crw-rw---- 1 root oinstall 162, 1 Jan 13 12:53 /dev/raw/raw1
    crw-rw---- 1 oracle oinstall 162, 2 Jan 13 12:53 /dev/raw/raw2
    crw-rw---- 1 oracle oinstall 162, 3 Jan 13 12:53 /dev/raw/raw3
    crw-rw---- 1 oracle oinstall 163, 1 Jan 13 12:53 /dev/raw/raw4
    crw-rw---- 1 oracle oinstall 164, 1 Jan 13 12:53 /dev/raw/raw5
    do it on node1 but you have to pass phrase on every nodes Before
    http://www.puddingonline.com/~dave/publications/SSH-with-Keys-HOWTO/document/html/SSH-with-Keys-HOWTO-5.html
    example:
    node01:
    $ ssh node01 hostname
    node01
    $ ssh node02 hostname
    node02
    - Install + Setup Clusterware:
    OCR = /dev/raw/raw1
    VOTE = /dev/raw/raw2
    - Install Oracle Database for ASM Home
    spfile for ASM = /dev/raw/raw3
    - after ASM started... create disk groups from /dev/raw/raw4 and /dev/raw/raw5
    - Install Oracle Database for RDBMS Home
    - Create Database to use ASM diskgroups
    http://www.oracle-base.com/articles/11g/OracleDB11gR1RACInstallationOnRHEL5UsingVMwareESXAndNFS.php
    Did you followed the same procedure to set up Oracle 11g RAC+ASM on RHEL 5.0.I'd done(test 11gRAC) it on RHEL 4 + 11g + ASM(on raw device)
    on production, I use ASMlib... + ASM + 10g
    you can read on metalink to help idea
    465001.1
    357492.1
    605828.1
    564580.1
    on http://startoracle.com/2007/09/30/so-you-want-to-play-with-oracle-11gs-rac-heres-how/
    Oracle 11g’s RAC.. I think.. that can help you ;)
    Good Luck
    Edited by: Surachart Opun (HunterX) on Jun 26, 2009 11:22 AM
    Example from IBM... Deploying Oracle RAC 11g R1 on RHEL 5 or SLES 10 with Oracle ASM on the IBM DS3400, DS4200, DS4700, and DS4800 Storage Subsystems
    http://www-03.ibm.com/support/techdocs/atsmastr.nsf/WebIndex/WP101323
    Edited by: Surachart Opun (HunterX) on Jun 26, 2009 11:27 AM

  • How locking take place in oracle rac environment?

    how locking take place in oracle rac environment?
    Suppose from one session, user is updating and from other session same rows are being selected then how this locking take place in Oracle RAC?

    user11936985 wrote:
    how locking take place in oracle rac environment?
    Suppose from one session, user is updating and from other session same rows are being selected then how this locking take place in Oracle RAC?In the case of one session updating and the other selecting, there is no locking issue, regardless of whether it's single instance or RAC.
    The update will take appropriate table (TM) and row-level (TX) locks, but the select will not take any locks (unless it's a select for update), so, there should be no problem.
    Oracle will use read consistency to guarantee that the selected results are self-consistent and consistent with the point in time of the start of the query.
    Hope that helps,
    -Mark

  • A sample server specification for Oracle RAC environment

    Hi,
        Our project has decided to change the single instance database to a RAC environment. Can any one provide a sample server specification to be analysed based on our project.
    For example minimum processor/RAM....
    Thanks

    This is the simplest installation you can get, but if you want to do a fast response file based installation, there it is.

  • Register Oracle Streams with OID

    I'm trying to setup an Oracle Streams environment that registers queues with OID. I have the db registered, and set global_toppic_enabled=true. DB is in archivemode. When I try to setup a queue with:
    BEGIN
    DBMS_STREAMS_ADM.SET_UP_QUEUE(
    queue_table => 'STREAMS_QUEUE_TABLE',
    queue_name => 'STREAMS_QUEUE',
    queue_user => 'STRMADMIN');
    END;
    I get
    Error report:
    ORA-00600: internal error code, arguments: [kcbgtcr_5], [52583], [4], [0], [], [], [], []
    ORA-06512: at "SYS.DBMS_STREAMS_ADM", line 739
    ORA-06512: at line 2
    00600. 00000 - "internal error code, arguments: [%s], [%s], [%s], [%s], [%s], [%s], [%s], [%s]"
    *Cause:    This is the generic internal error number for Oracle program
    exceptions.     This indicates that a process has encountered an
    exceptional condition.
    *Action:   Report as a bug - the first argument is the internal error number
    Has anyone run into this? I searched metalink, but couldn't find anything. I'm running 10.2.0.1 on Windows 2K.
    Thanks in advance.

    I never use streams with OID but check Bug 4996133 - OERI[kcbgtcr_5] updating an IOT in RAC environment.
    I would consider to upgrade db to 10.2.0.3 - it is first really stable release of 10gR2
    Regards,
    Serge

  • Oracle Streams & Oracle Real Application Clusters

    Hello...i'am developing a new replication system to my company using Oracle Streams. I have already achieved data replication to a downstream database but now i would like to do it but in an RAC environment. So, i will appreciate any help you can give me. Best regards, walny

    I've been researching but now i have another doubt, i have a cluster of five instances, two of them donwstream, one primary and one secundary, i don't now if the standby redo log files configured for the primary instance will be the same for the secundary instance, what i want to achieve is the HA of the replication environment, so if i configured standby redo log files in both instances and with just one group the problem is solved, i'll be wasting resources.
    i hope you can help me
    regards
    Edited by: walny on 08-abr-2010 10:45
    Edited by: walny on 08-abr-2010 10:46

  • Streams Setup from RAC to Single instance

    Does anyone have a document to setup streams from RAC to Non RAC. I successfully setup streams on 2 single instances but I am having issues in replicating, Streams is setup on node1 or Rac and Apply process is also setup on single node. but data is not replicating.
    Appreciate any suggestions.

    From Metalink Note 418755.1:
    Additional Configuration for RAC Environments for a Source Database Archive Logs
    The archive log threads from all instances must be available to any instance
    running a capture process. This is true for both local and downstream capture.
    Queue Ownership
    When Streams is configured in a RAC environment, each queue table has an
    "owning" instance. All queues within an individual queue table are owned by
    the same instance. The Streams components (capture/propagation/apply) all
    use that same owning instance to perform their work. This means that
    + a capture process is run at the owning instance of the source queue.
    + a propagation job must run at the owning instance of the queue
    + a propagation job must connect to the owning instance of the target queue.
    Ownership of the queue can be configured to remain on a specific instance,
    as long as that instance is available, by setting the PRIMARY _INSTANCE
    and/or SECONDARY_INSTANCE parameters of DBMS_AQADM.ALTER_QUEUE_TABLE.
    If the primary_instance is set to a specific instance (ie, not 0), the queue
    ownership will return to the specified instance whenever the instance is up.
    Capture will automatically follow the ownership of the queue.If the ownership
    changes while capture is running, capture will stop on the current instance
    and restart at the new owner instance.
    For queues created with Oracle Database 10g Release 2, a service will be
    created with the service name= schema.queue and the network name
    SYS$schema.queue.global_name for that queue. If the global_name of the
    database does not match the db_name.db_domain name of the database, be sure
    to include the global_name as a service name in the init.ora.
    For propagations created with the Oracle Database 10g Release 2 code with
    the queue_to_queue parameter to TRUE, the propagation job will deliver only
    to the specific queue identified. Also, the source dblink for the target
    database connect descriptor must specify the correct service (global name of
    the target database ) to connect to the target database. For example, the
    tnsnames.ora entry for the target database should include the CONNECT_DATA
    clause in the connect descriptor for the target database. This claus should
    specify (CONNECT_DATA=(SERVICE_NAME='global_name of target database')).
    Do NOT include a specific INSTANCE in the CONNECT_DATA clause.
    For example, consider the tnsnames.ora file for a database with the global name
    db.mycompany.com. Assume that the alias name for the first instance is db1 and
    that the alias for the second instance is db2. The tnsnames.ora file for this
    database might include the following entries:
    db.mycompany.com=
    (description=
    (load_balance=on)
    (address=(protocol=tcp)(host=node1-vip)(port=1521))
    (address=(protocol=tcp)(host=node2-vip)(port=1521))
    (connect_data=
    (service_name=db.mycompany.com)))
    db1.mycompany.com=
    (description=
    (address=(protocol=tcp)(host=node1-vip)(port=1521))
    (connect_data=
    (service_name=db.mycompany.com)
    (instance_name=db1)))
    db2.mycompany.com=
    (description=
    (address=(protocol=tcp)(host=node2-vip)(port=1521))
    (connect_data=
    (service_name=db.mycompany.com)
    (instance_name=db2)))
    Use the italicized tnsnames.ora alias in the target database link USING clause.
    DBA_SERVICES lists all services for the database. GV$ACTIVE_SERVICES identifies
    all active services for the database In non_RAC configurations, the service
    name will typically be the global_name. However, it is possible for users to
    manually create alternative services and use them in the TNS connect_data
    specification . For RAC configurations, the service will appear in these views
    as SYS$schema.queue.global_name.
    Propagation Restart
    Use the procedures START_PROPAGATION and STOP_PROPAGATION from
    DBMS_PROPAGATION_ADM to enable and disable the propagation schedule.
    These procedures automatically handle queue_to_queue propagation.
    Example:
    exec DBMS_PROPAGATION_ADM.stop_propagation('name_of_propagation'); or
    exec DBMS_PROPAGATION_ADM.stop_propagation('name_of_propagation',force=>true);
    exec DBMS_PROPAGATION_ADM.start_propagation('name_of_propagation');
    If you use the lower level DBMS_AQADM procedures to manage the propagation schedule,
    be sure to explicitly specify the destination_queue name when queue_to_queue propagation has been configured.
    Example:
    DBMS_AQADM.UNSCHEDULE_PROPAGATION('source_queue_name','destination',destination_queue=>'specific_queue');
    DBMS_AQADM.SCHEDULE_PROPAGATION('source_queue_name','destination',destination_queue=>'specific_queue');, DBMS_AQADM.ENABLE_PROPAGATION_SCHEDULE('source_queue_name','destination',destination_queue=>'specific_queue');,
    DBMS_AQADM.DISABLE_PROPAGATION_SCHEDULE('source_queue_name','destination',destination_queue=>'specific_queue');, DBMS_AQADM.ALTER_PROPAGATION_SCHEDULE('source_queue_name','destination',destination_queue=>'specific_queue');
    Changing the GLOBAL_NAME of the Source Database
    See the OPERATION section on Global_name below. The following are some
    additional considerations when running in a RAC environment.
    If the GLOBAL_NAME of the database is changed, ensure that any propagations
    are dropped and recreated with the queue_to_queue parameter set to TRUE.
    In addition, if the GLOBAL_NAME does not match the db_name.db_domain of the
    database, include the global_name for the queue (NETWORK_NAME in DBA_QUEUES)
    in the list of services for the database in the database parameter
    initialization file.
    Section 4. Target Site Configuration
    The following recommendations apply to target databases, ie, databases in which
    Streams apply is configured.
    1. Privileges
    Grant Explicit Privileges to APPLY_USER for the user tables
    Examples:
    Privileges for table level DML: INSERT/UPDATE/DELETE,
    Privileges for table level DDL: CREATE (ANY) TABLE , CREATE (ANY) INDEX,
    CREATE (ANY) PROCEDURE
    2. Instantiation
    Set Instantiation SCNs manually if not using export/import. If manually
    configuring the instantiation scn for each table within the schema, use the
    RECURSIVE=>TRUE option on the DBMS_STREAMS_ADM.SET_SCHEMA_INSTANTIATION_SCN
    procedure
    For DDL Set Instantiation SCN at next higher level(ie,SCHEMA or GLOBAL level).
    3. Conflict Resolution
    If updates will be performed in multiple databases for the same shared
    object, be sure to configure conflict resolution. See the Streams
    Replication Administrator's Guide Chapter 3 Streams Conflict Resolution,
    for more detail.
    To simplify conflict resolution on tables with LOB columns, create an error
    handler to handle errors for the table. When registering the handler using
    the DBMS_APPLY_ADM.SET_DML_HANDLER procedure, be sure to specify the
    ASSEMBLE_LOBS parameter as TRUE.
    In Streams Concepts manual 10.2 chapter 22: Monitoring Apply
    Displaying detailed information about Apply errors.
    4. Apply Process Configuration
    A. Rules
    If the maintain_* procedures are not suitable for your environment,
    please use the ADD_RULES  procedures (ADDTABLE_RULES , ADD_SCHEMA_RULES ,
    ADD_GLOBAL_RULES (for DML and DDL), ADD_SUBSET_RULES (DML only).
    These procedures minimize the number of steps required to configure Streams
    processes. Also, it is possible to create rules for non-existent objects,
    so be sure to check the spelling of each object specified in a rule carefully.
    APPLY can be configured with or without a ruleset. The ADD_GLOBAL_RULES can
    be used to apply all changes in the queue for the database. If no ruleset is
    specified for the apply process, all changes in the queue are processed by the apply process.
    A single Streams apply can process rules for multiple tables or schemas
    located in a single queue that are received from a single source database .
    For best performance, rules should be simple. Rules that include LIKE clauses are
    not simple and will impact the performance of Streams.
    To eliminate changes for particular tables or objects, specify the
    include_tagged_lcr clause along with the table or object name in the
    negative rule set for the Streams process. Setting this clause will
    eliminate all changes, tagged or not, for the table or object.
    B. Parameters
    Set the following parameters after a apply process is created:
    + DISABLE_ON_ERROR=N Default: Y
    If Y, then the apply process is disabled on the first unresolved error,
    even if the error is not fatal.
    If N, then the apply process continues regardless of unresolved errors.
    + PARALLELISM=3* Number of CPU Default: 1
    Apply parameters can be set using the SET_PARAMETER procedure from the
    DBMS_APPLY_ADM package. For example, to set the DISABLE_ON_ERROR parameter
    of the streams apply process named APPLY_EX, use the following syntax while
    logged in as the Streams Administrator:
    exec dbms_apply_adm.set_parameter('apply_ex','disable_on_error','n');
    Change the apply parallelism parameter recommendation to a lower number.
    In general, try 4 or 8 and increase or decrease as necessary for your workload.
    In some cases, performance can be improved by setting the following hidden
    parameter. This parameter should be set when the major workload is UPDATEs
    and the updates are performed on just a few columns of a many-column table.
    + DYNAMICSTMTS=Y Default: N
    If Y, then for UPDATE statements, the apply process will optimize the
    generation of SQL statements based on required columns.
    CHECKPOINTFREQUENCY=1000
    Increase the frequency of logminer checkpoints especially in a
    database with significant LOB or DDL activity.
    exec dbms_capture_adm.set_parameter('capture_ex','_checkpoint_frequency','1000');
    5. Additional Configuration for RAC Environments for a Apply Database
    Queue Ownership
    When Streams is configured in a RAC environment, each queue table has an
    "owning" instance. All queues within an individual queue table are owned
    by the same instance. The Streams components (capture/propagation/apply)
    all use that same owning instance to perform their work. This means that
    the database link specified in the propagation must connect to the owning
    instance of the target queue. the apply process is run at the owning instance
    of the target queue
    Ownership of the queue can be configured to remain on a specific instance,
    as long as that instance is available, by setting the PRIMARY _INSTANCE and
    SECONDARY_INSTANCE parameters of DBMS_AQADM.ALTER_QUEUE_TABLE. If the
    primary_instance is set to a specific instance (ie, not 0), the queue
    ownership will return to the specified instance whenever the instance is up.
    Apply will automatically follow the ownership of the queue. If the ownership
    changes while apply is running, apply will stop on the current instance and
    restart at the new owner instance.
    Changing the GLOBAL_NAME of the Database
    See the OPERATION section on Global_name below. The following are some
    additional considerations when running in a RAC environment.
    If the GLOBAL_NAME of the database is changed, ensure that the queue is
    empty before changing the name and that the apply process is dropped and
    recreated with the apply_captured parameter = TRUE. In addition, if the
    GLOBAL_NAME does not match the db_name.db_domain of the database, include
    the GLOBAL_NAME in the list of services for the database in the database
    parameter initialization file.

Maybe you are looking for

  • Can't see HD on new Airport Extreme with TimeMachine software

    Just bought a new Airport Extreme for which set up was easy -- I plugged it into my router via ethernet, ran the configuration and was good to go. The AirPort Extreme is plugged in and appears to be set up correctly as the green light is glowing on t

  • Loading swf into SWFLoader before it is added to a container

    I want to dynamically load a SWF file, before a particular view is created in a Flex 4.5 mobile app. Is it possible to load a SWF file into a SWFLoader before the SWFLoader is added to a container? I tried this but it didn't work. I tried doing this

  • Which Linux is the best for a X60 and T60/61?

    @Ajkula66, which version or flavour of Linux do you think is the best for a X60 and T60/61? Regards, Jin Li May this year, be the year of 'DO'! I am a volunteer, and not a paid staff of Lenovo or Microsoft Solved! Go to Solution.

  • Set location in Reminders by tap

    Reminders.app allows to notify on location (arriving or leaving). But when location sets it cannot be selected by tap on the map. Only by writing address via search field. Is there app restriction or my iPhone fault?

  • Program error after using connected smart objects

    Hello, dear friends. I need your help. My problem is: 1. I placed linked smart objects in to the photo and then tried to replace content of this smart object. Suddenly program shut down. And If I try to do the same one more time the same happened. 2.