Ubuntu 20.04
Sponsored Link

MySQL 8.0 : mysqldump によるバックアップ
2020/09/02
 
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

関連コンテンツ