openSUSE Leap 16

MariaDB 11.8 : バックアップ2025/11/24

 

MariaDB のデータベースを バックアップ/リストア する際は付属のツールで実行可能です。

[1] バックアップを実行します。
例として、[/home/mariadb_backup] ディレクトリ配下にバックアップを取得します。
www:~ #
mkdir /home/mariadb_backup

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

[00] 2025-11-24 10:06:32 Connecting to MariaDB server host: localhost, user: root, password: not set, port: not set, socket: not set
[00] 2025-11-24 10:06:32 Using server version 11.8.3-MariaDB
mariadb-backup based on MariaDB server 11.8.3-MariaDB Linux (x86_64)
[00] 2025-11-24 10:06:32 uses posix_fadvise().
[00] 2025-11-24 10:06:32 cd to /var/lib/mysql/
[00] 2025-11-24 10:06:32 open files limit requested 0, set to 1024
[00] 2025-11-24 10:06:32 mariabackup: using the following InnoDB configuration:
[00] 2025-11-24 10:06:32 innodb_data_home_dir =
[00] 2025-11-24 10:06:32 innodb_data_file_path = ibdata1:12M:autoextend
[00] 2025-11-24 10:06:32 innodb_log_group_home_dir = ./
.....
.....
[00] 2025-11-24 10:06:38 Writing backup-my.cnf
[00] 2025-11-24 10:06:38         ...done
[00] 2025-11-24 10:06:38 Writing mariadb_backup_info
[00] 2025-11-24 10:06:38         ...done
[00] 2025-11-24 10:06:38 Redo log (from LSN 50466 to 50482) was copied.
[00] 2025-11-24 10:06:38 completed OK!

www:~ #
ll /home/mariadb_backup

total 43448
-rw-r-----. 1 root root   417792 Nov 24 10:06 aria_log.00000001
-rw-r-----. 1 root root       52 Nov 24 10:06 aria_log_control
-rw-r-----. 1 root root      285 Nov 24 10:06 backup-my.cnf
-rw-r-----. 1 root root    12304 Nov 24 10:06 ib_logfile0
-rw-r-----. 1 root root 12582912 Nov 24 10:06 ibdata1
-rw-r-----. 1 root root       97 Nov 24 10:06 mariadb_backup_checkpoints
-rw-r-----. 1 root root      432 Nov 24 10:06 mariadb_backup_info
drwx------. 1 root root     2718 Nov 24 10:06 mysql
drwx------. 1 root root       12 Nov 24 10:06 performance_schema
drwx------. 1 root root     6600 Nov 24 10:06 sys
drwx------. 1 root root       12 Nov 24 10:06 test
drwx------. 1 root root       68 Nov 24 10:06 test_database
-rw-r-----. 1 root root 10485760 Nov 24 10:06 undo001
-rw-r-----. 1 root root 10485760 Nov 24 10:06 undo002
-rw-r-----. 1 root root 10485760 Nov 24 10:06 undo003
[3] バックアップしたデータを、他ホスト上の MariaDB サーバーへリストアします。
事前にバックアップしたデータを [tar] でまとめるなり [rsync] でそのまま転送する等して、バックアップデータをリストア先サーバーに転送しておいてください。
# MariaDB を停止して既存データは削除

node01:~ #
systemctl stop mariadb

node01:~ #
rm -rf /var/lib/mysql/*
# 転送したバックアップデータ

node01:~ #
ll mariadb_backup.tar.gz

-rw-r--r--. 1 suse suse 739913 Nov 24 10:09 mariadb_backup.tar.gz
node01:~ #
tar zxvf mariadb_backup.tar.gz

# リストア事前タスク実行 : [completed OK] であれば OK

node01:~ #
mariadb-backup --prepare --target-dir /root/mariadb_backup

mariadb-backup based on MariaDB server 11.8.3-MariaDB Linux (x86_64)
[00] 2025-11-24 10:11:16 cd to /root/mariadb_backup/
[00] 2025-11-24 10:11:16 open files limit requested 0, set to 1024
[00] 2025-11-24 10:11:16 This target seems to be already prepared.
[00] 2025-11-24 10:11:16 mariabackup: using the following InnoDB configuration for recovery:
[00] 2025-11-24 10:11:16 innodb_data_home_dir = .
[00] 2025-11-24 10:11:16 innodb_data_file_path = ibdata1:12M:autoextend
[00] 2025-11-24 10:11:16 innodb_log_group_home_dir = .
[00] 2025-11-24 10:11:16 Starting InnoDB instance for recovery.
[00] 2025-11-24 10:11:16 mariabackup: Using 100663296 bytes for buffer pool (set by --use-memory parameter)
2025-11-24 10:11:16 0 [Note] InnoDB: Compressed tables use zlib 1.2.13
2025-11-24 10:11:16 0 [Note] InnoDB: Number of transaction pools: 1
2025-11-24 10:11:16 0 [Note] InnoDB: Using AVX512 instructions
2025-11-24 10:11:16 0 [Note] InnoDB: Using Linux native AIO
2025-11-24 10:11:16 0 [Note] InnoDB: innodb_buffer_pool_size_max=96m, innodb_buffer_pool_size=96m
2025-11-24 10:11:16 0 [Note] InnoDB: Completed initialization of buffer pool
2025-11-24 10:11:16 0 [Note] InnoDB: Memory-mapped log (block size=512 bytes)
2025-11-24 10:11:16 0 [Note] InnoDB: End of log at LSN=50482
2025-11-24 10:11:16 0 [Note] InnoDB: Buffered log writes (block size=512 bytes)
[00] 2025-11-24 10:11:16 Last binlog file , position 0
[00] 2025-11-24 10:11:16 completed OK!

# リストア実行

node01:~ #
mariadb-backup --copy-back --target-dir /root/mariadb_backup

mariadb-backup based on MariaDB server 11.8.3-MariaDB Linux (x86_64)
[01] 2025-11-24 10:11:48 Copying ./aria_log_control to /var/lib/mysql/aria_log_control
[01] 2025-11-24 10:11:48         ...done
[01] 2025-11-24 10:11:48 Copying ./aria_log.00000001 to /var/lib/mysql/aria_log.00000001
[01] 2025-11-24 10:11:48         ...done
[01] 2025-11-24 10:11:48 Copying undo001 to /var/lib/mysql/undo001
[01] 2025-11-24 10:11:48         ...done
[01] 2025-11-24 10:11:48 Copying undo002 to /var/lib/mysql/undo002
[01] 2025-11-24 10:11:48         ...done
[01] 2025-11-24 10:11:48 Copying undo003 to /var/lib/mysql/undo003
[01] 2025-11-24 10:11:48         ...done
[01] 2025-11-24 10:11:48 Copying ib_logfile0 to /var/lib/mysql/ib_logfile0
[01] 2025-11-24 10:11:48         ...done
.....
.....
[01] 2025-11-24 10:11:48 Copying ./mariadb_backup_info to /var/lib/mysql/mariadb_backup_info
[01] 2025-11-24 10:11:48         ...done
[01] 2025-11-24 10:11:48 Copying ./xtrabackup_binlog_pos_innodb to /var/lib/mysql/xtrabackup_binlog_pos_innodb
[01] 2025-11-24 10:11:48         ...done
[00] 2025-11-24 10:11:48 completed OK!

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

node01:~ #
restorecon -R /var/lib/mysql

node01:~ #
systemctl start mariadb

関連コンテンツ