うちのデータベースをmigrationコンポーネントでJoomla!1.5用に出力し、Joomla!1.5準備サイトにデータを移行してみた。以下は、その際邪魔になるデータをSQLファイルから削除したリストです。
※私が面倒くさがり屋だとは言え、さすがにJoomla!1.5に移行するのにサイトのバックアップを取らずに行うほどではない。さらに別の環境を用意して準備するのが通常だと思う。
マイグレーションの手順は、次のようになっているので以下のリストが不要になります。
新規インストール中に、2で作成したデータベースのファイルをmigrate.sqlにリネームし、installation/sql/migrationフォルダにあらかじめ入れ、実行するが当サイトの場合エラーが発生し、不完全な状態になってしまったので以下のようにしました。
migrationツールでエクスポートしたSQLファイルから以下を削除した。
※ツールの設定次第で、こんなことしなくて良いかもしれない。
サイトを運営していると新しいエクステンションをテストしたり、表示を確かめることってありますよね。Joomla!の場合オンライン上で記事を書き、また編集できちゃうので以前のローカルでテストしてということをされていない方もおられるのではないでしょうか。
サイトのローカルコピーを先日再作成したときの手順を書いてみます。
必要なもの
ファイルのコピー
まずは、サーバー上のファイルをすべてローカルWebサーバー上のXAMPPならhtdocs以下の任意のフォルダにコピーします。
XAMPPをインストールしたフォルダ D:\xampp
サーバー上のファイルを入れるフォルダ D:\xampp\htdocs\example
この中にすべてのファイルを入れる。(htdocs直下を使っても良いが、XAMPPのファイルと重複したりするので注意。)
configuration.phpを編集
データベースをコピー
サーバー上のphpMyAdminを使いエクスポートを選択。
サーバーによって異なりますがデータベースを表示している場合は、テーブルすべてを選択。データベース名を選択できる場合は、該当のデータベース名を選択します。(イメージ参照)
そして以下にチェックをいれます。
(これは、チェックしなくても問題ないですが、失敗したときや個別にテーブルをインポートするときなどに便利です。)
最後にファイルに保存するにチェックを入れそのまま実行するボタンを押し、ローカルPCのどこかにファイルを保存します。
localhost.sql (ファイル名は、環境により異なりデータベース名だったりします。)
これで、ローカルPCにデータベースのデータがコピーできました。
XAMPPのphpMyAdminを開く
サーバー上と同じデータベース名(異なっても構いません。上の「これから作るローカルデータベース名」のこと)でデータベースを作成する。
このとき、照合順序に注意してください。
※そして必ずチェックしてください。上記で作成したローカルPCにコピーしたsqlファイルを開き、下記のような部分が無いかチェックしてください。
(ファイルのはじめに一カ所しかありません。)
DROP DATABASE `あなたのデータベース名`;
「あなたのデータベース名」というデータベースがあれば削除します。
CREATE DATABASE `あなたのデータベース名`;
「あなたのデータベース名」というデータベースを作成します。
USE あなたのデータベース名;
「あなたのデータベース名」というデータベースを使用するよう指示します。
DROP DATABASEの行とCREATE DATABASEの行は、削除してください。そしてUSE~の行があれば上で作成したデータベース名を書けば良いのですが、今回は削除しましょう。
※sqlファイルを開くとき文字コードに注意してください。Joomla!の場合大抵UTF-8です。保存するとき異なる文字コードで保存してしまうと壊れます。
作成した空のデータベースをphpMyAdminで表示します。
空なのでテーブルがありませんと表示されています。
上のメニューから「インポート」をクリック。先ほどのsqlファイルを指定し、実行するボタンを押下。
しばらく待ってインポート完了。
http://localhost/exampleを開く
※MySQLのサーバーとローカルでのバージョン違いなどでエラーが出る場合があります。その時は、そのエラーを見て該当する部分を修正しないといけないこともありますのでご注意ください。