Backup a database from within Concrete5 or using phpMyAdmin
Backup a database from within Concrete5
Database backups can be made within Concrete5 by going to Dashboard > System & Settings > Backup & Restore. In Concrete5.5+, simply type backup into the dashboard search. Click the button to Run Backup, then download the file. However, on shared hosting and on all but the smallest of sites this can run out of server time (500 error), particularly if the Page Statistics and Log tables have grown too big.
To get round this, you could turn off Page Statistics, truncate the Page Statistics table, removing all entries but leaving the table in place (which involves having some knowledge of phpMyAdmin) and clear the Log. This could enable the Concrete5 backup to run without getting a 500 error. If not, you will need to actually make the backup using phpMyAdmin.
Backup a database using a Concrete5 job
The Backup Job addon can be used to schedule regular backups, but will only work if the backup could be run successfully from within Concrete5 as per above.
Backup a database using phpMyAdmin
How you run phpMyAdmin depends on your web host and what control panel or shell access is provided. Be warned that phpMyAdmin enables direct manipulation of the database, so is very very dangerous to just play about with.
You could locate the Page Statistics table and truncate it. But a safer approach is to backup the entire database from within phpMyAdmin. Exactly what you see could be a bit different to the screen images here because of different versions of phpMyAdmin.
Select your database and then on the first phpMyAdmin page, click the red 'Export' link.
The next page is a form with export options. Close to the top is a text box "Add custom comment into header". Make a note in this box about what your backup is. In the group 'Structure' check 'add Drop Table'. Leave the other checkboxes alone, as the default. Check 'save as file' on the blue line near the bottom. Select 'zipped' on the radio buttons.
Click 'GO' and then save the file on your PC. Its usually a good practice to insert the date into the file name or folder name.
Now close the phpMyAdmin browser tab and resist any temptation to play unless you really know what you are doing with the database. (If you did, you wouldn't need this how-to to make backups !!).
In a worst case, the database can be restored using phpMyAdmin to import this file. However, be aware that any changes since the backup was made will be lost. How important such a loss is to your web site will dictate how often you make the backup.
Also backup the files and directories
The database backup is not a complete backup of a site. You will also need to backup all the files and folders. In particular, the /files/ directory will change when files are uploaded and needs to be backed at the same time as the database so that database indexes to the files are consistent. How you backup files depends on your web host and what control panel or shell access is provided. At its simplest, you use an ftp program to download the file and directory structure. However, this will be a bit slow and creating a zipped backup on the server will be faster.
The database and files backups can also be used to move a site between servers. If moving between windows and linux, there can be issues with changes in case of table names.
The Backup Voodoo addon can be used to make a full site database and files backup into a zip file.