Concept on Undo tablespace in RAC environment

Why we need two different Undo tablespace for two different instances in RAC environment. What are the internal mechanisms behind it? No explanation of the concept will be great for me. What will be the scenario if we have same tablespace undo for two instances?

Thanks in advance.

Hello

To reduce CONTENTION and the complexity of the software.aslo oracle instances share not undo tablespace using cancel separate increase the availability of data undo files.

Note: all instances can still read that cancel all blocks for coherent reading purposes. In addition, any instance can update the any tablespace undo during the restoration of the transaction,

as long as undo tablespace is not currently used by another instance to cancel generation or a recovery operation.

HTH

Tobi

Tags: Database

Similar Questions

  • Is it possible to have three Undo tablespace for a 2 RAC node?

    Version: 11.2.0.2/RHEL 5.4

    I was under the impression that you need only one UNDO Tablespace for each instance. But, for our 2 bow TIE, I see three Undo tablespace. No idea what is the third for?
    SQL> select tablespace_name,status from dba_tablespaces where CONTENTS = 'UNDO';
    
    TABLESPACE_NAME                STATUS
    ------------------------------ ---------
    UNDOTBS1                       ONLINE
    UNDOTBS2                       ONLINE
    UNDOTBS3                       ONLINE
    
    SQL> select distinct inst_id from gv$session;
    
       INST_ID
    ----------
             1
             2
    
    
    $ olsnodes -n
    thclst214   1
    thclst215   2

    I think it's possible, but a database instance is not able to use an undo tablespace. It is probably an error and you can try to drop the tablespace is not in the GV$ PARAMETER.

    I ran the following on a 2 RAC 11.2.0.1 running node:

    SQL>  select inst_id, name, value from gv$parameter where name = 'undo_tablespace';
    
       INST_ID NAME                 VALUE
    ---------- -------------------- --------------------
             1 undo_tablespace      UNDOTBS1
             2 undo_tablespace      UNDOTBS2
    
    SQL>  create undo tablespace undotbs3;
    
    Tablespace created.
    
    SQL> select tablespace_name, status from dba_tablespaces where contents='UNDO';
    
    TABLESPACE_NAME                STATUS
    ------------------------------ ---------
    UNDOTBS1                       ONLINE
    UNDOTBS2                       ONLINE
    UNDOTBS3                       ONLINE
    
    SQL>  drop tablespace undotbs3;
    
    Tablespace dropped.
    
    SQL> select tablespace_name, status from dba_tablespaces where contents='UNDO';
    
    TABLESPACE_NAME                STATUS
    ------------------------------ ---------
    UNDOTBS1                       ONLINE
    UNDOTBS2                       ONLINE
    
    SQL>
    
  • Undo Tablespace queries

    Hi all

    I am little confused with reading on the undo tablespace. So I need some clarification

    1. There are 2 undo tablespace in our application. Could someone explain to me how the 2 undo tablespace? I've not found details about it.
    2. both the undo tablespace is used at 100%. Where the the new transaction will go? New operation will force the blocks used to be exceeded if necessary?
    3. what should be the ideal size of the tablespace undo compared to the total storage size?
    4. is the log archive associated with space undotable? If Yes, then when archiving logs getting generated?

    Thank you

    1. in a database of CARS, each Instance must have it's own Undo Tablespace.
    In a database not RAC (single instance), only one Undo Tablespace can be active at any time. The Undo Tablespace would be idle but can be switched by an ALTER SYSTEM SET UNDO_TABLESPACE command.

    2. even if an Undo Tablespace is 'used 100% ' Oracle can expire (and even drop) on old extents and segments that are no longer needed by the value of Undo_Retention. Thus, data undo for older transactions that are committed (more than Undo_Retention period has elapsed since the validation) will be overwritten.

    3. There is no "ideal size. Undo sizing is based on transaction volumes, fluctuations in the volume of transactions, query patterns etc.

    4. No, there is no direct relationship between the two. However, any cancellation that is generated is also written again - that is to say redo Undo catches as it captures changes made to Tables, indexes etc..

    I suggest you read the Oracle documentation concepts to
    http://download.Oracle.com/docs/CD/E11882_01/server.112/e16508/TOC.htm

    Hemant K Collette
    http://hemantoracledba.blogspot.com

  • Full undo tablespace confusion

    Hi gurus,

    We have a 2 RAC on RHEL 6.2 node (11 GR 2). We have 2 undo tablespace UNDOTBS1 and UNDOTBS2. Who controls the stats of DBA_UNDO_EXTENTS it gives different results. Please help me understand the difference below the query results. Also, if possible any ORA-01555 or ORA-30036?



    On node 1.

    SQL > SELECT STATUS DISTINCT, SUM (BYTES) / 1024/1024, COUNT (*) FROM DBA_UNDO_EXTENTS where nom_tablespace = 'UNDOTBS1' group by status
    2;

    STATUS SUM (BYTES) / 1024/1024 COUNT (*)
    --------- -------------------- ----------
    RUN 57352.1875 6087
    64.25 5 EXPIRED
    ACTIVE 841 35

    1 * SELECT STATUS DISTINCT, SUM (BYTES) / 1024/1024, COUNT (*) FROM DBA_UNDO_EXTENTS where nom_tablespace = 'UNDOTBS2' group by status
    SQL > /.

    STATUS SUM (BYTES) / 1024/1024 COUNT (*)
    --------- -------------------- ----------
    9090,8125 1240 REST TO RUN
    ACTIVE 1374 46
    47323,75-7125 EXPIRED


    SQL > SELECT STATUS DISTINCT, SUM (BYTES) / 1024/1024, COUNT (*) OF DBA_UNDO_EXTENTS group of status;

    STATUS SUM (BYTES) / 1024/1024 COUNT (*)
    --------- -------------------- ----------
    REST TO RUN 66185 7322
    EXPIRED 47380 7129
    ACTIVE 2600 94



    On node 2.

    SQL > SELECT STATUS DISTINCT, SUM (BYTES) / 1024/1024, COUNT (*) FROM DBA_UNDO_EXTENTS where nom_tablespace = 'UNDOTBS1' group by status
    2;

    STATUS SUM (BYTES) / 1024/1024 COUNT (*)
    --------- -------------------- ----------
    57281.4375 6090 REST TO RUN
    1096 45 ASSETS

    SQL > SELECT STATUS DISTINCT, SUM (BYTES) / 1024/1024, COUNT (*) FROM DBA_UNDO_EXTENTS where nom_tablespace = 'UNDOTBS2' group by status
    2.

    STATUS SUM (BYTES) / 1024/1024 COUNT (*)
    --------- -------------------- ----------
    RUN 56404.5625 8362
    ACTIVE 1320 48
    72 2 EXPIRED

    SQL > SELECT STATUS DISTINCT, SUM (BYTES) / 1024/1024, COUNT (*) OF DBA_UNDO_EXTENTS group of status;

    STATUS SUM (BYTES) / 1024/1024 COUNT (*)
    --------- -------------------- ----------
    REST TO RUN 113575 14454
    ACTIVE 2543 93
    EXPIRED 64 1


    Why is there so much difference in the outcome. Help, please

    Kind regards
    Nikhil Mehta.

    Hello
    It's a bug because dependent parameters for undo retention are really time-sensitive and specific to the instance.
    It is difficult to find a perfect "global" solution. Therefore, there is no solution for this.

    Then use the bellow note to determine the correct result.

    * DBA_UNDO_EXTENTS shows incorrect results of different nodes of the PAP [1492313.1 ID] *.

    Kind regards
    Levi Pereira

  • Undo Tablespace - newbie question

    Q1. An Undo Tablespace is required in a database? I thought that only agents were SYSTEM and SYSAUX of TEMP?

    Q2. What happens if you do not have an Undo Tablespace?

    Q2. How are they an Undo Tablespace to undo / Rollback Segments in a database?

    Jim,

    I did not notice that it is not mentioned in the documentation, or at least I couldn't find if its somewhere. But when 9i has been released, I'm sure that stated explicitly that the number of segments that would be created is 10.

    However, what determines exactly how much is created in the first place? In my case, my database has 61 segments!

    But are you sure that 61 segments belong to a single undo tablespace? My best guess is that you have several Undo tablespace created and the number of segments is of each of them. Can you check and confirm please?

    I understand that the parameter UNDO_RETENTION will determin when these segments can be replaced, but I am trying to get my head round how my database has finished with 61 undo segments and will be he never ever get rid of the any of these segments? (i.e. is it just continue to add but never remove all know is that as a concept of the high water line?)

    Not to my knowledge at least. I know that the number of segments can be less than the number 10, but more which would be created at any time and that too in such a number of top, no, did not meet any reference that has never mentioned it.

    LSO a number of segments are offline - why should it be?

    Yet once, which just goes to confirm my doubt that these segments are displayed including tablespaces offline are not defined by default for your database. A tablespace can be set to the default db only its segments, and it would have also shown online. Again, check parameter undo_tablespace and see dba_rollback_segs as if the segments that are shown as online, belong only this tablespace or more.

    HTH
    Aman...

  • Undo Tablespace is not erasing in 11 GR 2 DB

    Hello

    There are 2 undo tablespace APPS_UNDOTS1 and APPS_UNDOTS2. APPS_UNDOTS2 is not used frequently while APPS_UNDOTS1 is used frequently.
    Problem is that these storage spaces are not deleted automatically. We even tried to bounce the database but no help. There are often increase the size of the tablespace by adding the data file.
    There is no work around for this problem? What should be the impact if we auto expand on these storage spaces?

    Here is the information:

    Operating system platform: IBM AIX 6.1.0.0, 64-bit
    Product: Oracle E-Business Suite R1212
    Database version: 11.2.0.1.0
    Is active RAC: Yes
    Is active ASM: Yes
    Database nodes: 2


    SQL > show Cancel parameter;
    VALUE OF TYPE NAME
    ------------------------------------ ----------- ------------------------------
    UNDO_MANAGEMENT string AUTO
    UNDO_RETENTION integer 900
    undo_tablespace string APPS_UNDOTS1

    SQL > SELECT DISTINCT STATUS, SUM (BYTES), COUNT (*)
    DBA_UNDO_EXTENTS GROUP OF STATUS;

    STATUS SUM (BYTES) COUNT (*)
    --------- ---------- ----------
    EXPIRED 89718784 1294
    RUN 3.2242E + 10 17929
    1773862912 2261 ASSETS

    Cancel the use of TBS:
    Nom_tablespace AVAIL USE % FREE opportunity
    ------------------------------ -------------------------------------
    15120 9875 5245 65.31 APPS_UNDOTS2

    28432 APPS_UNDOTS1 22823.6875 5608,3125 80.27

    Undo retention is dry and there is not sufficient 900 scopes CANCEL remaining, so no idea why Undo SCT is not having erased?


    Kind regards
    Purnima

    Normal and expected - behavior for an explanation see MOS Doc 413732.1 (Full UNDO Tablespace in gr 10, 2)

    Srini

  • Undo tablespace use in the CCR

    Hi all

    I came across a situation while chatting with my friends on the use of undo in the CCR tablespace that
    "I have a 2 RAC node and is it possible as inst1 can use the inst2 so undo tablespace in the case of undo tablespace to inst1 got filled,
    the research of new segments of cancellation, but not able to allocate new cancellations of the segments in the inst1 undo tablespace. »

    Thanks in advance...

    each instance will have its own undo tablespace and data from the before images of the database when generated will be stored with respect to special cases... The instance-specific tablespaces of cancellation cancellation segments are not shared it will settle in the shared common disks@SAN. so for instance or any other type of recovery recovery images before data will be drawn from required undo tablespace... Hope its clear...

    Concerning
    Imran khan

  • relationship between redo log buffer, journal of redo and undo tablespace files

    What is the relationship between the redo log buffer, redo log files and undo tablespace?

    what I understand is

    redo log buffer is the logical area where all the news of recovery were stored until they are transferred by LGWR bank roll forward log online... but y at - it report any with the undo tablespace with these two?

    Please correct me if I'm wrong

    Thanks in advance

    redo log buffer is the logical area where all the news of recovery were stored until they are transferred by LGWR bank roll forward log online... but y at - it report any with cancellations

    tablespace with these two?

    There is a link between files redo log and buffer, but the undo tablespace is something else entirely.

    spend it here with this links

    REDO LOG FILES
    http://www.DBA-Oracle.com/concepts/redo_log_files.htm

    BUFFER REDOLOG
    http://www.DBA-Oracle.com/concepts/redo_log_buffer_concepts.htm

    UNDO TABLESPACE
    Undo tablespace to cancel files to undo or roll back uncommitted changes pray the database.

    Hope you understood.

  • Unable to shrink/resize undo tablespace

    Hi Experts,

    I have the database Oracle 10.2.0.4 running on RHEL 4.7 in a production environment, my undo tablespace has grown to 32 GB, database is restarted, the tablespace is always full.

    I would like to shrink, resize the undo tablespace, please help me

    Little detail is as below

    display the parameter undo_retention
    VALUE OF TYPE NAME
    ------------------- ----------------- ----------------------
    UNDO_RETENTION integer 10

    Help, please

    Thank you

    Published by: user1687821 on July 9, 2010 09:27

    did you check the link I provided in my previous post? He answers most of your questions.

  • Need help on design for 2 EBS with RAC environment

    Hi all

    We currently have 4 servers with 256 GB of RAM, 1 TB HDD and 8 cores. Our requirement is to configure two EBS 12.1.3 with DB RAC environment. We want to take advantage of these 4 server to accommodate the two EBS since the configuration of the server (application server 2 with HA and 2 DB for RAC servers) are quite high, because the concurrent users on each EBS are not more than 200.

    So our problem is as below:

    Say we have these server 4A, B, C and D. We have 1 create multi instance node, with DB on server A & B (CARS) and application on the server C & D. Now if we want to install the second case, with the same architecture on the same servers that we do.

    (1) use the same grid infrastructure and create DB for 2nd instance cluster even. (how?)

    (2) install another grid infrastructure and create totally another cluster for this instance.

    You can do the following for a case of BSE, and perform similar operations for a 2nd on the same grid. Check after the link. He detailed information EBS on RAC Setup

    Install EBS R12 on 11g RAC Oracle ASM


    High level steps are:


    • Install and Configure Grid Infrastructure on cluster 2 nodes.
    • Create the DATA starts EAM and FRA with a sufficient size.
    • Install theSoftware to the database of this Cluster Homeon.
    • Install the EBS by using a quick installation on the database node 1 (out of the BOX Non-RAC on 1 node installation
    • Install BSE using rapid installation on nodes of applications.
    • Convert the database of 11 GR 1 material not RAC RAC Database.
  • It will frequently commit resolve ora-30036 (cannot extend the undo tablespace)

    I use 11.2.0.3 database. I confused on the use of validation to resolve ora-30036.

    I have the script in migration once that has many updates and I'm getting ORA-30036 (unable to extend segment by 4 in the "UNDOTBS" undo tablespace) .

    Our undo tablespace in NO mode autoextend and like this is just a one time event, we will not increase it.   He is currently 6 GB.

    We would commit determination ORA-30036 in my case? If not why? Is there a better solution to solve it.


    When I say commit frequent, I won't commit after each line, I just want to commit after may be million lines, so that my active cancellation extend turn into cancellation remaining will extend and Oracle will be able to use it in case of pressure of space.


    Note:

    UNDO_MANAGEMENT: AUTO

    UNDO_RETENTION: 2700

    Undo tablespace retention is NOGAURANTEE.

    I have the script in migration once that has many updates and I'm getting ORA-30036 (unable to extend segment by 4 in the "UNDOTBS" undo tablespace).

    Our undo tablespace in NO mode autoextend and like this is just a one time event, we will not increase it.   He is currently 6 GB.

    Why don't you increase it?

    You must use the correct size of UNDO necessary for the work that will be done.

    A lot of shops to create a for big lots new UNDO tablespace and then switch to it for batch processing. Once the task is completed, they switch back to the normal UNDO. That prevents the normal RETURN of autoextending far where it is normally necessary:

    ALTER SYSTEM SET UNDO_TABLESPACE

  • Transaction is written to the log file and it is not written to undo tablespace. During a failure of the system how oracle rolls back the transaction.

    Hi all

    My question is:

    Transaction is written to the log file and it is not written to undo tablespace.

    During a failure of the system how oracle rolls back the transaction.

    I have already provided the answer, you ignored if well (you seem to only read the responses by people of your country).

    Redo log is always written * first * before * writing to the data block (redo log writing is much more aggressive). So it DOESN 'T MATTER if you lose these scriptures of rollback segment.

    Valuation: rear roller followed by roll forward, using redo log files and/or archive redo log files.

    Sybrand Bakker

    Senior Oracle DBA

  • major differences of exadata database, listener, process than the normal RAC environment?

    I would ask for any input about the major differences of exadata database, listener, process than the normal RAC environment.

    I know now the exadata have not only SCAN listeners, but many other listeners. expert here can provide clarification?

    Thank you

    All the right questions... Welcome to the world of Exadata.

    These are questions that could get into a lot more detail and discussion than a forum post. At a high level, you certainly don't want delete all indexes on Exadata. However, you need to index and an indexing strategy will change on Exadata. After you move a database from one not Exadata Exadata environment you are probably more indexed. Indexes used for OLTP transactions real - looking one or a few lines among others will usually quickly with an index. The index used to avoid a percentage of records but always returning number of records can often be moved. On the index depends on the nature of the workload and your application. If you have a control on the index, then test your queries and DML with the index (s) invisible. Check your implementation plan, the columns io_cell_offload in v$ sql, smart scan wait events to ensure you get intelligent analysis... and see if the smart scan is faster than using the index (s). The real-time SQL Monitor is an excellent tool to help with this - use dbms_sqltune or grid/cloud control.

    Parallelism is a great tool to help still speed up queries and direct path loading operations and can help prompt smart scans... but use of parallelism really depends on your workload and must be controlled using DBRM and the parallel init parms, possibly using same parallel declaration put on hold, so it is not overwhelm your system and cause concurrency problems.

    If you have a mixed environment of workload or consolidates databases on Exadata so my opinion is IORM plans should certainly be implemented.

  • How to UNDO tablespace size?

    As legend. Thank you!

    An UNDO tablespace sizing requires three data items.

    (UR) UNDO_RETENTION in seconds
    (UPS) Number of undo the blocks of data generated per second
    (DBS) Overhead varies on position and size of the file (db_block_size)

    The necessary cancellation space is calculated as:

    UndoSpace = HEART * (UPS * DBS)

    read the Doc ID 262066.1 it has retail formula.

  • Undo tablespace in oracle 10g

    Hi all;

    Hello!

    I'm confused about undo tablespace size.

    Under query showing my undo tablespace size is 120Mo.

    but DBA_TABLESPACE_USAGE_METRICS view showing the undo tablespace size is 4194302

    > > Check free space

    SQ > select t.tablespace, t.totalspace as ' TOTAL_SPACE (MB).

    round ((t.totalspace-fs.freespace), 2) as "USED_SPACE (MB)",
    FS. FreeSpace as "FREE_SPACE (MB).
    round (((t.totalspace-fs.freespace) /t.totalspace) * 100, 2) like "% used (s),"
    round ((fs.freespace/t.totalspace) * 100, 2) as "% free" of
    (select round (sum (d.bytes) /(1024 * 1024)) as totalspace,)
    tablespace dba_data_files d.tablespace_name d
    Group d.tablespace_name) t,.
    (select round (sum (f.bytes) /(1024 * 1024)) as freespace,)
    tablespace dba_free_space f.tablespace_name f
    Group of f.tablespace_name)
    FS where t.tablespace = fs.tablespace order of t.tablespace.


    TABLESPACE TOTAL_SPACE (MB) USED_SPACE (MB) FREE_SPACE (MB) % used free %

    ------------------------------ --------------- -------------- -------------- ---------- ----------

    EXAMPLE                                    100             68             32         68         32

    240 230 10 SYSAUX 95,83 4.17

    480 475 5 98.96 SYSTEM 1.04

    UNDOTBS1                                   120            120              0        100          0

    1005 75 930 USERS 7.46 92.54

    SQL > select * from dba_tablespace_usage_metrics, where nom_tablespace like '% UNDO;

    NOM_TABLESPACE USED_SPACE TABLESPACE_SIZE USED_PERCENT

    ----------------------------    ----------  ---------------  ------------

    UNDOTBS1                              440        4194302 .010490422

    This is because:

    Tablespace_size in DBA_TABLESPACE_USAGE_METRICS takes the maximum file size for CanGrow tablespace that matches maxblocks in dba_data_files.

    This is not the same value you can get from dba_data_files.

    DBA_TABLESPACE_USAGE_METRICS shows essentially the maximum size to which a data file can grow. And DBA_DATA_FILES (+ DBA_FREE_SPACE) the current size of the tablespace.

    Watch more document MOS (My Oracle Support):

    Difference in size of dba_data_files Tablespace and dba_tablespace_usage_metrics/V values $ Filespace_usage (Doc ID 455715.1)

Maybe you are looking for