Description
This article is applicable to Veritas Enterprise Vault versions 10.0 to 14.1.
- For information about moving indexes on earlier versions of Veritas Enterprise Vault, refer to the following article:How to move Enterprise Vault (EV) indexes that are managed by the same EV server
- For information about moving index locations to a different EV server, refer to the following article: How to move the Index Location to a different location on a different server
- For information about moving indexes on Veritas Enterprise Vault versions 14.2 and later, refer to the following article: How to move the Index location to a different location on the same server in Enterprise Vault 14.2 and later
Overview:
There may be an instance where indexes will need to be moved to a different location on the same server. This can be done for all volumes in a location or can be changed for just one archive.
Resolution:
Move all volumes in a root path to another existing root path on the same server
- Back up the SQL databases and the EV server.
- Stop all EV services on the server.
- Copy the contents of the index location from the old location to the new root path location. If a new index location is desired, it should be created before copying the indexes. This can be done on the "Index Locations" tab
To determine the index location run the SQL query below:
USE EnterpriseVaultDirectory
SELECT CE.ComputerName, CE.ComputerNameAlternate, IRP.IndexRootPathEntryID, IRP.IndexRootPath,
ISE.ServiceEntryID, ISE.Description
FROM ComputerEntry CE, IndexingServiceEntry ISE, IndexRootPathEntry IRP
WHERE CE.ComputerEntryID = ISE.ComputerEntryID AND ISE.ServiceEntryID = IRP.IndexServiceEntryID
ORDER BY CE.ComputerName
Take note of both the IndexRootPathEntryIDs for the old index root path and the new index root path.
- Run the following query in SQL Query Analyzer to update the index locations in the database
Note:
old IndexRootPathEntryId should be replaced with the IndexRootPathEntryId value returned for the old index root path in step 3b.
new IndexRootPathEntryId should be replaced with the IndexRootPathEntryId value returned for the new index root path in step 3b.
DECLARE @OrigIndexRootPathEntryId EVGUID
DECLARE @NewIndexRootPathEntryId EVGUID
SET @OrigIndexRootPathEntryId = 'old IndexRootPathEntyId'
SET @NewIndexRootPathEntryId = 'new IndexRootPathEntyId'
-- Check that we are moving on the same server
DECLARE @CurrentServer EVGUID
DECLARE @NewServer EVGUID
SELECT @CurrentServer = IndexServiceEntryId FROM IndexRootPathEntry WHERE IndexRootPathEntryId = @OrigIndexRootPathEntryId
SELECT @NewServer = IndexServiceEntryId FROM IndexRootPathEntry WHERE IndexRootPathEntryId = @NewIndexRootPathEntryId
IF (@CurrentServer <> @NewServer)
BEGIN
RAISERROR('You should only move indexing locations on the same server', 16, 1)
RETURN
END
-- Update the index volumes to point at the new location
UPDATE IndexVolume
SET IndexRootPathEntryId = @NewIndexRootPathEntryId
WHERE (IndexRootPathEntryId = @OrigIndexRootPathEntryId)
-- Inform EV that it needs to update the paths of the volumes on service startup
UPDATE IndexingServiceEntry
SET IVSyncNeeded = 2
WHERE ServiceEntryId = (SELECT IndexServiceEntryId FROM IndexRootPathEntry WHERE
IndexRootPathEntryId = @NewIndexRootPathEntryId)
Move an entire root path to a new folder location on the same server
- Back up the SQL databases and the EV server.
- Stop all EV services on the server.
- Copy the contents of the index location from the old index server to a new index location.
To determine the index root path run the SQL query below:
USE EnterpriseVaultDirectory
SELECT CE.ComputerNameAlternate, IRP.IndexRootPathEntryID, IRP.IndexRootPath, ISE.ServiceEntryID, ISE.Description
FROM ComputerEntry CE, IndexingServiceEntry ISE, IndexRootPathEntry IRP
WHERE CE.ComputerEntryID = ISE.ComputerEntryID AND ISE.ServiceEntryID = IRP.IndexServiceEntryID
Take note of IndexRootPathEntryID for the index root path you are moving.
- Run the following query in SQL Query Analyzer to update the index locations in the database
Note:
IndexRootPathEntryId to change should be replaced with the IndexRootPathEntryId value returned for the new index root path in step 3b. NewFolderPath should be replaced with the new location for the index location.
DECLARE @IndexRootPathEntryId EVGUID
SET @IndexRootPathEntryId = 'IndexRootPathEntyId to change'
-- Update the folder path
UPDATE IndexRootPathEntry
SET IndexRootPath = 'NewFolderPath'
WHERE (IndexRootPathEntryId = @IndexRootPathEntryId)
-- Inform EV that it needs to update the paths of the volumes on service startup
UPDATE IndexingServiceEntry
SET IVSyncNeeded = 2
WHERE ServiceEntryId = (SELECT IndexServiceEntryId FROM IndexRootPathEntry WHERE IndexRootPathEntryId = @IndexRootPathEntryId)
Move all volumes for an archive
Use the Manage Indexes wizard in the Administration console to move all volumes for a particular archive.
Veritas recommends regular backups of all EV, CA, and DA SQL databases. During backups, EV services must either be placed in read-only or backup mode or stopped, and the CA/DA Enterprise Vault Accelerator Manager Service (EVAMS) or each Customer Background Task must be stopped. For steps on placing services in read-only/backup mode specific to the implemented EV version, please refer to the article 000014434 - Best Practices for Enterprise Vault Backup.