- OS: Ubuntu 18.04
- DB: MySQL 5.7 (InnoDB)
ここでは MySQL (InnoDB) のデータをバックアップする方法をおこないます。
MySQL(MyISAM) のバックアップでも使えますが、その場合は最適なオプションが異なります。
2種類の方法で行います.
- 特定のデータベースをバックアップする方法
- 全てのデータベースをバックアップする方法
構文: mysqldump [オプション] --single-transaction -u DBユーザ名 -p DB名 > 出力先ファイル名 2> dump.err
InnoDBの場合, オプション
には --single-transaction
をつけることを推奨します。 このオプションをつけることによって、データベースをロックせずにバックアップを取得することができます.
2> dump.errr
は標準エラー出力をテキストに吐き出す時につかいます.
// labot ユーザで demo_db_000 データベースをバックアップする
$ mysqldump --single-transaction -u labot -p demo_db_000 > demo_db_00.sql 2> dump.err
全てのデータベースをバックアップする際には --all-databases
オプションを利用します.
構文: mysqldump [オプション] --single-transaction -u DBユーザ名 -p --all-databases > 出力先ファイル名 2> dump.err
// labot ユーザでアクセスできる全データベースをバックアップする
$ mysqldump --single-transaction -u labot -p --all-databases > demo_db_00_all.sql 2> dump.err
ここではMySQL の復元を行います。
復元のことを リストア
とも言います。
2種類の方法を紹介します.
- 特定のデータベースを復元する方法
- 全てのデータベースを復元する方法
構文: mysqldump [オプション] -u DBユーザ名 -p DB名 < ダンプファイル > backup.out 2>&1
構文: mysqldump [オプション] -u root -p < ダンプファイル > backup.out 2>&1
以下のサイトでは、バックアップや復元などの際に気をつけることなどがまとまっています。ぜひ目を通してください。