Installing and upgrading
Backups
Security
User management
Advanced user group options
Customising ResourceSpace
Plugins
StaticSync
Configuring ResourceSpace
Integrations

How to restore your ResourceSpace installation

Restoring ResourceSpace

If you have followed the guidance on backing up ResourceSpace as per How to backup your ResourceSpace installation, then restoring ResourceSpace to a replacement server in the event of server failure or for migration is straightforward.

Please note that steps described here simply restore your existing ResourceSpace configuration. The following related items are not covered by these steps

  • Custom ResourceSpace code
  • Any external directories that may be used by ResourceSpace e.g. StaticSync
  • DNS changes that may be required so that users can access the new server
  • Web or proxy server configuration

Requirements

To restore ResourceSpace to a new server you require the following:-

  • A full backup of the ResourceSpace database. The database (backup) file will be formatted either as a MySQL Dump or MySQL Shell. 
  • A copy of the ResourceSpace filestore folder (e.g. /var/www/resourcespace/filestore)
  • A backup of your configuration file (located in include/config.php)
  • A server with ResourceSpace and dependencies installed

Restore steps

  1. Create an empty database on the new server (see Configuring the database) and install ResourceSpace (see Installing and Upgrading).
  2. Once the empty ResourceSpace system has been installed, import the database backup into it1
    # Using MySQL Shell
    mysqlsh -h localhost --js --execute “util.loadDump(‘/path/to/backupFile’, { threads: 32, skipBinLog: true, deferTableIndexes: 'all', progressFile: ''})”
    
    # Using MySQL Dump
    mysql -u root -p resourcespace < backup.sql
  3. Copy the filestore backup into the new ResourceSpace filestore folder2
    e.g. /var/www/resourcespace/filestore/
  4. Copy settings from your config.php file backup into the new config.php file. If you copy the whole file be aware that the new server may have different settings e.g. MySQL usernames/passwords and installation location of third party utilities such as ImageMagick or FFmpeg. The following settings are crucial for ResourceSpace to find the filestore and for remote API calls to work:-
    • $scramble_key
    • $api_scramble_key

1 To prevent character encoding issues causing international characters from either being omitted or appearing corrupted, ensure that the database and connection encodings and collations used on the new server match the original. UTF-8 encoding is strongly recommended

2 If you have backed up the entire ResourceSpace directory you can simply restore this into the new web server location. In this case you need to check permissions and any server specific settings in config.php