How to Backup Your Chamilo LMS Database

How to Backup Your Chamilo LMS Database

Profile picture for user sarojini
Sarojini Devi Nagappan
02 February 2021

The education industry saw a tremendous change in content delivery due to the Covid19 pandemic in 2020. Many educational institutions moved entirely to virtual learning, making learning management systems (LMS) an essential part of e-learning. A good LMS software in and education setting should have the following features to provide a good on the go learning experience to its users:

  • Centralised portal for administrators to manage their users and have educators work their daily tasks securely.
  • Built in content authoring tools to create and deliver content.
  • Easy to use interface to schedule learning plans.
  • Scoring and performance management features.
  • Ability to create certificates, badges, and different learner profiles to showcase the learners’ capabilities.
  • Live classroom and webinar environments for remote instructors and students.

In many institutions, the LMS stores tons of data, therefore having a reliable backup methodology is mandatory. This blog will discuss Chamilo, one of the leading open source LMS, and how to take care of its backup manually and in an automated way using Backup Ninja

Things you Need to Know About Chamilo LMS

Chamilo software is focused on creating and reusing content and protected by the Chamilo Association. Chamilo Association is an entity registered in Spain and protects the developer community through the Chamilo trademark. With Chamilo you can:

  • Create and manage students and courses
  • Deliver educators contents in their way
  • Measure performance and award auto-generated certificates
  • Have support for SCORM, AICC, IMS/QTI
  • Track student progress online or offline
  • Build tests and exams with automated scores and feedback
  • Set up a virtual classroom

 You can learn more about the Chamilo features here.

Database Support for Chamilo LMS

The Chamilo LMS uses either MySQL 5.6+ or MariaDB 5+. You will need to have administrator privileges to manage, drop, and create a database. Refer to the documentation to install and configure the LMS on your local or virtual host. 

How to Backup Chamilo LMS Database

In any LMS case, having backups is crucial as it contains various types of data, namely; user data and content data. Any educational institution would want to be able to have a highly available environment to support them at any time anywhere, hence if there is a case of failures, a valid and secure backup copy will be required immediately. If you are a Chamilo database administrator, there are a couple of ways you can create a Chamilo LMS backup. 

Backup Chamilo LMS Database Using PhpMyAdmin

You can save the Chamilo database with the PhpMyAdmin interface using the login and password created during installation and configuration. Select the databases to backup and export it to the desired format. Compress the backup file and select the Save output to a file option. As the last step, download the SQL format (.sql extension) and import this backup using the same interface for the restoration.

Backup Chamilo LMS Database Using Command line Tools

Use the following command to backup the database:

$ mysqldump -u [user name] –p [password] [options] [database_name] [tablename] > [dumpfilename.sql]


** 'olimahc' is the password

$ mysqldump -u chamilo -polimahc chamilodb > chamilo-backup-file.sql

Automated Backup for Chamilo LMS Database

You may use the manual backup management methodology to take and monitor backups. However, creating, scheduling, and tracking backups is a tedious and time consuming task. Alternatively, you can have automated backup services like Backup Ninja to manage your files and databases’ backup. 

Backup Ninja is an automated backup tool which allows you to schedule and monitor open source database backups, files, and folders using a simple web interface.  The tool comes with the advanced features to give you a seamless backup management experience for open source databases like MySQL, MariaDB, PostgreSQL, Percona, TimescaleDB, and MongoDB

Backup Ninja allows you to :

Find more information on Backup Ninja features here.

How to Backup and Monitor the Chamilo LMS Database Using Backup Ninja

You don’t have to be a technical expert to configure Backup Ninja on service on your server. In just a few minutes you can have the service installed and schedule backups securely. Backup Ninja does not store any information on its server and protects your data movement with an advanced encryption algorithm. 

You can follow the steps below to schedule automated backups using Backup Ninja.

Step 1: Get a Backup Ninja account

Create your Backup Ninja account using this link. Backup Ninja offers two pricing options, one is a free plan and the other is a business plan. The free plan is a great way to start your automated backup management process.

Step 2: Backup Ninja Agent Installation

The installation involves adding a server, installing the agent, and server discovery

When you want to add your server to Backup Ninja, firstly select the database technology you are using with Chamilo on your server. Chamilo uses MariaDB or MySQL database and Backup Ninja supports both technologies in different versions.

Selecting a Database Type in Backup Ninja

Next, create the database user. You would need a privileged user like root or super admin to install the agent on the database server. Copy the commands displayed on the screen and execute them on your database server. Your server will be listed on the server page when it is successfully discovered.

Step 3: Schedule Chamilo LMS Database backup

To schedule a Chamilo MySQL/MariaDB backup, click on add schedule, then follow the on screen instructions. Backup Ninja takes logical or physical backups for MySQL and MariaDB. Either way, both types of backups are taken using the same interface and steps.

The backup method is automatically listed according to the backup tool installed in the server. Check your server if you don’t see any listed in the backup method. 

Backup Schedules in Backup Ninja

Next step is to decide where you would like to store your backup. You have an option to store your backup locally or in the cloud, or have it at both locations. In the last two steps, you can set the following parameters to complete the schedule:

  • Backup name
  • Compression 
  • Encryption
  • Backup Schedule (the frequency on which you like to take backups)

Get the full step by step Backup Ninja scheduling instructions here.

Step 4: Monitor your Chamilo LMS Backup

Backup Ninja dashboard gives you a quick overview of the necessary metrics you need to have to understand the performance of your backup process. 

Monitoring your Chamilo LMS Backup

Using the dashboard you can understand the status of your server, backup statistics, upcoming backups, backup size, and also backups due for deletion. This view can be customized according to your preferred timeline. Besides this, you will receive alerts and notifications on any backup events happening in your server.


With the current situation, all educational institutions using an LMS to support virtual learning should look into having a good backup and recovery plan in place. The backup and recovery plan should spell out clearly the backup management strategy. Although manual backup management is still possible, it is time consuming and can be less reliable. If you are running on an open source LMS like Chamilo, managing and monitoring the backup manually would require a technical resource. If you are concerned about minimizing downtime for your LMS and having backups managed securely, then it is best to have an automated backup service Backup Ninja as part of your backup and recovery strategy.