[MySQL] データベースのバックアップと復元方法(dump)

MySQLで任意のデータベースのバックアップ及び復元、すべてのデータベースのバックアップ及び復元する方法についてです。データのバックアップはmysqldumpというコマンドを使います。
特定のデータベースのバックアップと復元
バックアップ
MySQL でデータベースのバックアップを取るには、ターミナルから以下のコマンドを入力します。
1 |
# mysqldump -u ユーザ名 -p DB名 > /出力先ディレクトリ/ファイル名 |
sampleというデータベースを backup.sql というファイルに保存する場合は以下のようになります。
1 |
# mysqldump -u root -p sample > /var/backup_sql/backup.sql |
※文字化けが発生する場合は文字コードをつけることによって文字化けを回避できます。
1 |
# mysqldump –default-character-set=utf8 -u ユーザ名 -p DB名 > /出力先ディレクトリ/ファイル名 |
データの復元
バックアップを取ったデータベースを元に戻す場合は、ターミナルから以下のコマンドを入力します。
1 |
# mysql -u ユーザ名 -p DB名 < /ダンプファイルディレクトリ/ダンプファイル名 |
sampleというデータベースに「/var/backup_sql/backup.sql」に保存してあるファイル「backup.sql」をインポートする場合は以下のようなコマンドをターミナルに入力します。
1 |
# mysql -u root -p sample < /var/backup_sql/backup.sql |
すべてのデータベースのバックアップ
ここまでは特定のデータベースのバックアップ・復元の方法について記載しましたが、MySQLに登録されているデータベース全てのバックアップを取る方法もあります。データ量が小さいうちはphpMyAdminの管理画面からエクスポートできますが、データ量が大きくなるとphpMyAdminのエクスポートでは対応が厳しくなります。そんなときは、ターミナルからバックアップデータを生成しましょう。
バックアップとるには
1 |
# mysqldump -u root -x –all-databases > /出力先ディレクトリ/ファイル名 |
復元方法は
1 |
# mysql -u root -p < /ダンプファイルディレクトリ/ダンプファイル名 |
関連記事
- [CakePHP] MacのMAMP環境にインストールする方法
- [CentOS] 7.xにphpMyAdminをインストール
- [MySQL]8.x phpMyAdminでGrant文が使えない
- [phpMyAdmin] PHP Parse error: syntax error, unexpected ‘@’ ・・・エラー対処方法
- [Linux] phpMyAdminインストール時に mbstring エラーが出たときの対処方法