Go Premium for a chance to win a PS4. Enter to Win

x
?
Solved

How to disable indexes while inserting data?

Posted on 2011-09-30
7
Medium Priority
?
856 Views
Last Modified: 2012-05-12
I am loading 300million records into a table. It has been taking long time to insert.
I want to disable Indexes on that table to make it faster. Can i disable them with out stopping the load process?
0
Comment
Question by:ajaybelde
7 Comments
 
LVL 5

Expert Comment

by:MrNetic
ID: 36891802
Have you ever considering drop index and create in the end.
0
 
LVL 78

Expert Comment

by:slightwv (䄆 Netminder)
ID: 36891820
I don't believe you can 'disable' an index.  I think you will need to drop it.
0
 

Author Comment

by:ajaybelde
ID: 36891826
To drop indexes the load process should be terminated otherwise it will give "RESOURCE BUSY" error. Isn't it?
So, I just wanna make those indexes unusable.
0
VIDEO: THE CONCERTO CLOUD FOR HEALTHCARE

Modern healthcare requires a modern cloud. View this brief video to understand how the Concerto Cloud for Healthcare can help your organization.

 
LVL 35

Accepted Solution

by:
johnsone earned 1332 total points
ID: 36891927
You can make the index unusable with this command:

ALTER INDEX <indx> UNUSABLE;


However, in order to make it usable again, it must be either rebuilt or dropped and recreated.
0
 

Author Comment

by:ajaybelde
ID: 36892081
I can drop and recreate after load is done.
I wanna make sure whether i can make them unusable on the fly or not?
0
 
LVL 35

Assisted Solution

by:johnsone
johnsone earned 1332 total points
ID: 36892208
I would drop them before the load, then recreate them after the load.

My guess is that making it unusable will require the same lock as dropping the index.
0
 
LVL 35

Assisted Solution

by:Mark Geerlings
Mark Geerlings earned 668 total points
ID: 36905888
No, you cannot make an Oracle index unusable "on-the-fly" while a data load process is already running to add records to the table.  You need to drop the index(es) before the load, then re-create the index(es) after the load.
0

Featured Post

Free Tool: ZipGrep

ZipGrep is a utility that can list and search zip (.war, .ear, .jar, etc) archives for text patterns, without the need to extract the archive's contents.

One of a set of tools we're offering as a way to say thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Working with Network Access Control Lists in Oracle 11g (part 2) Part 1: http://www.e-e.com/A_8429.html Previously, I introduced the basics of network ACL's including how to create, delete and modify entries to allow and deny access.  For many…
How to Create User-Defined Aggregates in Oracle Before we begin creating these things, what are user-defined aggregates?  They are a feature introduced in Oracle 9i that allows a developer to create his or her own functions like "SUM", "AVG", and…
This video explains at a high level with the mandatory Oracle Memory processes are as well as touching on some of the more common optional ones.
This video shows how to configure and send email from and Oracle database using both UTL_SMTP and UTL_MAIL, as well as comparing UTL_SMTP to a manual SMTP conversation with a mail server.
Suggested Courses

877 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question