Follow these steps when performing a hot backup.
- Backup the Solr 4 indexes first
- Then backup the database
- Finally backup the contentstore
Solr 4 indexes have to be backed up first and before the database because if new rows are added in the database after the Solr 4 backup is done, a Solr 4 reindex (AUTO) can regenerate the missing Solr 4 indexes from the database transaction data.
Database backup should be done before backing up the contentstore because if your database points to a missing file, then you will not be able to retrieve content for that node. Also, if you have a file without the database data, this just means that the user has added the file too late to be included in a backup and the file will be orphaned.
It is critical to perform hot backups in the following order of steps:
- Ensure that you have a solr4Backup directory under dir.root.
- Backup the database SkyVault is configured to use, using your database vendor's backup tools.
- As soon as the database backup completes, backup the specific subdirectories in dir.root.
-
Store both the database and dir.root backups together as a single
unit.
For example, store the backups in the same directory or in a single compressed file. Do not store the database and dir.root backups independently, as that makes it difficult to reconstruct a valid backup set, if restoration becomes necessary.
Note: By default, the Solr 4 indexes are backed up according to the cron job specified by the solr.backup.alfresco.cronExpression and solr.backup.archive.cronExpression properties, which can be set in SkyVault-global.properties. By default, the cron job is run at 2 am for SkyVaultCore and 4 am for archiveCore. You must ensure that the indexes are not backup up while these jobs are running.
For more information on backing up Solr 4 indexes, see Solr 4 backup and restore.