I am rebuilding some UNUSABLE local index partitions on Oracle 8.1.7.4.0 (64bit) database . The platform is a HPUX machine.
The DDL of the partition table/indexes: ========================= CREATE TABLE TESTME ( INST_NO CHAR(3) NOT NULL, ACCT_NO CHAR(16) NOT NULL, REC_NO CHAR(9) NOT NULL, TRAN_TYPE CHAR(2) DEFAULT ' ', STAT CHAR(2) DEFAULT ' ', [code]...
I have a huge table (about 60 gb) partition over range. The index on this table is global index created on 4 columns together. I have a query which is running very slowly. The explain plan is showing the use of this global index.Explain plan is not showing pstart and pend because the index is global.
I have a query that seems to repeatedly call an index scan on a table for reasons I'm not sure about. Why it would be doing the index scan on totaldwellingarea in the dimensions table (DIMEN_PID_TDWELLAREA) repeatedly? This only seems to happen when I put on the range clause d.totaldwellingarea between scr.lowvalue and scr.highvalue.
I am using Oracle version 9.2.0.3.
select d.propertyid,d.totaldwellingarea, e.size_, scr.size_ from eqid e, dimensions d, brt_eval.size_code_ranges scr where e.style not in ('1','A','G','L') and e.size_ = '0' and d.propertyid = e.propertyid and e.style = scr.style and d.totaldwellingarea between scr.lowvalue and scr.highvalue;
Let's consider such table that all rows fit into single block:
SQL> create table test as select rownum id, '$'||rownum name from dual connect by level <= 530; Table created. SQL> create index i_test on test(id); Index created. SQL> SQL> begin
[code].....
why does approach with full scan take longer even if table occupies only one data block? PS. 11gR2
In the link below [URL] Thomas kyte has said, use the CBO and select /*+ FIRST_ROWS */ primary_key from table where rownum = 1; it'll read the index and stop at the first row. very fast on a big empty table (as the index is small and empty).
very fast on a big full table as the index is just read to find the first leaf node and then "stop".
It gives faster result if the primary key is used. But what if we have a table with around 1000 million rows and for the predicates there is a index range scan on the table.
What if we have a table say big_table (10000000000 rows) and the sql is something like
select /*+ first_rows */ 1 /* id, attribute_id*/ from big_table where attribute_name ='Gross Premium' and value ='10000' and version_date is null and rownum=1; --it's taking around 3 min
We observed that in such case there will be a range index scan for the index on the predicates. For a particular id there may be different values for attribute 'Gross Premium' and may have multiple versions.
How I would tune such a query where the purpose is to check if at least 1 records exists in the table for the input?
I have created an non unique index lk_fein on lookup_fein( code,map_id,trash). When I check the explain plan it does a full table scan on lookup_fein. if I force it to use index by it does and the cost also decreases.
I Have created a interval partitioned table with local index.But when automatic partitions are created based record insertion, whether local indexes will be created for each newly created partition or not? If created, how to check
Below is the code which I tried
CREATE TABLE interval_date ( date1 date, days VARCHAR2(50) ) PARTITION BY RANGE(date1) INTERVAL (NUMTODSINTERVAL(45,'DAY'))
2day i was dropping few unwanted index from the data base, By mistake i removed the local partitioned index , So i want to recreate that index.i create the index, will the partitioned index updates when we add partitioned to the tables.
I have table with 4 partition by range partition. I am loading the table in bulk mode to latest partition. Before I load , I dropped the index and after Load I will be creating index. So when I am dropping index, it is dropping index from all the partitions and when creating the index, I am creating the index for all partitions. When I am creating index using local, it is telling you have to create local index for all partitions at the same time. because of that I have to drop and recreate all indexes again. Again I have to gather stats for whole table .
I was thinking we can build index for one partition and index should remain as is for old partitions If this is not the case, how do I plan my load for a partitioned table using bulk mode to latest partition.
I have a table which if approc 5GB in size.I am trying to create a partition table from it. I created the new table,but when i am creating local indexes, i am getting an error when i create a unique key. I ll post the creation scripts:
CREATE TABLE A_PT_ORDREG ( BUS_UNIT VARCHAR2(5) NOT NULL, ORDER_NO VARCHAR2(15) NOT NULL, PT_CODE VARCHAR2(15) NOT NULL, REG_NO VARCHAR2(15) NOT NULL, AS_APPLICATION VARCHAR2(5) NOT NULL,
[code].....
THE INDEX:
CREATE UNIQUE INDEX PK_A_PT_ORDREG ON A_PT_ORDREG (BUS_UNIT, ORDER_NO, SEQ_NO) local;
I am getting the following error:
ORA-14039: partitioning columns must form a subset of key columns of a UNIQUE index
how data is distributed on a local non prefixed index.Let's say I have a table calles SALES and it holds data for the last year partitioned by a date column called month (So that's 12 partitions, one for each month).Now i'm creating the following index: CREATE INDEX TESTIDX ON SALES(salesman_id) local; What will happen is that I'll have 12 partitions on the index but to which partitions in the table are they referencing ?
ALTER TABLE SNYT.PART_ESTD SPLIT PARTITION ESTD_M13_S22 AT ('ESTD', 13, '22') INTO (PARTITION ESTD_M13_S21, PARTITION ESTD_M13_S22) update indexes;
(per http://asktom.oracle.com/pls/asktom/f?p=100:11:0::::P11_QUESTION_ID:1401247200346349807) ================================================================= If Global index used
ALTER TABLE SNYT.PART_ESTD SPLIT PARTITION ESTD_M13_S22 AT ('ESTD', 13, '22') INTO (PARTITION ESTD_M13_S21, PARTITION ESTD_M13_S22) UPDATE GLOBAL INDEXES;
I have a partitioned table like below. I want to create a B-Tree index on SALES_RGN column which is neither the part of Primary key or the Partitioned key. Should I create this index as local or Global ?
CREATE TABLE sales_dtl ( txn_id number (9), salesman_id number(5), salesman_name varchar2(30), sales_rgn varchar2(10), -----------------------------> This column needs to be indexed sales_amount number(10), sales_date date, constraint pk_sales_dtl primary key (txn_id) [code]....
We are using oracle 11.2.0.3.0 with 3 node rac. Earlier 3 scan vip and 3scan listener running on each node.But we found recently node1 running using 2vip and 2scanlistener and in node2 1vip and 1scanlisteners were running.but no longer running scan vip or scan listener in node 3. If i decided to reloacate the scan vip/Scan_listener to node3 from ndoe 1 using below command,does it cause any impact on my transcation?
SELECT DISTINCT EXPOSURE_REF FROM KBNAS.VW_EXPOSUREDETS_FOR_CCYREVAL WHERE EXPOSURE_CURRENCY='THB' AND BASE_TXN_CCY='USD' AND BRANCH_CODE='7000' AND (REVAL_STATUS='O') AND CONV_RATE<>'62' AND (EXPOSURE_AMOUNT<>0) UNION SELECT DISTINCT ED.EXPOSURE_REF FROM KBNAS.EXPOSURE_DETAILS ED, [code].....
I have attached DDL for table EXPOSURE_DETAIL(PARTITION),LEDGERCARD,LEDGERCARDDETAILS, DDL for INDEX on those tables and DDL for Views..
Issue: we have created the Indexes but when we check the explain plain .. full table scan is going on..I have attached the explain plan ..
SNRCTL> stat LISTENER Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=LISTENER))) STATUS of the LISTENER ------------------------ Alias LISTENER Version TNSLSNR for IBM/AIX RISC System/6000: Version 11.2.0.1.0 - Production Start Date 19-JAN-2013 00:50:10 Uptime 0 days 0 hr. 29 min. 51 sec Trace Level off Security ON: Local OS Authentication [code]....
In every oracle documentation for e.g:11.2 Scan and Node TNS Listener Setup Examples [ID 1070607.1] we found the local listener status showing both local-ip and vip. Why is not showing in our case?
I am on 11.2.0.3 Enterprise Edition. We are using the new feature "Composite Domain Index" for a Domain index on a very large table (>250.000.000 rows). It really works with mixed queries. We added two number columns using FILTER BY.We have lots of DML on this table. Therefore, we are executing synchronize and optimize once the week. The synch behaves pretty normal. But "optimize_index" takes a very very long time to complete. I have switsched on 'logging' for the optimize process. The $I table takes some time but is finished normally. But the optimization of the $S table (that is the table created for the CDI feature) is running over 12 hours now - and far from being finished. From the logfile, I can see that it optimizes 1000 rows every 20 minutes. Here is the output of the logfile:
Oracle Text, 11.2.0.3.0 14:33:05 06/26/12 begin logging 14:33:05 06/26/12 event 14:33:05 06/26/12 process $N for optimize: SEQDEV.GEN_GES_DESCRIPTION_CTX_I 14:33:16 06/26/12 14:33:16 06/26/12 [code]....
I haven't found a recommendation from Oracle not to use "optimize_index" for Domain Indexes with CDI. But in my case, it would be much faster just to drop and recreate the Domain Index in question.
We are going to setup a 4 node rac cluster. So i think we need to configure only one SCAN with 3IP's. And how the scan listeners are configured on these 4 nodes.
I am planning to install oracle RAC 11g R2 on RHEL 5.3. I have 2 RAC nodes and one openfiler NAS. I need to understand how will I configure SCAN IP. Do I need to configure it some where in DSN and OS level or just I need to give this IP and SCAN name while grid install and oracle will create these things?overall steps to configure this or direct me to some documentation where this thing is detailed.
We have an application where delete statement is taking a long time ( 30-40 seconds).v$session_longops shows the sql statement is doing a full table scan. The statement is "delete tablename where column_name =:B1". The table is indexed and the indexed column is being used in the where clause. When I do an explain plan on the same statement with a value for column_name, it uses an index scan. The table has 9 million rows and the delete statement deletes 15 rows. Not sure why SQL when running through the application does not use index. The stats are current.
I�m Using Oracle 11.I have a table with 16 million rows and an index (let's call it the employee table with an index on department). I need to select all the employees whose departments are located in the uk. I achieve this by selecting all the department numbers from departments where location = 'UK' in a sub select then plug this into the main query as follows:
SELECT * FROM employees WHERE department IN (SELECT department from departments where location = 'UK');
It takes ages, 25 seconds or more, the explain plan shows its doing a full table scan on emplyees. I need it to use the index. The sub query is instant and returns only 5 rows. If I explicitly put the 5 numbers in the IN clause the query uses the index and executes in 0.04 seconds. See below:
SELECT * FROM employees WHERE department IN (1,2,3,4,5);
I need it to use the subquery once and then use the index on the main table.
I want to make full table scan of my query so that I can execute it using parallel option & the query will get completed in few mins. Even though I used this hint "/*+ parallel(t2,4) full(t2) */, the query is executing with 8 parallel processes but it is going for "Rowid Range Scan" and it is taking more time to complete. How to make this query to go for full table scan instead of "Rowid Range Scan" so that this query can be tuned.
SELECT /*+ parallel(t2,4) full(t2)*/ID, COUNT (1) FROM acnt_transact t2 GROUP BY ID;
scan image from Oracle Form Builder 6i and store the image location in the oracle 9i database. Here important issue is we just store the image location in the database not the image. We'll store the images in a storage device and store the location path in the database. And retrive the image from storage device using the path.
For example: User Scan the image using Form builder 6i then save the image like 1001-DPS-1.jpg in the default location like D:Image.. And in oracle 9i database data save like : 1001 DPS 1 D:Image1001-DPS-1.jpg User_Name Sysdate
Data save automatically in the database when image scanned and saved in physical drive. This is our main purpose.
Is it possible to solve this task using Oracle 9i and Developer 6i?
I am an OEM Gird Control 11g server with Oracle 11.2.0 running on OEL 5.3
I also have 2 node RAC cluster running Oracle 11.2.0 on OEL 5.3. I have installed OEM Agent on nodes of this cluster. I can see them on OEM Grid Console. When I check the configuration of the Database Instance GTRD1 (one of my target instance)I can see that the "Listener Machine Name" is the management IP address of target database server. Similarly Database Instance GTRD2 has the management IP address of target database server. When I click test conenctions it works. This is without entering any reference to this server/IP address in /etc/hosts file.
But when I select targets->all targets->Database Instance GTRD1 and then try to access performance tab, it does not connect. I get this error "The Network Adapter could not establish the connection"
Looking at the "emoms.trc" I find the follwing
2012-04-30 14:02:12,071 [EMUI_14_02_12_/console/database/instance/sitemap] ERROR perf.sitemapPerfChart logp.251 - java.sql.SQLException: The Network Adapter could not establish the connection
The Connect Descriptor was (description=(address=(host=GTRD-scan.GTRD)(protocol=tcp)(port=1521))(connect_data=(service_name=GTRD1)(instance_name=GTRD1)(UR=A)))java.sql.SQLException: The Network Adapter could not establish the connection
The Connect Descriptor was (description=(address=(host=GTRD-scan.GTRD)(protocol=tcp)(port=1521))(connect_data=(service_name=GTRD1)(instance_name=GTRD1)(UR=A)))
But when I enter the scan address in the /etc/hosts as "112.5.14.154 GTRD-scan.GTRD" Then everythign work works. NOTE: 112.5.14.154 is GTRD1 server and 112.5.14.155 is GTRD2 server
Now my questions are: 1. Do I must enter scan address/ref "GTRD-scan.GTRD" in /etc/hosts? 2. Is there are way to change it to use hostname or the IP address? 3. If I am to use scan address, then how I refer to the other IP address in hosts file?