How to verify reused table space in oracle 10g ?

Hi..
From my system, i have seen that the table size keep increasing event the delete query is running. Due to that, I would to check either the oracle allowed to reuse the table space or not ? if not then how could i enable it ?
Please help me..
Thank you,
Baharin

You can use dbms_space.space_usage to check the for free space.
Space reuse will depend on whether you are using MSSM or ASSM, PCT_FREE, PCT_USED, and how new data is inserted ?
You can shrink or move the table and rebuild indexes to reclaim space.

Similar Messages

  • UNDO table space in oracle

    Hi,
    Recently i have added one data file(2GB) to undo table space.Later i gog to know it is not recommend to extent the undo table space.In oracle 9i undo management is handle automatically.(in my init<SID>.ora file undo_management='AUTO')
    I have 3 data file undo_1,undo_2,undo_3.
    undo_2 is the datafile of 2Gb that i have added.
    My question is ....is there any possibility to remove that data file from the DB(undo_2) if possible how can i dod that.
    Pls help me.
    roshantha

    SQL> show parameter undo
    NAME TYPE VALUE
    undo_management string AUTO
    undo_retention integer 900
    undo_tablespace string UNDOTBS1
    SQL>
    SQL>
    ##FIRST : CREATE AN ANOTHER TEMPORARY UNDO TABLESPACE FOR YOUR DATABASE USERS.
    SQL> create undo tablespace UNDOTBS_TEMP datafile 'c:\undotbs_temp1.dbf' size 2G;
    Tablespace created.
    SQL> show parameter undo
    SQL> alter system set undo_tablespace=UNDOTBS_TEMP;
    System altered.
    SQL> show parameter undo
    NAME TYPE VALUE
    undo_management string AUTO
    undo_retention integer 900
    undo_tablespace string UNDOTBS_TEMP
    ##NOW DROP YOUR UNWANTED TABLESPACE INCLUDING DATAFILES
    SQL> drop tablespace undotbs1;
    Tablespace dropped.
    SQL> drop tablespace undotbs2 including contents and datafiles;
    Tablespace dropped.
    ##NOW RECREATE THE UNDOTBS and RUSE THE FILE YOU WANTED TO
    SQL> create undo tablespace UNDOTBS1 datafile 'C:\ORACLE\PRODUCT\10.1.0\ORADATA\ORCL\UNDOTBS01.DBF' reuse;
    Tablespace created.
    SQL> alter system set undo_tablespace=UNDOTBS1;
    System altered.
    SQL> show parameter undo
    NAME TYPE VALUE
    undo_management string AUTO
    undo_retention integer 900
    undo_tablespace string UNDOTBS1
    SQL>
    hope it helps :-)
    Thanks,
    Z

  • How to find the count of tables going for fts(full table scan in oracle 10g

    HI
    how to find the count of tables going for fts(full table scan) in oracle 10g
    regards

    Hi,
    Why do you want to 'find' those tables?
    Do you want to 'avoid FTS' on those tables?
    You provide little information here. (Perhaps you just migrated from 9i and having problems with certain queries now?)
    FTS is sometimes the fastest way to retrieve data, and sometimes an index scan is.
    http://asktom.oracle.com/pls/asktom/f?p=100:11:0::::P11_QUESTION_ID:9422487749968
    There's no 'FTS view' available, if you want to know what happens on your DB you need, like Anand already said, to trace sessions that 'worry you'.

  • Reuse table space?

    Hi gurus.
    We did an upgrade to our R/3 system recently. When we did that, we created a new QA (QA2) client that I then pointed to my BW QA box. I think that I have deleted all of the R/3 QA1 info from BW, but my database has outgrown the available space. Is there any way to reuse table space without doing a reorg? I have been searching this forum as well as others and can't find an answer that fits my scenario.
    Thanks! Points will be awarded!

    Hi,
    Cube may have aggregates associated with them.
    Aggregates
    An aggregate is a materialized, aggregated view of the data in an InfoCube. In an aggregate, the dataset of an InfoCube is saved redundantly and persistently in a consolidated form. Aggregates make it possible to access InfoCube data quickly in Reporting. Aggregates serve, in a similar way to database indexes, to improve performance. We Create aggregates in the following cases:
    The execution and navigation of query data leads to delays with a group of queries.
    You want to speed up the execution and navigation of a specific query.
    You often use attributes in queries.
    You want to speed up reporting with characteristic hierarchies by aggregating specific hierarchy levels.
    An aggregate is made up of characteristics and navigation attributes belonging to an InfoCube. You can group the data according to different Aggregation levels. In doing so, you can also store values for hierarchy levels belonging to an external hierarchy. Both time-dependent attributes and time-dependent hierarchies can be used in aggregates. Characteristics that are not used in the aggregate are brought together.
    If you have created aggregates for an InfoCube and entered data for them, the OLAP processor automatically accesses these aggregates. When navigating, the different results are consistent. The aggregate is transparent for the end user. New data is loaded at a defined time using logical data packages (requests) in an aggregate. After this transaction, the new data is available for rolling up in reporting.
    An aggregation level indicates the degree of detail to which the data of the underlying InfoCube is compressed. An aggregation level must be assigned to each component of an aggregate (characteristics and navigation attributes). You can choose one of the following aggregation levels:
    All characteristic values ("*"): The data is grouped by all the values of the characteristic or navigation attribute.
    Hierarchy level ("H"): The data is grouped by the hierarchy level node.
    Fixed value (‘F’): The data is filled according to a single value.
    To use an aggregate for an InfoCube when executing a query, you must first activate it and then fill it with data. Select  the aggregate that you want to activate and fill. The system creates an active version of the aggregate .
    System Activity
    The system creates the tables required by the aggregate definition in the database. Aggregates are created according to the same schema as InfoCubes.
    An aggregate contains two fact tables and a number of dimension tables.
    The table names are derived from the technical names of the aggregates.
    If the new data packages (requests) are loaded into the InfoCube, they are not immediately available for Reporting via an aggregate. To provide the aggregate with the new data from the InfoCube, you must first load the data into the aggregate tables at a time which you can set. This process is known as a Rollup.
    If Infocube has aggregates and If you had loaded data to this Infocube, then, the newly loaded data wont be available for reporting untill and unless rollup is done. Roll up means adding the newly loaded data to aggregates.
    If you switch off the aggregates it wont be identified by the OLAP processor. report will fetch the data directly from the cube. Switching off the aggreagte won't delete any data,but temporarly the aggregate will not be availbale as if it is not built on the info cube. No reporting is not possible on swtiched off aggregates. The definition of the aggregate is not deleted.
    You can temporarily switch off an aggregate to check if you need to use it. An aggregate that is switched off is not used when a query is executed.This aggregate will be having data from the previous load's. If the aggregate is switched off means it wont be available for reporting but data can be rolled up into it.
    If u deactivate the aggregates the data will be deleted from the aggregates and the aggregate structure will remain the same.
    The system deletes all the data and database tables of an aggregate. The definition of the aggregate is not deleted.
    Later when you need those aggregate once again you have to create it from scratch.
    If I have more than one aggrgate and one of them is switched off then during roll up
    The data will be loaded to switched off aggregates also.
    But if the aggregate is deactivated the data will not be loaded to the aggregates. you have to do the initial fill by activcating the aggregates. Its like a init load.
    Scenario: Suppose the info cube needs to be undergone some changes after agggregate rollup (say wrong data needs to be deleted),so first we need to deactivate the aggregate and then delete the wrong requests from the cube and refill the aggregate to capure the existing changes.In this way changes will reflect in the aggregate,if not the aggregate will still contain the wrong data.
    When you delete aggregates both Structure as well as data is deleted.
    Aggregation ratio
    Aggregation ratio is no of records selected to no of records transfered
    refer this presentation: https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/cccad390-0201-0010-5093-fd9ec8157802
    it can be done from TCode ST03n or also from the query developed on BW statisitics/technical content
    Check the below links:
    https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/cbd2d390-0201-0010-8eab-a8a9269a23c2
    Aggregates
    Aggregates
    aggregates
    Aggregates
    To view the contents of an aggregrate, goto the Maintanance screen of the Aggregrate, Select the Aggregate (techincal name) for which you want to view the data and then click on "Aggregate Data" (Push button with glasses symbol).
    "---" sign is the valuation of the aggregate. You can say -3 is the valuation of the aggregate design and usage. ++ means that its compression is good and access is also more (in effect, performance is good). If you check its compression ratio, it must be good. -- means the compression ratio is not so good and access is also not so good (performance is not so good).The more is the positives...more is useful the aggregate and more it satisfies the number of queries. The greater the number of minus signs, the worse the evaluation of the aggregate. The larger the number of plus signs, the better the evaluation of the aggregate.
    if "-----" then it means it just an overhead. Aggregate can potentially be deleted and "+++++" means Aggregate is potentially very useful.
    Refer.
    http://help.sap.com/saphelp_nw70/helpdata/en/b8/23813b310c4a0ee10000000a114084/content.htm
    http://help.sap.com/saphelp_nw70/helpdata/en/60/f0fb411e255f24e10000000a1550b0/frameset.htm
    Thanks,
    Jituk

  • How to increase the table space for a particular table?

    Hi Friends,
    I want to know how to increase the table space for a particular table and how to check the table space size of a particular table. Please can any one send the SQL Script. I am very much poor in DBA Part.
    Thanking You ..
    Kiran

    Kiran - you should post this question on the SQL/Database forums - this is a Forms specific forum...
    Regards
    Grant Ronald
    Forms PRoduct Management

  • How to transfer data between different tables in an Oracle 10g databse?

    I have to do the following: there are 5 database tables in our Oracle 10g database that store certain data. Then there are 2 new tables where we want the data to go to. My task is to somehow transfer all the data that is in the first 5 tables and insert it in the 2 new ones. All tables are in the same database. The challenge lies in the fact that the structures of the tables are very dissimilar so it won't be a matter of a simple INSERT SQL query.
    The data access tier of our application is developed in JAVA. We use EJB. So one way I am thinking of doing the above mentioned data transfer is to simply code it in the JAVA backed. But that might be to slow, there are millions of records in those first 5 tables. What is the best way to do something like that? Perhaps a custom (Perl?) script or some such?
    Thanks.

    The problem is that the way the data is stored in the old tables you cannot write a query that would return it in such a format that you could immediately insert it in the new table without some formatting. Let me illustrate with an example. To pull the data from the old tables I use this query:
    SELECT
         SXML_DOCUMENT_DATA.VALUE As DocumentValue,
    SXML_ELEMENT.NAME As ElementName
    FROM
         SXML_DOCUMENT,
         SXML_DOCUMENT_DATA,
         SXML_DOCUMENT_DETAIL,
         SXML_ELEMENT,
         SXML_TYPE
    WHERE
         SXML_TYPE.XML_TYPE_KEY = SXML_DOCUMENT.XML_TYPE_KEY
    AND     SXML_DOCUMENT.XML_DOCUMENT_KEY = SXML_DOCUMENT_DETAIL.XML_DOCUMENT_KEY
    AND     SXML_DOCUMENT_DETAIL.XML_DOCUMENT_DETAIL_KEY = SXML_DOCUMENT_DATA.XML_DOCUMENT_DETAIL_KEY
    AND     SXML_ELEMENT.XML_ELEMENT_KEY = SXML_DOCUMENT_DATA.XML_ELEMENT_KEY
    AND     SXML_TYPE.NAME = 'DA_UNIT_COMMITMENT'
    AND     (SXML_ELEMENT.NAME = 'resource'
         OR SXML_ELEMENT.NAME = 'resourceType'
         OR SXML_ELEMENT.NAME = 'commitmentType'
         OR SXML_ELEMENT.NAME = 'startTime'
         OR SXML_ELEMENT.NAME = 'endTime'
         OR SXML_ELEMENT.NAME = 'schedulingCoordinator')
    ORDER BY
         SXML_DOCUMENT.NAME,
         SXML_DOCUMENT_DETAIL.XML_DOCUMENT_DETAIL_KEY,
         SXML_DOCUMENT_DATA.XML_DOCUMENT_DATA_KEY,
         SXML_ELEMENT.NAME;
    The results from the SQL query above look like this:
    DOCUMENTVALUE | ELEMENTNAME
    1 | ALAMIT_7_UNIT_1 | resource
    2 | GEN | resourceType
    3 | BRS8 | schedulingCoordinator
    4 | IFM | commitmentType
    5 | 2008-07-29T18:00:00:00 | startTime
    6 | 2008-07-30T00:00:00 | endTime
    7 | ALAMIT_7_UNIT_1 | resource
    8 | GEN | resourceType
    9 | BRS8 | schedulingCoordinator
    10 | IFM | commitmentType
    11 | 2008-07-29T00:00:00 | startTime
    12 | 2008-07-29T04:00:00 | endTime
    and so on. The type of data repeats every 6 records. And the values of each 6 records corresponds to 1 row in the new table, which looks like this:
    schedulingCoordinator | resource | resourceType | commitmentType | startDate | endDate
    1| 1 | 27 | GEN | IFM | 2008-07-29T18:00:00:00 | 2008-07-30T00:00:00
    2| 1 | 27 | GEN | | 2008-07-29T00:00:00 | 2008-07-29T04:00:00
    So hopefully now you see the challenge. It is not as simple as writing a SQL query that returns result rows corresponding 1 to 1 to a row in the new table. Somehow I need to take the first 6 result rows from that big SQL query and put them in the first row of the new table. Then the next 6 and put them in the second row and so on. And also, we are talking about millions of records. What happens if I process the first 2 million and then some error occurs? Do I start from the beginning again? One idea I have is to process the data in chunks, say process 500 results, commit, process another 500, commit, and so on.
    Edited by: 799984 on Oct 11, 2010 9:08 AM

  • How to delete the recyclebin data  in oracle 10g

    i create one table.then i drop the that table.this table will be kept in recyclebin in oracle10g .how to remove table permanentley in oracle 10g.
    i used drop table table name and select * from tab;it will come two tables like
    BIN$kLM/ilgxTUil64ZsNG0l7A==$0.
    how to drop table permanentley.please give me steps.

    Hello;
    Use the PURGE statement to remove a table or index from your recycle bin and release all of the space associated with the object, or to remove the entire recycle bin, or to remove part of all of a dropped tablespace from the recycle bin.
    Remove a File From Your Recycle Bin: Example
    The following statement removes the table test from the recycle bin. If more than one version of test resides in the recycle bin, Oracle Database removes the version that has been there the longest:
    PURGE TABLE test;
    To determine system-generated name of the table you want removed from your recycle bin, issue a SELECT statement on your recycle bin. Using that object name, you can remove the table by issuing a statement similar to the following statement. (The system-generated name will differ from the one shown in the example.)
    PURGE TABLE RB$$33750$TABLE$0;
    Remove the Contents of Your Recycle Bin: Example
    To remove the entire contents of your recycle bin, issue the following statement:
    PURGE RECYCLEBIN;

  • How we create new data base in oracle 10g express edition

    hello every body.. i student of B tech n new user of oracle so please help me how we creat new data base in oracle 10g express edition

    Hello, Oracle XE can not create more than one instance, the other editions yes, but like other editions XE allows you to create database schemas, schemas logically grouped objects like tables, views, indexes created by a user. By creating an Oracle user is associated with a schema of the same name.
    Using SYS or system accounts for creating user accounts.
    Syntax to create a user:
    create user Your_user
    IDENTIFIED BY password
    default tablespace users;
    grant connect, resources to your_user;
    Edited by: rober584812 on Jun 25, 2010 9:03 PM

  • Give me the sql query which calculte the table size in oracle 10g ecc 6.0

    Hi expert,
    Please  give me the sql query which calculte the table size in oracle 10g ecc 6.0.
    Regards

    Orkun Gedik wrote:
    select segment_name, sum(bytes)/(1024*1024) from dba_segments where segment_name = '<TABLE_NAME>' group by segment_name;
    Hi,
    This delivers possibly wrong data in MCOD installations.
    Depending on Oracle Version and Patchlevel dba_segments does not always have the correct data,
    at any time esp. for indexes right after being rebuild parallel (Even in DB02 because it is using USER_SEGMENTS).
    Takes a day to get the data back in line (never found out, who did the correction at night, could be RSCOLL00 ?).
    Use above statement with "OWNER = " in WHERE for MCOD or connect as schema owner and use USER_SEGMENTS.
    Use with
    segment_name LIKE '<TABLE_NAME>%'
    if you like to see the related indexes as well.
    For partitioned objects, a join from dba_tables / dba_indexes to dba_tab_partitions/dba_ind_partitions to dba_segments
    might be needed, esp. for hash partitioned tables, depending on how they have been created ( partition names SYS_xxxx).
    Volker

  • How do we find instance name in ORACLE 10g

    Hi All,
    How do we find SID name in Oracle 10g
    Thanks in advance
    Pandiarajan

    Apology accepted.
    But yes, of course I was harsh (not at you, actually, but at the plonker who thinks he can tell me that 'echo $something' is "not right").
    Do you know how many questions could be answered here if people weren't forever debating perfectly acceptable answers? If people actually stopped to read what had been written before deciding to add their tuppence-worth? If people stopped to think, "well, that's not how I would answer it... but it's good enough".
    I see so many threads here where 58 people dive in to a thread to say, 'Me too'. Another 42 will dive in to say, 'that's not right' when actually it is. And another 137 or so will usually chime in to say nothing very much except to demonstrate that they didn't understand something that was explained a lot earlier on quite clearly. Threads go on and on, when actually all that was sought originally was a simple answer to a technical issue. God knows why it happens.
    I have no problem at all being asked for clarification. I have no problem at all being corrected and having someone point out that actually that parameter doesn't exist, you made a typo, that's not the command to achieve X. When I am technically wrong, I would expect nothing less. But where so much of my time gets wasted is demonstrated in this thread perfectly. I answered the question in one post. It might not have been a perfect answer. There are many different ways of coming up with the answer on Windows, for example, and yet I didn't mention the registry at all or the Control Panel/System applet for checking environment variables once. And yet, despite all of that, in answer 1 there was sufficient information to make the OP happy. But no, that's not enough to shut some people up (and I am again not referring to you at this point).
    I don't know what it is. Some sense of, maybe, in a democracy my opinion is as good as yours even if it's entirely unnecessary, potentially confusing and adds absolutely nothing to the outcome? A desire on the part of some people to boost their post numbers?
    Too right I'm harsh. I am results-driven. I am here because I want to help others. Not because I think my opinions deserve a hearing even though the answer was posted ages ago. When I see something that looks like the opposite of that -grandstanding, look how clever I am, my opinion counts too- yeah, it annoys me somewhat. And largely because I usually end up having to untangle the confusion caused by unnecessary "contributions" from others.

  • How to access Data Guard option in Oracle 10g OEM

    Hi All,
    I have Oracle 10g ENTERPRISE EDITION on Unix envoirement. I want to setup logical standby Database through Data Guard technology. But when I brows through OEM I do not find Link for DATA GUARD????
    1) How to access Data Guard option from oracle 10g OEM.
    2) Does It come with Enterprise Edition OR I have to install it separately.
    Regards,
    Darshan

    I am managing almost everything through EM Grid Control. It is easy to setup and configure.
    Anyways, if you have read the documentation on
    Oracle® Data Guard Concepts and Administration and setup your environment accordingly then you should not have any problems. Atleast I can assure you that your production database will not be affected by it.
    Just make sure that you follow each step and read thoroughly. If you have spare machines then you can test and record your configuration before performing it on your production db. This link will provide you with the information on DataGuard.
    http://download-uk.oracle.com/docs/cd/B19306_01/server.102/b14239/concepts.htm
    If you think that way then you will never be able to do any new stuff since you will always fear that something might go wrong. Go ahead pal, try it on test machines and you will know that it is not that difficult.
    There are real experts who help people like us in this forum and I know that they are doing a pretty good job.
    All the best.
    Rgds
    Adnan

  • How to change redo log size in oracle 10g

    Hi Experts,
    Can anybody confirm how to change redo log size in oracle 10g?
    Amit

    Dear Amit,
    You can enlarge the size of existing Online Redo log files, by adding new groups with different size of files (origlog$/mirrlog$) and then carefully droping the old groups with  their associated inactive files.
    Please refer SAP Note 309526 - Enlarging redo log files to perform the activity.
    Steps to perform:
    STEP-1. Analyze the exisiting situation and prepare an action plan.
    A. You have to ensure that no more than one log switch per minute occurs during peak times.
    It may also be necessary to increase the size of the online redo logs until they are large enough.
    Too many log switches lead to too many checkpoints, which in turn lead to a high writing load in the I/O subsystem.
    Use ST04 -> Additional Functions --> Display GV$-Views
    There you can select
    Gv$LOG_HISTORY --->for determing your existing LOG switching frequency.
    GV$LOG -
    > list the status(INACTIVE/CURRENT/ACTIVE) /size/sequence no. of existing online redolog files
    GV$LOGFILE  --- > list the information of existing online  redolog files with their storage paths
    You can document the existing situation of Online Redo Log Fiile management before going to enlarge Redo Log Files.
    It will be helpful, if something goes wrong while performing activities.
    B. Based on above Situation analysis, Plan your New Redo Log Group and there Members with new optimal size.
    e.g.
    Group No.         Redo Log File Locations  u201C/oracle/<SID>/u201D                  Size
                                 /origlogA                  /mirrlogA            
    15                        log_g15m1.dbf         log_g15m2.dbf               100 MB
    17                        log_g17m1.dbf            log_g17m2.dbf               100 MB
                                /origlogB                    /mirrlogB
    16                       log_g16m1.dbf          log_g16m2.dbf            100 MB
    18                       log_g18m1.dbf            log_g18m2.dbf            100 MB
    Continue to next.....

  • How to change timeout parameter value in Oracle 10g R2

    Anyone knows how to change timeout parameter value in Oracle 10g Database R2?

    Waheed Azhar wrote:
    actually i am getting ORA-01013 exception which directly relates to the timeout value but i think it's hidden parameter...What makes you think it's a hidden parameter?
    A search of MetaLink for that error turns up a number of hits, most of which a very situational specific. Exactly what are you doing when you get this error? Are you connecting over an ODBC connection? Are you getting it on a connection request? At db shutdown? During a long-running query?

  • How much concurrent conection is allowed in oracle 10g XE?

    How much concurrent conection is allowed in oracle 10g XE?

    Hi,
    >>How much concurrent conection is allowed in oracle 10g XE? I think that the default value on Oracle XE for the SESSIONS parameter is 40.
    Then, if you will need more concurrent sessions accessing the database, you need increase this value using alter system command for this parameter.
    Cheers

  • How to restart after table space error

    Hi,
    While loading a big file ( 360 MB)  with the File -> XI-<ABAP prodxy from source, we got the table space error in middle of load. Due to Content conversion split for 20K we normally get many messages per load.
    In this case after basis increased the disk space, how do i restart the process so that it start from where it is left. I checked Moni and there is no Que. I checked RWB for adapter also and there is no message with error. I also checked integration and all possible places..
    The Alert that came in for failure has a message ID. I checked and found that message ID has been processed successfully. Still the count of records at the source does not match with target and lot of records are missing.
    Is there any way to re run the process from where it was left.
    Thanks

    Hi,
    Check following:
    - RWB->Message monitoring->Adapter engine (not integration server)
    -Check for follwing status:
    "Holding", "Waiting" "To be delivering" "Error" your message should be here any of above status.
    Note: in RWB message monitoring select "Adapter engine"
    Regards,
    Gourav
    reward points if it helps you

Maybe you are looking for