CMS backup and restoring
To backup and restore a CMS we have to follow the following procedure:
- Export database and filesystem of the original CMS.
- Import files and database in the new system.
- Adjust the config files of the CMS to make it work.
Contingut
Export your original CMS
- Backup files in the source CMS (with tar, zip, etc.).
- Our suggestion is to use the command:
$ tar cvfz cmsfoldername.tar.gz cmsfoldername
(obviously changing cmsfoldername for your CMS folder name).
- Our suggestion is to use the command:
- Export database with mysqldump (in a *.sql file). We can use:
- Command mysqldump. With:
$ mysqldump -u enric -p cmsdbname > cmsdb.sql
We will create the file cmsdb.sql with all CMS DB data. Obsioulsy you have to change "enric" for your user name. - phpmyadmin: too easy to give explanations for that.
- Command mysqldump. With:
That should result in having 2 files, (1) *.tar.gz and (2) *.sql.
Importing in the new system
We need 2 files: the tarball and the sql for database.
- Copy the files (*.sql and *.tar.gz) to your target system.
- Extract files in the target system.
- Using the tar command is (you need SSH access to your system)
$ tar xvfz cmsfoldername.tar.gz
- If your system doesn't have SSH you can uncompress the files in your local machine and upload it using FTP.
- Using the tar command is (you need SSH access to your system)
- Change the folder name if you need it.
$ mv cmsfoldername newfoldername
- Create the database in the target system.
- Using mysqladmin command:
$ mysqladmin -u enric -p create enric_newdb
(Obviously changing enric for your username). - Using mysql command:
$ mysql -u enric -p
mysql> create database enric_newdb;
- Using phpmyadmin
- Using mysqladmin command:
- Import the SQL file in the new database.
- Using mysql command:
$ mysql -u enric -p enric_newdb < cmsdb.sql
- Using phpmyadmin
- Using mysql command:
Adjusting config files of the new CMS
Each CMS needs to change different things. You have to look for the config file, depending on your CMS, for example:
- Wordpress: wp-config.php
- Mediawiki: LocalSettings.php
- Joomla!: configuration.php
You have to review this settings to make the CMS work again:
- DB name
- DB user
- DB password
- root folder of the installation
More
To know more you can read that articles for database creation, export and import:
- SQL exportacio: DB export.
- SQL creacio: creation and import of databases.
You can use several commands to synchronize your data in a remote server with your local filesystem:
- rsync is the most common used, but you need SSH access to your site.
- Some hostings just provide FTP service, so you can read this article for other ways to syncronize over FTP. Particularly you can use this ones:
- mirror
- wget: can work over FTP as well as HTTP
- sitecopy
- lftp (seems more complex needing a script)