How to tune a table in oracle

hi
can anyone please help me in tunning a particular table in oracle which has millions of Record
kindly help me for the procedure to tune the table...
thanks
Regards
Misin

What's the Oracle version?
Does this table have LOB column ?
Make sure it's on locally managed tablespace.
Collect stats on the table and indexes if there is massive updates on the table.
Actually it's not about tuning the particular table but tuning the queries that your application use to access the table.
That in turn raise the question what's the nature of your application, is it DDS or OLTP application?
Do you experience any performance issue related to this table at all?

Similar Messages

  • How to tune the performance of Oracle SQL/XML query?

    Hi all,
    I am running Oracle 9i and like to run the following Oracle SQL/XML query. It takes about 3+ hour and still not finish. If I get rid all the XML stuffs it only take minutes to run. Does anybody know how to what's the reason of this slow and how to tune it?
    SELECT XMLElement("CUSTOMER",
    XMLForest(C_CUSTKEY "C_CUSTKEY", C_NAME "C_NAME", C_ADDRESS "C_ADDRESS", C_PHONE "C_PHONE", C_MKTSEGMENT "C_MKTSEGMENT", C_COMMENT "C_COMMENT"),
    (SELECT XMLAgg(XMLElement("ORDERS",
    XMLForest(O_ORDERKEY "O_ORDERKEY", O_CUSTKEY "O_CUSTKEY", O_ORDERSTATUS "O_ORDERSTATUS", O_ORDERPRIORITY "O_ORDERPRIORITY", O_CLERK "O_CLERK", O_COMMENT "O_COMMENT"),
    (SELECT XMLAgg(XMLElement("LINEITEM",
    XMLForest(L_ORDERKEY "L_ORDERKEY", L_RETURNFLAG "L_RETURNFLAG", L_LINESTATUS "L_LINESTATUS", L_SHIPINSTRUCT "L_SHIPINSTRUCT", L_SHIPMODE "L_SHIPMODE", L_COMMENT "L_COMMENT")
    FROM LINEITEM
    WHERE LINEITEM.L_ORDERKEY = ORDERS.O_ORDERKEY)
    FROM ORDERS
    WHERE ORDERS.O_CUSTKEY = CUSTOMER.C_CUSTKEY)
    FROM CUSTOMER ;
    Thanks very much in advance for your time,
    Jinghao Liu

    ajallen wrote:
    Why not something more like
    SELECT *
    FROM fact1 l,
    FULL OUTER JOIN fact1 d
    ON l.company = d.company
    AND l.transactiontypeid = 1
    AND d.transactiontypeid = 2;
    Because this is not an equivalent of the original query.
    drop table t1 cascade constraints purge;
    drop table t2 cascade constraints purge;
    create table t1 as select rownum t1_id from dual connect by level <= 5;
    create table t2 as select rownum+2 t2_id from dual connect by level <= 5;
    select * from (select * from t1 where t1_id > 2) t1 full outer join t2 on (t1_id = t2_id);
    select * from t1 full outer join t2 on (t1_id = t2_id and t1_id > 2);
         T1_ID      T2_ID
             3          3
             4          4
             5          5
                        6
                        7
         T1_ID      T2_ID
             1
             2
             3          3
             4          4
             5          5
                        6
                        7

  • How to disable a table in oracle?

    Hi,
    Can anyone tell me if its possible to disable table in oracle>
    Thanks and Regards

    user598986 wrote:
    Hi,
    There is a scenario where :
    Schema A has A_ and B_ tables
    If I login to Schema A only A_ will have the access rights tables with B_ will not have access to the user.
    If Schema A owns both the tables than there is no way to do what you have mentioned. An owner can do whatever he wants to do with his objects. If the table B has been "given" to the user A than from the grantor, revoke the privs of this table and it won't be accessible to the user A, the same what Laura has mentioned to do already. You can't "switch off" a table from the user AFAIK.
    HTH
    Aman....

  • How to create a table in Oracle Lite database?

    Hi,
    I have installed SOA 10.1.3 on my laptop. Now I am trying to create a table in the database to do some own examples. I have problem in installing oracle database. So I am trying to create a table in Oracle Lite database which comes with SOA suite. I am not able to do it, can some body suggest me please?
    Regards
    Khaleel

    HI James,
    Thank you so much. I am able to create table and insert rows and able to select them too. However I am not able to use these tables in my BPEL process for my practice. The DB adapter is throwing some error, any idea?
    --khaleel                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       

  • How to get all tables in oracle sql developer with MS SQLServer

    Hi All,
    I am using microsoft SQL server 2000. For displaying the tables and other stuff i am using oracle SQL developer tool. The problem is when i connect to sql developer with oracle database i can see all the tables in that database. But when i connect to MS SQL server database it is not showing all the tables in that database. I don't know why?.
    i tried doing the samething using another tool called Aqua Data Studio , there i can able to see all the tables in microsoft SQL server 2000.
    do you have any knowledge regarding this, why i am not getting all the tables in oracle sql developer when i connect to microsoft SQL server 2000.

    Same issue here. Haven't found the answer yet..

  • How to access remote tables on Oracle from Access fron end?

    Note: Access application and access tables are in separate .mdb files.
    I've successfully migrated my Access 2000 tables to Oracle. And there were no errors during the migration. The two original Access tables were renames to tblBOMdetail_L and tblPartInfo_L and two new linked tables were created with the _R name. Mapping queries were created for tblBOMdetail and tblPartInfo.
    However, when I launch my Access application, I get the following error: "The Microsoft Jet database engine cannot find the input table or query 'tblPartInfo'. Make sure that it exists and that its name is spelled correctly."
    Is there something more that I have to do to enable this connection. I already have the necessary ODBC connection set up.
    Thanks.

    Hi ,
    The first thing you need to verify is that you can view the data in the tables with _R appended to their name. This will verify whether the ODBC link is set up correctly and pointing at the correct Oracle table in the Oracle database.
    Another point. Are you still using 2 .mdb files? If so since your data is now in Oracle it may be prudent to use only one .mdb.
    If you need more help then please contact [email protected]
    John

  • How to migrate a table from ORACLE 10g to 8i

    have table named 'liuxg_tab_01' in 10g.
    This morning I exported this table using 'exp' and then tried to imp it into 8i, I failed.
    After a while, I created a database link named 'ctf' in 8i which connected to 10g. I issued 'create table test as selct * from liuxg_tab_01@ctf',it returns 'ORA-01723'.
    Then I extraced the DDL of 'liuxg_tab_01' from 10g with QUEST TAOD, it's:
    CREATE TABLE LIUXG_TAB_01
    OWNER VARCHAR2(30 BYTE),
    OBJECT_NAME VARCHAR2(30 BYTE),
    SUBOBJECT_NAME VARCHAR2(30 BYTE),
    OBJECT_ID NUMBER,
    DATA_OBJECT_ID NUMBER,
    OBJECT_TYPE VARCHAR2(19 BYTE),
    CREATED DATE,
    LAST_DDL_TIME DATE,
    TIMESTAMP VARCHAR2(19 BYTE),
    STATUS VARCHAR2(7 BYTE),
    TEMPORARY VARCHAR2(1 BYTE),
    GENERATED VARCHAR2(1 BYTE),
    SECONDARY VARCHAR2(1 BYTE)
    But I can not create a table using the upper DDL in 8i if I do not wipe off those "BYTES".
    After creation of the table using the upper DDL without those 'BYTES', I sucessfully executed 'insert into LIUXG_TAB_01 select * from liuxg_tab_01@ctf'.
    Anyone has a better method to move a table from ORACLE 10g to 8i?

    1) The particular version of 8i and 10g in use here would be useful. I'm not sure that Oracle supports database links between any version of 8i and any version of 10g, though, so you're probably lucky that it worked as well as it did.
    10g 10.1.0.3.0 and 8i 8.1.7.0.0
    2) What version of the export utility did you use? You would need to use the 8i version to generate the dump file to have any chance of working, not the 10g verion.
    I use the 'exp' provided with 10g 10.1.0.3.0 and 'imp' with 8i 8.1.7.0.0. I have tried to export data directly from 10g 10.1.0.3.0 using 'exp' provided with 8i 8.1.7.0.0. Failed.
    3) Why? Since 8i is desupported, there isn't a lot of call for tools to move data from supported releases to unsupported releases.
    We have an 8i DB which is still porivding insentive services. We just wanna migrate some tales from 10g to it.
    FYI, NLS_LENGTH_SEMANTICS was introduced in 9i, so it's no suprise that 8i objected to the BYTE keyword in the DDL.
    What's FYI :P
    Another option would be to generate a CSV file of the data from 10g and use SQL*Loader to load it into 8i. Not sure this would be any easier, though.
    Justin
    Message was edited by:
    user510846

  • How to register External table into Oracle APPS?

    hi
    can we register the External table in Oracle apps like SQL Loader?
    So if yes, please share the steps.
    Thx

    781261 wrote:
    okk..
    But i mean , we create Executable with Method type SQL Loader, to register in Oracle APPS.
    SO like what would be Executable Method for External Table?
    or can we call the External table in Procedure?
    ThanxI don't know oracle APPS (and this isn't the APPS forum), but an external table is just like another table. It's created once and then used by queries to fetch data. You would reference it in your applications just the same as you would any other table.

  • How to fragment a table in oracle?

    I am a bit confused about horizontal fragmentation in oracle, for example:
    I have two databases A and B
    I create a employee table in A database that has name, dept attributes
    Now I want to fragment this table, put all the rows where dept=science to table employee in B database,
    so in B database I type:
    create table employee
    as select * from employee@A
    where dept='science';
    But the employee table in A database still has all the data , thats not what I want, I want employees in A that are not from science dept
    So how should I do this? in one step?

    891814 wrote:
    I am a bit confused about horizontal fragmentation in oracle, for example:
    I have two databases A and B
    I create a employee table in A database that has name, dept attributes
    Now I want to fragment this table, put all the rows where dept=science to table employee in B database,
    so in B database I type:
    create table employee
    as select * from employee@A
    where dept='science';
    But the employee table in A database still has all the data , thats not what I want, I want employees in A that are not from science dept
    So how should I do this? in one step?Well, creating a table in B using data that is queried from A, isn't going to magically remove the data from A.
    You'd need to have a subsequent DELETE statement that deletes the records from A that have been moved to B e.g.
    delete from employee@A
    where dept != 'science'

  • How to Create a Table in Oracle with XML data type.

    Dear ALL,
    What are the requirements for creating a table with xml datatype in Oracle: The steps would help very much to know the scripting of the table and how to query and either insert/update and remove data from that table.
    Any help, direction, advise would be highly appreciated.
    Thanks.

    Reffer to this Note.243554.1.
    In a nut shell you will need to run catqm.sql

  • How to import a table in oracle

    thanks!!

    Hi Luc,
    You can import data into Oracle thru Oracle4s Import utility, that reads the object definition and the table data (created by Export utility).
    An example of the command:
    imp system/manager file=dba.dmp fromuser=scott tables=(dept,emp)An example using parameter file from different schemas:
    imp system/manager parfile=params.datparams.dat
    FILE=blake.dmp
    SHOW=n
    IGNORE=n
    GRANTS=y
    ROWS=y
    FROMUSER=blake
    TOUSER=scott
    TABLES=(unit,manager)
    I recomend you to take a look in Oracle4s documentation because there are a lot of details in this process, like table-level, partition-level, etc...
    I hope it helps...

  • How to find custom table in Oracle EBS

    Hi experts,
    I am looking for the query that can find out all custom tables/objects in Oracle EBS? For some reasons, the custom tables/objects's name does not follow any standard. That a reason why I cannot find all custom objects in database. If you have that query, please share with me.
    Thanks in advance
    Hieu

    I am looking for the query that can find out all custom tables/objects in Oracle EBS? For some reasons, the custom tables/objects's name does not follow any standard. That a reason why I cannot find all custom objects in database. If you have that query, please share with me.There is no direct way to list the custom objects in the database/application unless you follow the customization standard (naming convention).
    https://forums.oracle.com/forums/search.jspa?threadID=&q=Find+AND+Custom+AND+Objects&objID=c3&dateRange=all&userID=&numResults=15&rankBy=10001
    https://forums.oracle.com/forums/search.jspa?threadID=&q=Custom+AND+Objects+AND+Naming&objID=c3&dateRange=all&userID=&numResults=15&rankBy=10001
    Thanks,
    Hussein

  • How to create Nested table in oracle stored procedure(Temp Table)

    Hi
    I am creating Nested table in stored procedure(Temp Table)
    type t_v_tbl_rec is record(cumid number,col1 varchar(50),col2 varchar(50),col3 varchar(50),col4 varchar(50),col5 varchar(50),col6 varchar(50));
    type t_v_tbl is table of t_v_tbl_rec index by binary_integer;
    V_V_TBL t_v_tbl;
    But i can't insert value in to this temp table
    Plz help me

    What is problem?
    SQL>declare
      2      type t_v_tbl_rec is record( cumid number,
      3                                  col1 varchar(50),
      4                                  col2 varchar(50),
      5                                  col3 varchar(50),
      6                                  col4 varchar(50),
      7                                  col5 varchar(50),
      8                                  col6 varchar(50) );
      9      type t_v_tbl is table of t_v_tbl_rec index by binary_integer;
    10      v_v_tbl t_v_tbl;
    11  begin
    12      v_v_tbl(1).cumid := 1;
    13      dbms_output.put_line(v_v_tbl(1).cumid);
    14  end;
    15  /
    1
    PL/SQL procedure successfully completed.

  • How to find the tables in OM

    Hi All,
    How to find the tables in Oracle order mangement and what are the links of the tables in oracle OM
    Thanks & Regards
    srikkanth.M

    How to find the tables in Oracle order mangement and what are the links of the tables in oracle OMeTRM
    http://etrm.oracle.com
    Thanks,
    Hussein

  • How to view all table of a database

    How to view all table of a database created on a oracle 9.2/10g database management system.
    How to view available tables of oracle dbms which comes by default with package.
    Thank you so much in advance!
    With Regards,
    Niks

    You posted the same question twice.
    How to view all table of a database

Maybe you are looking for