Forum Discussion

CadenL's avatar
CadenL
Level 6
6 years ago

EV deleting old user archives

We have an EV environment that is no longer actively archiving new items and is just used to allow users to recall previously archived items from their mailboxes. The environment is EV11.0.1 and as it's being slowly decommissioned we don't have any immediate plans to upgrade.

Over the years, users have left the business and their mailbox\AD account have been removed but their archive remains within EV - this has resulting in a lot of archives showing SIDs and not the username. This has been the situation for some considerable amount of time and I'm looking for a mechanism to now delete these archives. As there are several thousand archives with SIDs I don't want to do this from the VAC but want to explore ways to perhaps use something like EVPM (or something perhaps within a SQL query) to delete these. I don't know if EVPM can be used to delete an archive....?

I have a list of SIDs (currently in an excel spreadsheet) of the archives (SIDs) to be deleted and I ideally want to use this as the source for the information. There are quite a few (perhaps about 100) archives with SIDs that I need to keep which is another reason I don't want to use the VAC in the fear that one of these may be selected in error - using the spreadsheet I can definitely make sure the SIDs to be retained do not exist in the list.

So can I ask for any thoughts on how I can most effectively delete several thousand archives from a list of SIDs that currently existing in an excel spreadsheet - Ideally I'm looking for something like EVPM where I can perhaps add a couple of SIDs for the intial testing and then increase the number to perhaps batches of 100.

kind regards

  • Hello,

    First, deleting archives will give you a high(er) load on SQL/Indexlocations/datalocations. Deleting 100's of archives at the same time might kill your SQL/EV server.

    Using EVPM is not an option. You will have to delete archives. Officialy, you can only do so using the console. But (as always :-) ).....

    You can edit an SQL field to inform EV it can delete an archive. Doing this using a SID is difficult, the best thing to use is the ArchiveName. What I would do is the following:

    1 - Get a list of the archivenames. Use SQL or the Usage report. Create a list of archivenames that need to be changed (i.e. removed)

    2 - change the archivenames of the above by running below. This will change the archivename from "Alink, G. (Gertjan)" to "ZZ Remove - Alink, G. (Gertjan)"

    USE EnterpriseVaultDirectory
    Update Archive
    Set ArchiveName = 'ZZ Remove - ' + ArchiveName
    Where
    (ArchiveName = 'archivename 1'
    or ArchiveName = 'archivename 2'
    or ArchiveName = 'archivename 3')

    3 - Get a new list with archivenames, but now only for the ones starting with ZZ Remove (the where clause would be "where Archive name like 'ZZ Remove%'

    Use that list to edit SQL so EV knows to delete archive:

    USE EnterpriseVaultDirectory
     UPDATE Archive
     SET ArchiveStatus = 4
    Where
    (ArchiveName = 'ZZ Remove - archivename 1'
    or ArchiveName = 'ZZ Remove - archivename 2'
    or ArchiveName = 'ZZ Remove - archivename 3')

    When done, refresh the console, you should see now archives "marked for deletion".

    If you accidentally marked an archive to be deleted, run the same query, it now use SET ArchiveStatus = 1 where archivename = 'archivename'

    When you are satisifed with selection, restart the storage service, monitor SQL/Index/Data locations.

    Also see, where NO2 also discusses the process, and how to monitor progress.

    No1 and No2

    As always, test first, make sure you have good, recent SQL backups.

     

1 Reply

  • Hello,

    First, deleting archives will give you a high(er) load on SQL/Indexlocations/datalocations. Deleting 100's of archives at the same time might kill your SQL/EV server.

    Using EVPM is not an option. You will have to delete archives. Officialy, you can only do so using the console. But (as always :-) ).....

    You can edit an SQL field to inform EV it can delete an archive. Doing this using a SID is difficult, the best thing to use is the ArchiveName. What I would do is the following:

    1 - Get a list of the archivenames. Use SQL or the Usage report. Create a list of archivenames that need to be changed (i.e. removed)

    2 - change the archivenames of the above by running below. This will change the archivename from "Alink, G. (Gertjan)" to "ZZ Remove - Alink, G. (Gertjan)"

    USE EnterpriseVaultDirectory
    Update Archive
    Set ArchiveName = 'ZZ Remove - ' + ArchiveName
    Where
    (ArchiveName = 'archivename 1'
    or ArchiveName = 'archivename 2'
    or ArchiveName = 'archivename 3')

    3 - Get a new list with archivenames, but now only for the ones starting with ZZ Remove (the where clause would be "where Archive name like 'ZZ Remove%'

    Use that list to edit SQL so EV knows to delete archive:

    USE EnterpriseVaultDirectory
     UPDATE Archive
     SET ArchiveStatus = 4
    Where
    (ArchiveName = 'ZZ Remove - archivename 1'
    or ArchiveName = 'ZZ Remove - archivename 2'
    or ArchiveName = 'ZZ Remove - archivename 3')

    When done, refresh the console, you should see now archives "marked for deletion".

    If you accidentally marked an archive to be deleted, run the same query, it now use SET ArchiveStatus = 1 where archivename = 'archivename'

    When you are satisifed with selection, restart the storage service, monitor SQL/Index/Data locations.

    Also see, where NO2 also discusses the process, and how to monitor progress.

    No1 and No2

    As always, test first, make sure you have good, recent SQL backups.