Ubuntu 22.04
Sponsored Link

MySQL 8.0 : mysqldump によるバックアップ2022/09/28

 
MySQL のデータベースを バックアップ する際は付属の [mysqldump] で実行可能です。
[1] バックアップ元ホストで [mysqldump] を実行してダンプデータを取得します。
# 全テーブルをロックして全データベースのダンプを取得する
# ダンプ中は読み取りもロックされるためデータベースは実質的に利用不可になる

root@dlp:~#
mysqldump --lock-all-tables --all-databases --events > mysql_dump.sql

# ロックせずに全データベースをトランザクションを利用してダンプを取得する
# [--single-transaction] でデータの整合性を保証する

root@dlp:~#
mysqldump --single-transaction --all-databases --events > mysql_dump.sql

# 特定のデータベースを指定してダンプを取得する

root@dlp:~#
mysqldump test_database --single-transaction --events > mysql_dump.sql

[2] バックアップ元で取得したダンプデータを他ホスト上でリストアするには以下のように実行します。
事前にバックアップ元で取得したダンプデータをリストア対象ホストに転送しておく必要があります。
# 全データベースのダンプデータの場合はインポートすれば OK

root@node01:~#
mysql < mysql_dump.sql

# 特定のデータベースを指定してダンプを取得した場合は
# 事前に同名の空データベースを作成した後にインポートする

root@node01:~#
mysql test_database < mysql_dump.sql

関連コンテンツ