というわけで、ここでは、phpMyAdminを使って、
データベースの一部のテーブルのみをエクスポート、それをインポートする方法を初心者でもバッチリできるように解説していきます。
phpMyAdminでデータベースの一部テーブルのみインポートのやり方。
今回は、サーバー上とPC(XAMPP)上にそれぞれMySQLデータベースがあると仮定して、
- サーバーのデータベースから一部テーブルのみをエクスポート(バックアップ)
- PC(XAMPP)のMySQLにそのテーブルのデータのみインポート
というシチュエーションで解説していきます。
1. phpMyAdminでデータベーステーブルをエクスポート
まずは、バックアップ本体の作成、つまりエクスポートのやり方を説明します。
(サーバー側の)phpMyAdminを立ち上げます。
左メニューから、エクスポートしたいテーブルをクリックします。図ではsearchesというテーブルだけエクスポートします。
画面上のパンくずリストの現在位置(赤線)がちゃんとテーブルになってる事を確認してください。
あとは、簡易のまま、実行ボタンを押すだけです。出来たエクスポートファイルをPCに保存します。
テーブルのエクスポート(バックアップ)は完了です。
2. phpMyAdminでデータベーステーブルをインポート
今度はインポートする側(PC、XAMPP側)のphpMyAdminを立ち上げます。
続きです。
左メニューのデータベース名をクリックし、構造タブを開くと、テーブル一覧が出てきます。今回インポートしたいテーブルと同じテーブルが現存してる場合は、こいつを削除ボタンを押して削除します。
削除が完了したら、そのままインポートタブを今度は開きます。
画面上のパンくずリストの現在位置(黄色線)がインポートしたいデータベースになってる事を確認してください。
参照ボタンを押して、エクスポートファイルを設定します。
基本的にデフォルトの設定のままでOKですが、エラーが出る原因になりやすい「外部キーのチェックを有効にする」だけチェックを外すのがおすすめです。
あとは実行を押せば、インポートが完了します。
先程削除したテーブルが復活し、データが入ってるはずです。
全体データベースのバックアップから一部のテーブルの復旧は可能?
もし、データベース全体のエクスポートファイルしか持ってない場合、それを使って一部のテーブルのみインポートってできるの?
エクスポートファイルって実は種類があります。
例えば、下の画像のように、パンくずリストで現在位置がテーブル: searchesになってる状態で、エクスポートタブを開くと、
「テーブル"searches"から行単位でデータをエクスポート」とでます。
そして、searches.sqlというテーブルのみのバックアップファイルができました。
これを今度は、パンくずリストの現在位置が、データベースの状態で、
エクスポートタブをクリックすると、
今度は、「データベースからテーブルをエクスポート」とでました。
今度はデータベース名のバックアップファイルができ、この場合、全テーブルのバックアップ、つまりデータベース丸ごとのバックアップが入ってる状態となります。
まず、新しいデータベースを作成し、そこに全部のバックアップをインポートする。
そこから、一部のテーブルのみエクスポートをすれば、そのテーブルのみのバックアップファイルができるじゃん?それを使えばいいわけ。
→phpMyAdminでデータベースを丸ごとインポートのやり方。初心者でもできるように解説。