Updated April 12, 2023
Introduction to MariaDB backup
MariaDB backup is the most important function to backup the entire data from the MariaDB server. We have two options to perform backup, such as full backup and incremental backup. In the full backup, we create the entire backup of the database server with an empty directory. On the other hand, while performing an incremental backup, we back up all data from the server, such as the previous backup, with whatever we make the changes into the database. MariaDB minimizes the lock during the backup for concurrency and faster backup. MariaDB provides two options to take the backup: the logical and physical backup process.
mysqldump specified database name > file name.sql;
In the above syntax, we use mysqldump command to take backup of the database; here, the specified database name means the actual database name that we need to backup and file name.sql is used for backup content.
How to perform a backup in MariaDB?
Let’s see how backup works in MariaDB as follows. Basically, we can perform a backup by using two methods as follows.
1. By using Logical Backup
We can restore data on the other hardware configuration in the logical backup, such as DBMS or MariaDB version. The Logical backup is more flexible. We can perform a logical backup at the level of table and database because of flexibility reasons. The logical backup size is larger than the physical backup, and it takes more time to back and restore the database. The log files and configuration files we cannot consider for logical backup.
2. By using Physical Backup
We cannot restore data on other hardware configurations like DBMS or different MariaDB versions in the physical backup. We can perform a physical backup at the level of directories and files.
For logical backup purposes, we use the mysqldump command. This is more suitable, or we can say that a more flexible way to perform a logical backup is suitable for small databases. If the database size is large, then it also required a large time to table backup. The mysqldump backup data into the sql format and backups the data into the other format such as CSV or XML format, and it can be easily imported into the other database. We are also able to dump the data into the other version of MariaDB, MySQL and another DBMS.
Logical Backup of InnoDB
In InnoDB, it uses the buffer pool concept to store its table’s data and index in the memory. When we consider performance, then a buffer is very important for that purpose. The buffer contains the frequently accessed data from the MariaDB server. When we perform a full table scan at that time, it copies all data into the buffer pool, but this is the disadvantage of logical backup because every time it scans the entire table or database, and it is a time-consuming process, so how we can avoid this problem by using the innidb_old_blocks_time system variable. It works with milliseconds that means recently accessed data inserted into the new sub list of the buffer pool, and data that is accessed only ounces should remain in the old sub list of the buffer pool.
Backup the Database Server
When we need to take the backup at that time, we must need to run the MariaDB backup option with a specified database name. The backup depends on the size of the database or tables; during the backup command execution, we can cancel the backup command, and it does not modify the database. When we provide the target directory at the time of backup, if the target directory does not exist, then it automatically creates, and if the target directory exists and it contains files, then it shows the error messages.
Let’s see a different example to better understand the MariaDB backup as follows.
Basically, in the MariaDB server, we use mysqldump command to backup the database, so let’s see how we can use mysqldump as follows.
mysqldump sample > samplebackup.sql
In the above example, we use mysqldump command to back up the entire database. Here the sample is a database name that we need to back up, and samplebackup.sql is sql file name for backup of the sample database. See here we back up only a single database as shown in the above statement. The final output of the above query we illustrate by using the following snapshot.
Similarly, we can backup tables and multiple databases by using mysqldump command. mysqldump [specified option] –all- database
With the above statement’s help, we can back up the entire database from the MariaDB server. Here the specified option means the option that we need to apply with mysqldump.
The mysqldump provides different options to the user as follows.
- –all- database
The above option is used to dump the entire database from the MariaDB server.
With the help of the above option, we can dump all table spaces.
- –no- tablespaces
When we use the above option with table space, that means do not dump any table space data.
- –add-drop- database
This option is basically used for the conjunction of databases.
- –add-drop- table
It is used to add a drop table command before each creates a statement.
- –add-drop- trigger
With this option’s help, we add a drop trigger command before each creates a trigger statement.
- –add- locks
We can add the lock for the insert statement for a faster result of insert operation when the dump file is reloaded.
- –allow- keywords
This option is used for prefixing each name with the specified table name
- –complete- insert
By using the above option, we can use the insert option that includes column names.
- –create- option
This option includes all specified create options with create table statements.
- –delayed -insert
With the help of the above statement, we are able to insert new rows instead of insert.
The mysqldump provides lots of options to the user.
We hope from this article you have understood about the MariaDB Backup. From this article, we have learned the basic syntax of MariaDB Backup, and we also see different examples of MariaDB Backup. From this article, we learned how and when we use MariaDB Backup.
We hope that this EDUCBA information on “MariaDB backup” was beneficial to you. You can view EDUCBA’s recommended articles for more information.