UTF-8仕様XOOPSサイトお引越し:XREA⇒エックスサーバ編1:MySQLデータのエクスポートとインポート with PhpMyAdmin
UTF-8仕様のXOOPSで構築しているサイトをXREAからエックスサーバへ移転しました。備忘録としてメモしておきます。
UTF-8仕様のXOOPSで構築しているサイトをXREAからエックスサーバへ移転しました。備忘録としてメモしておきます。
とりあえずMySQLデータを移行させるのが先決。XREA間で移転するの場合はダンプファイルを作ってそのまま復元するだけで済みますが、エックスサーバへと移転するのでPhpMyAdminでMySQLのデータをエクスポートするのですが……
PhpMyAdminにログインできない
……_| ̄|○…………
実は以前も同じようなことが発生したことがあり、その際はPhpMyAdminをインストールしなおしたら直ったので、今回もPhpMyAdminをインストールしなおしてみたのですが……
やっぱりPhpMyAdminにログインできない
……_| ̄|○…………
configファイルをいじってみてもダメ。カスタマに問い合わせたらデータベースを作り直してPhpMyAdminをインストールせよとのことだったので、ためしに新しいデータベースを作って再度PhpMyAdminをインストールしたところ、PhpMyAdminにはログインできるようになりました。
ただ、新しく作ったデータベースを開くことはできるのですが、肝心の既存のデータベースは開けません。そこで、既存のデータベースを新しく作成したデータベースにXREAのMySQLダンプ機能を使って復元することにより、ようやくPhpMyAdminで既存のデータを開くことができるようになりました。
1.MySQLデータのエクスポート
で、やっとのことエクスポートが始まります。手順はこんな感じ……
1.ログイン後に表示されるメインページ画面右でLanguageについて「日本語 Japanese - utf-8」を選択
2.画面中央下の「エクスポート」をクリック
3.エクスポートするデータベースを選択
4.構造の「DROP TABLE」を追加
5.データの「完全なINSERT文を作成する」にチェックを入れる
6.「ファイルで保存する」にチェックを入れる
7.エンコーディングはnonにチェックが入っていることを確認
8.「実行」をクリックしてダウンロード開始
ちなみにデータベースについては全くのシロウトなので、エクスポートの細かい設定はわかりません。「3」と「4」についてはいろいろなサイトを調べたところチェックしている人が多いみたいだったのでチェックを入れただけです。
で、落ちてきたファイルをエックスサーバで事前に作成しておいたMySQLデータベースにインポートするのですが……
エラー
……_| ̄|○…………
エラー文を見てもいまいちよくわかりません。容量的には4Mちょっとなので一発でいけそうな気がするのですが、そこは格安サーバなので落としきれなかった可能性があると踏んで改めてテーブルコマギレにてエクスポートします。
テーブル単位でエクスポートする場合は左からデータベース名を選択し、テーブルが一覧表示されている画面上部のエクスポートタブからエクスポート画面を開きます。
後はテーブルを選択して上記の手順でエクスポートするだけ。テーブルは複数選択できますので、適当な数に区切ってエクスポートすればいいでしょう。
それでもサイズオーバーになる場合は圧縮してダウンロードしてみてください。
2.MySQLデータのインポート
インポートはもっと簡単です。エクスポートの時と同じくログイン後の画面右側のLanguageで「日本語 Japanese - utf-8」を選択し、画面中央下「インポート」をクリックします。
インポート画面にて「ファイルをインポートする」の「テキストファイルの場所」の「Browse」からエクスポートしたデータを選択し、右下の「実行する」ボタンを押します。「インポートに成功しました。」とのメッセージが出れば成功です。
テーブル毎または複数のテーブル毎にまとめてエクスポートした場合は、phpMyAdminのログイン後の画面でインポートする予定のデータベースを選択します。
画面左のデータベース名をクリックするとテーブル一覧の画面になります(データがない状態ではテーブルは表示されない)。「インポート」をリンクをクリックしてインポート画面を開き、「ファイルをインポートする」の「テキストファイルの場所」の「Broese」からエクスポートしたデータを選択します。「インポートに成功しました。」とのメッセージが出れば成功です。
これを繰り返してエクスポートしたファイルをすべてインポートしてください。これでエクスポートとインポートは完了です。
なお、PhpMyAdminのバージョンによって画面表示が多少異なります。古いヴァージョンではインポートのリンクが存在しないので、テーブル一覧の画面からSQLを選択して、そこからインポートすることになります。
【参考にさせていただいたページ】
phpMyAdminの説明 > phpMyAdminを利用したMySQLテーブルのバックアップ(デジタルデータシステムズ)
phpMyAdminでのサーバ間データ移行(Heartless -Sena-)
