These steps describe how to recreate the DMS database from an existing DMS database. These steps allow you to edit data before the reimport to remove any corruption or incorrect data.
How can I rebuild the DMS database from a copy of a rule set?
These commands work for r12.8 Enterprise Manager and above.
#1. Stop PIM via secons –S command.
#2. Take a backup of the exiting DMS__ and DH__ database folders found in ...\AccessControlServer\APMS\AccessControl\Data.
#3. In a command prompt cd to the DMS__ folder in ...\AccessControlServer\APMS\AccessControl\Data. Dump the exiting DMS database via ‘dbmgr –e –l –f c:\temp\DMS__.txt’. This will export the data (-e) from the local (-l) database in the folder that you are in and output it (-f) to the file.
#4. Verify DMS__.txt has your rules extracted to selang commands. Edit the file to remove undesirable records.
#5. Run ‘dmsmgr –remove –auto’ which will remove the existing DMS__, DH__, and DH__WRITER databases. Verify that the folders are removed and the services are also removed.
#6. Run ‘dmsmgr –create –auto –desktop HOST_NAME –admin CURRENT_USER’ to recreate the databases with a terminal rule and user authorization. Only the current user is needed here since you will be reimporting rules.
When this is executed you should see 3 new databases being created. The DMS__, DH__, and DH__WRITER folders will be created and services will be created. These are new blank clean databases.
#7. We now need to import the data back into the DMS__ database. Change directory to the DMS__ folder and run ‘selang –d . ‘ to open the database in the current directory. You should be in selang in the DMS. You can verify this by running ‘so list’ and making sure ISDMS is listed as Yes. Once verified you can run ‘source c:\temp\DMS__.txt’ to start the import. You will see ‘Successfully added/updated _________” fly by. This might take some time depending on your how much data is in the file.
#8. Once you have imported the data start PIM via ‘seosd –start’ command.
#9. Once all of the services have started please run ‘sepmd –L DMS__’ from the command line. You will see the local DH__ being updated.
#10. On every remote Distribution Servers you will need to run the following command to have the new DMS__ sent to them. The command is ‘dmsmgr –sync self’.
If you need to revert back to the old databases you will need to stop PIM via 'secons -s'. You can then replace the top level DMS__ or DH__ folder with the backup and restart PIM via 'seosd -start'.