🔰はじめての方へ

phpMyAdmin エクスポート&インポート方法(上書き保存対応)

PHP
記事内に広告が含まれています。
スポンサーリンク

はじめに

リモートサーバーのデータベースをローカル環境にコピーしたいとき、phpMyAdminのエクスポート・インポート機能を使うと簡単にできます。

ただし、ローカルに同じテーブルが既にある場合、そのままインポートすると

「テーブルはすでに存在します」

というエラーが出てしまいます。

この記事では、上書きインポートできるエクスポート方法を紹介します。


エクスポート手順(リモート側)

1、phpMyAdminを開き、エクスポートしたいテーブルをクリック

2、上のタブから 「エクスポート」 をクリック

3、エクスポート方法を 「簡易」から「詳細」に変更する

4、下にスクロールして 「生成オプション」 セクションを探す

5、「DROP TABLE / TRIGGER コマンドを追加する」にチェックを入れる

6、「実行」 をクリックしてファイルをダウンロード

ポイント:

この「DROP TABLE」のチェックが重要です。

これにより、インポート時に既存のテーブルを自動で削除してから新しく作り直してくれます


インポート手順(ローカル側)

  1. ローカルのphpMyAdminを開く
  2. インポート先の データベースを選択(テーブルではなくデータベース)
  3. 上のタブから 「インポート」 をクリック
  4. 「ファイルを選択」 でエクスポートしたファイルを選ぶ
  5. 「実行」 をクリック

これだけで、既存のテーブルがあっても上書きでインポートされます。


「DROP TABLE」ありとなしの違い

設定インポート時の動作同じテーブルが既にある場合
チェックなし(簡易エクスポート)テーブル作成 → データ挿入エラーになる
チェックあり(詳細エクスポート)既存テーブル削除 → テーブル作成 → データ挿入上書きされる

よくあるエラーと対処

エラー:#1050 - 表 'テーブル名' はすでに存在します。

→ エクスポート時に「DROP TABLE」にチェックを入れずにエクスポートしたファイルを使っています。

上記の手順でエクスポートし直してください。

エラー:#1062 - Duplicate entry 'x' for key 'PRIMARY'

→ テーブル内に同じIDのデータが既にあります。これも「DROP TABLE」付きでエクスポートし直せば解決します。


まとめ

  • エクスポートは 「詳細」モード を使う
  • 「DROP TABLE」にチェック を入れる
  • インポートは データベースを選んで から実行する

この3つを覚えておけば、リモートのデータベースをローカルにいつでも上書きコピーできます。