データベース応用コース6/9
バックアップを取得してみよう
このシナリオではデータベースのバックアップについて学んでいきます。
バックアップとは
バックアップとは既存のデータのコピーを作成し、もしデータベースが不慮の事故により壊れてしまってもデータのコピーを使って元通りにデータを復元するためのデータのことを指します。
バックアップを取得することは安全にデータを維持することだけが目的ではありません。
開発の初期において、データをバックアップすることで、複数人で同じデータを用意してシステムを開発することができます。ひとつのデータベースで予めデータを用意しておくことで、他のデータベースにもデータを手動で入力するのではなく、バックアップデータを反映させることで全く同じ環境のデータを用意することができるので、非常に便利です。
バックアップの取り方
バックアップを取得するにはmysqldumpコマンドを使用します。
mysqldump -u ユーザ名 -h 対象のデータベースのIPアドレス -p データベース名 > ファイル名.sql
以上のコマンドを実行することで、特定の名前のデータベースのバックアップファイル(〇〇.sql)を作成することができます。また、バックアップファイルを作成する際には複数のデータベースをバックアップの対象としたり、全てのデータを対象とすることもできます。
# 複数データベースを対象とする場合
mysqldump -u ユーザ名 -h 対象のデータベースのIPアドレス -p --databases データベース名1 データベース名2 > ファイル名.sql
# 全てのデータベースを対象とする場合
mysqldump -u ユーザ名 -h 対象のデータベースのIPアドレス -p --all-databases > ファイル名.sql
# ユーザの情報を対象とする場合
mysqldump -u ユーザ名 -h 対象のデータベースのIPアドレス -p --allow-keywords mysql > ファイル名.sql
バックアップファイルを作成したい対象のデータベースの数によってコマンドを使い分けるといいでしょう。
また、バックアップファイルを使ってデータを復元するには以下のコマンドを使用します。
mysql -u root -h 対象のデータベースのIPアドレス -p -d データベース名 < バックアップファイル名.sql
まとめ
問題を解くためには、十分な画面サイズのPC環境をご利用下さい。