Ubuntu 25.04
Sponsored Link

MariaDB 11.4 : Backup2025/04/22

 

For Backup and Restore MariaDB Data, it's possible to run with [mariabackup].

[1] Install Backup tool.
root@www:~#
apt -y install mariadb-backup
[2] Run Backup.
For example, get backup under [/home/mariadb_backup].
root@www:~#
mkdir /home/mariadb_backup

root@www:~#
mariabackup --backup --target-dir /home/mariadb_backup -u root


.....
.....

[00] 2025-04-22 04:31:30 BACKUP STAGE END
[00] 2025-04-22 04:31:30 Executing BACKUP STAGE END
[00] 2025-04-22 04:31:30 All tables unlocked
[00] 2025-04-22 04:31:30 Backup created in directory '/home/mariadb_backup/'
[00] 2025-04-22 04:31:30 Writing backup-my.cnf
[00] 2025-04-22 04:31:30         ...done
[00] 2025-04-22 04:31:30 Writing mariadb_backup_info
[00] 2025-04-22 04:31:30         ...done
[00] 2025-04-22 04:31:30 Redo log (from LSN 50602 to 50618) was copied.
[00] 2025-04-22 04:31:30 completed OK!

root@www:~#
ll /home/mariadb_backup

total 43480
drwxr-xr-x 6 root root     4096 Apr 22 04:31 ./
drwxr-xr-x 4 root root     4096 Apr 22 04:31 ../
-rw-r----- 1 root root   417792 Apr 22 04:31 aria_log.00000001
-rw-r----- 1 root root       52 Apr 22 04:31 aria_log_control
-rw-r----- 1 root root      501 Apr 22 04:31 backup-my.cnf
-rw-r----- 1 root root    12304 Apr 22 04:31 ib_logfile0
-rw-r----- 1 root root 12582912 Apr 22 04:31 ibdata1
-rw-r----- 1 root root       97 Apr 22 04:31 mariadb_backup_checkpoints
-rw-r----- 1 root root      431 Apr 22 04:31 mariadb_backup_info
drwx------ 2 root root     4096 Apr 22 04:31 mysql/
drwx------ 2 root root     4096 Apr 22 04:31 performance_schema/
drwx------ 2 root root    12288 Apr 22 04:31 sys/
drwx------ 2 root root     4096 Apr 22 04:31 test_database/
-rw-r----- 1 root root 10485760 Apr 22 04:31 undo001
-rw-r----- 1 root root 10485760 Apr 22 04:31 undo002
-rw-r----- 1 root root 10485760 Apr 22 04:31 undo003
[3] For restoring data from backup on another host, run like follows.
Before restoring, transfer backup data to the target host with [rsync] or [scp] and so on.
# stop MariaDB and remove existing data

root@node01:~#
systemctl stop mariadb

root@node01:~#
rm -rf /var/lib/mysql/*
# transferred backup data

root@node01:~#
ll mariadb_backup.tar.gz

-rw-r--r-- 1 root root 747646 Apr 22 04:44 mariadb_backup.tar.gz
root@node01:~#
tar zxvf mariadb_backup.tar.gz

# run prepare task before restore task (OK if [completed OK])

root@node01:~#
mariabackup --prepare --target-dir /root/mariadb_backup

mariabackup based on MariaDB server 11.4.5-MariaDB debian-linux-gnu (x86_64)
[00] 2025-04-22 04:45:28 cd to /root/mariadb_backup/
[00] 2025-04-22 04:45:28 open files limit requested 0, set to 1024
[00] 2025-04-22 04:45:28 Loading encryption plugin from provider_bzip2=provider_bzip2;provider_lz4=provider_lz4;provider_lzma=provider_lzma;provider_lzo=provider_lzo;provider_snappy=provider_snappy
[00] 2025-04-22 04:45:28 Loading encryption plugin
[00] 2025-04-22 04:45:28         Encryption plugin parameter :  '--plugin_load=provider_bzip2=provider_bzip2;provider_lz4=provider_lz4;provider_lzma=provider_lzma;provider_lzo=provider_lzo;provider_snappy=provider_snappy'
[00] 2025-04-22 04:45:28         Encryption plugin parameter :  '--innodb_encrypt_tables=OFF'
[00] 2025-04-22 04:45:28         Encryption plugin parameter :  '--prepare'
[00] 2025-04-22 04:45:28         Encryption plugin parameter :  '--target-dir'
[00] 2025-04-22 04:45:28         Encryption plugin parameter :  '/root/mariadb_backup'
[00] 2025-04-22 04:45:28 This target seems to be not prepared yet.
[00] 2025-04-22 04:45:28 mariabackup: using the following InnoDB configuration for recovery:
[00] 2025-04-22 04:45:28 innodb_data_home_dir = .
[00] 2025-04-22 04:45:28 innodb_data_file_path = ibdata1:12M:autoextend
[00] 2025-04-22 04:45:28 innodb_log_group_home_dir = .
[00] 2025-04-22 04:45:28 InnoDB: Using liburing
[00] 2025-04-22 04:45:28 Starting InnoDB instance for recovery.
[00] 2025-04-22 04:45:28 mariabackup: Using 104857600 bytes for buffer pool (set by --use-memory parameter)
2025-04-22  4:45:28 0 [Note] InnoDB: Compressed tables use zlib 1.3.1
2025-04-22  4:45:28 0 [Note] InnoDB: Number of transaction pools: 1
2025-04-22  4:45:28 0 [Note] InnoDB: Using AVX512 instructions
2025-04-22  4:45:28 0 [Note] InnoDB: Using liburing
2025-04-22  4:45:28 0 [Note] InnoDB: Initializing buffer pool, total size = 100.000MiB, chunk size = 100.000MiB
2025-04-22  4:45:28 0 [Note] InnoDB: Completed initialization of buffer pool
2025-04-22  4:45:28 0 [Note] InnoDB: Memory-mapped log (block size=512 bytes)
2025-04-22  4:45:28 0 [Note] InnoDB: End of log at LSN=50618
2025-04-22  4:45:28 0 [Note] InnoDB: Buffered log writes (block size=512 bytes)
[00] 2025-04-22 04:45:28 Last binlog file , position 0
recovered pages: 0% 33% 45% 89% 100% (0.0 seconds); tables to flush: 1 0 (0.0 seconds);
[00] 2025-04-22 04:45:28 completed OK!

# run restore

root@node01:~#
mariabackup --copy-back --target-dir /root/mariadb_backup


.....
.....

[01] 2025-04-22 04:45:59 Copying ./performance_schema/db.opt to /var/lib/mysql/performance_schema/db.opt
[01] 2025-04-22 04:45:59         ...done
[01] 2025-04-22 04:45:59 Copying ./xtrabackup_binlog_pos_innodb to /var/lib/mysql/xtrabackup_binlog_pos_innodb
[01] 2025-04-22 04:45:59         ...done
[01] 2025-04-22 04:45:59 Copying ./mariadb_backup_info to /var/lib/mysql/mariadb_backup_info
[01] 2025-04-22 04:45:59         ...done
[00] 2025-04-22 04:45:59 completed OK!

root@node01:~#
chown -R mysql:mysql /var/lib/mysql

root@node01:~#
systemctl start mariadb

Matched Content