MySQL MariaDBで特定のデータベースのバックアップ(保存)とリストア(復元)の方法 (ダンプ、Dump)

MySQLで特定のデータベースをバックアップ(保存、Backup)したり、リストア(復元、Restore)したりすることがよくあります。
私の場合、よく使うけど、よく忘れる(^^)ので、やり方をメモしておきました。

スポンサーリンク

データベースのダンプ、Dumpとは

ダンプとは、デバッグやデータ修復のために、ファイルやメモリの内容をディスクに出力することをいいます。

ダンプされたファイルにはダンプ作成時のメモリ上のデータが丸ごと書き出されます。
プログラムの開発などを行う場面では、データをダンプしてデバッガに読み込ませると、プログラムの問題点を発見できることがあります。
特にUNIX系OSにおける、メモリを強制的に中断させて内容を書き出すことを、コアダンプ(Core Dump)と呼びます。
メモリ違反を起こしたプログラムはコアダンプを出力して強制終了することがあります。

データベースにおいては、データベースの情報をファイルに書き出して保存することダンプと呼びます。
このダンプはデータベース移行のバックアップ(保存)の際に利用されます。

データベースのバックアップ、ダンプの作成方法

特定のデータベースのみのバックアップを行うには、以下のコマンドを使います。
ダンプファイル名は、よくdump.sqlとかしますが任意の名前で大丈夫です。

文字コードを指定して出力するには次のようにします。

全てのデータベースのバックアップするには次のようにします。

ちなみにダンプファイルはテキストファイルです。
リダイレクトしないと画面に出力されます。

ダンプからデータベースをリストアする方法

特定のデータベースのみリストア(復元)するには、以下のコマンドを使います。

全てのデータベースをリストアするには次のようにします。

まとめ

バックアップ、リストアはよく使います。
バックアップをエクスポート、リストアをインポートと呼ぶこともあるようです。
運用に入ると、Linuxではcron.dailyを使って毎日バックアップします。

最後まで読んでいただきありがとうござました。

スポンサーリンク
スポンサーリンク
Translate »