前回はインデックスの作成方法を紹介しました
MySQLインデックス設定方法 – HeidiSQLでデータベースらくらく開発
今回は XAMPP ローカル環境で使用していたデータベーステーブルをレンタルサーバー上の実行環境にインポートする方法の紹介です
テーブルデータのエクスポート/インポート
公開サイトのデータベースへテーブルデータの複製を作成します
一番簡単と思われる sql ファイルのエクスポート/インポートでやってみます
エクスポート
HeidiSQL を使って、ローカル環境のデータベーステーブルをエクスポートします
sql ファイル形式
該当テーブル上で右クリックして データベースを SQL としてエクスポート を選択します
ダイアログが表示されるので、オプションを設定します
今回のエクスポート先にはまだテーブルがありませんので、テーブル作成にチェックを入れ、データは INSERT を指定。
保存先を指定して エクスポート ボタンをクリックして実行します
作成されたファイルをエディターで開いてみると、こんな感じです
最初にテーブルがなければ作成するSQLが記述されていて、後はデータを1件毎に INSERT するSQLとなっています
※エクスポートオプションは、テーブルドロップやデータ挿入方法の設定がありますので状況に合わせて適切に指定して下さい
ちなみに、エクセル等でデータを使用したい場合はCSV形式でエクスポートすることが出来ます
CSV形式
エクセル用に書き出す場合は、CSV形式を使用します
テーブルのレコード表示画面で右クリックから グリッド行のエクスポート を指定します
※下図のようにレコードを選択しておくと、その部分だけをエクスポートすることが出来ます
ダイアログが開くのでデータ形式やレコード範囲を指定して実行します
※指定レコードのみをエクスポートする場合は、カラムを選択の Selection を選択します
インポート
データベース操作に HeidiSQL を使って気持ちよく作業してたので、当然レンタルサーバーへの操作にも使いたいと思いましたが、レンタルサーバーではセキュリティ対策の為か外部からデータベースクライアント接続が出来ません (>_<)
仕方がないので公開サイトへのインポート作業は phpMyAdmin を使うこととしました
レンタルサーバーの管理パネルから phpMyAdmin を起動して先ほど作成して sql ファイルのインポートを行います
※レンタルサーバーによっては phpMyAdmin が使えない場合もあります
phpMyAdmin
該当するデータベースを指定して、インポートタブをクリックします
先ほどエクスポートした sqlファイルを アップロードファイルとして指定 して実行します
実行するとテーブルが作成されデータが挿入されます
phpMyAdmin はちょっと使いづらいですが、インポートやエクスポート作業は簡単に出来たので、これで自由に公開サイトのテーブルとローカル環境のテーブルを扱えます
2015/7/8 追記
エックスサーバーを使用している方限定の情報ですが、SSHポートフォワードと言う方法で HeidiSQL から接続できることが分かりました
HeidiSQLでエックスサーバーのMySQLにSSHポートフォワード接続
これでプラグイン検索サービスを作成した時に学んだデータベースの扱い方についての紹介は終わりです
データベース操作に関しての雑感
WordPress での新規テーブル作成から、テーブル結合、インデックス設定、テーブルエクスポート/インポート まで4回わたり紹介させて頂きました
データベースは、とっつきにくい感じでちょっと避けていたところもあったのですが、HeidiSQLを使ったことで、作業がとても楽しく効率よく出来たような気がします
SQLで困っても検索すれば沢山の情報があるので、いろいろ試してみるのがやっぱり大切です
既にデータベースを扱い慣れた方にとっては物足りない内容だったとは思いますが、WordPress でデータベース操作入門として少しは参考になるかなと思います (^^)
私もデータベースは初心者ですので、機会があれば、トランザクションや全文検索などさらに高度な使い方についても挑戦してみたいと思っています
ちなみに今回作成したデータベース操作のコードは 、既に下記ページで公開しています
WordPressに新規テーブル作成 – HeidiSQLでデータベースらくらく開発
また、作成したプラグイン検索サービスも下記で公開していますので、試してみてください
WordPressプラグインアンテナ – Yet Another Plugin Directory
参考となるように人気のプラグインを紹介いたします。 日本製プラグインも応援してます (^^)
また、新たな修行です I’ll be back. (^^)