During the initial installation of MinistryPlatform, several scheduled SQL Maintenance Plans were created to provide basic protection against database corruption. While these backups jobs are important, they only help in specific circumstances and provide no protection at all from hardware failure. To provide complete disaster protection it is necessary to take additional precautions. This section reviews all of the key components of MinistryPlatform, provides guidance on which data is absolutely critical for disaster recovery and offers suggested backup strategies for organizations evaluating or modifying data protection methods.
There are two SQL databases that contain critical data for MinistryPlatform: the MinistryPlatform database and the ReportServer database. Both databases are backed up on a regular basis via SQL Maintenance Plan. The Maintenance Plan stores a backup of the database on the local server. These backup files (particularly the .bak files) should be backed up to alternate media every night.
On your web server, there is a folder in the root of your data partition named _MinistryPlatformFileStorage (or something similar). This folder contains all of the images in MinistryPlatform, including photos, scans and icons. This folder should be backed up to alternate media every night.
Custom Themes and Skins
Church-specific theme customizations in the MP applications should be backed up whenever you change them. These include the wwwroot\Portal\churchname\_DomainData folder under Portal and the Themes and Nametags folders in wwwroot\Checkin\churchname\_DomainData folder.
SSRS Encryption Key
SQL Server Reporting Services (SSRS) uses encryption to protect sensitive data with an encryption key. The encryption key used by SSRS is separate from the database and must be backed up separately. If you move the ReportServer database you must restore the encryption key before SSRS will function. The encryption key only needs to be backed up once unless you manually change the encryption key or make major changes to the system.
MinistryPlatform relies on SSL encryption to secure traffic between client and web server. A stored SSL certificate provides the key used to encrypt and decrypt the traffic. SSL certificates are issued by publicly-trusted Certificate Authorities for a set period of time and must be renewed before they expire. Certificates are typically issued with 1, 2 or 3 year terms. Most Certificate Authorities re-issue a certificate at little or no cost if a certificate is lost due to hardware failure, but a re-issue can take anywhere from a few hours to a few days. You can avoid the hassle of requesting a re-issue by backing up your SSL certificate every time you renew. An SSL certificate only needs to be backed up once.
If you have done custom development or installed apps written by other churches you should make sure you have the application files as part of your backup plan. Think Ministry can't help you put custom applications back together, particularly if you wrote them, and 3rd Party developers may not be available to help you re-install applications in case of a disaster. Most 3rd Party and custom applications are stored in wwwroot alongside the default MinistryPlatform applications.
Important Files to speed up your restore
Not all MinistryPlatform files contain church-specific data. The MinistryPlatform application files are very important but not unique to your church. There are always options to get a copy of these files if necessary, but if you have them on-hand it speeds up your restore process.
MinistryPlatform Web Application Files
The wwwroot folder on your web server's data partition contains the web application files that make up the MinistryPlatform ecosystem.
The _MinistryPlatformTools folder on your web server's data partition provides scheduled services outside of the MinistryPlatform web application, like email delivery. You should back up these files at least every time an update is installed.
Self Hosted vs. Cloud Hosted
Some backups are configured for all customers during the initial install process. Learn more by reviewing the SQL Maintenance Plans.
- A full database backup is scheduled nightly.
- Transaction log backups are scheduled every 15 minutes.
Cloud customers enjoy additional data protection services.
- Shared Cloud server backups are performed nightly and stored on a separate infrastructure.
- Shared Cloud servers are replicated every 5 minutes to separate physical hardware.
- Databases and application file backups are created nightly and replicated to an offsite datacenter. These are also backed up to tape.