Try OpenEdge Now
skip to main content
Database Administration
Maintaining and Monitoring Your Database : Maintaining Database Structure : Maintaining indexes and tables : Moving indexes
 
Moving indexes
Use the PROUTIL IDXMOVE utility to move an index from one application data area to another while the database remains online. You might be able to improve performance by moving indexes that are heavily used to an application data area on a faster disk. For example:
proutil db-name -C idxmove [owner-name.]indexname area-name
Note: For the complete syntax description, see PROUTILIDXMOVE qualifier.
The PROUTIL IDXMOVE utility operates in two phases:
*Phase 1 — The new index is being constructed in the new area. The old index remains in the old area, and all users can continue to use the index for read operations.
*Phase 2 — The old index is being removed, and all the blocks of the old index are being moved to the free block chain. For a large index this phase can take a significant amount of time. During this phase, all operations on the index are blocked until the new index is available; users accessing the index might experience a freeze in their application.
The _UserStatus virtual system table displays the utility's progress.
Note: While you can move indexes online, no writes to the table or its indexes are allowed during the move. The IDXMOVE utility acquires a SHARE lock on the table, which blocks all attempts to modify records in the table. Run the utility during a period when the system is relatively idle, or when users are doing work that does not access the table.