EC-CUBE カスタマイズ EC-CUBEバージョンの移行
環境構築ノウハウ/1.4系から2系への移行
現在、EC-CUBEには、1.4系と2系の異なる2つの系統が存在しています。
2系が公開されたのが2007年12月のことですので、それ以前からEC-CUBEをお使いの方は、1.4系をご利用の方が多いのではないでしょうか。
1.4系からEC-CUBE2系への移行、データベースの移動の注意点などをまとめています。
システム開発でお悩みの方は、ネットショップ構築パッケージ EC-Orange にお問い合わせください
1.4系は開発終了
公式サイトでも発表されたとおり、1.4系のサポートについては、
- 2008年11月6日をもって終了
- 2008年末までは、重大なセキュリティフィックスにのみ対応
- 管理画面からのモジュールのダウンロードも2009年3月末で終了
とのことですので、
現在1.4系でショップを運営されている方も、今後2系への移行が必要となってくるでしょう。
移行の流れ
1系と2系では内部構成が大幅に違うため、ファイルの入れ替え等によるバージョンアップは、ほぼ不可能だと考えて良いでしょう。
移行については、
新たに2系をインストールし、1系からのDB移行を行う
という形が現実的です。
以下に、その流れを解説していきます。
2系のインストール
こちらを参考にしてください。
データベースの中身の移動
EC-CUBEで使用できるデータベースは基本的にはPostgreSQLとMySQLの2つです。
phpPgAdminや、phpMyAdmin等のGUIのツールを使うととってもカンタンです。
dumpを取る
※それぞれのクライアントに適切な権限を持ったユーザーでログインして下さい。
- MySQL
$ mysqldump (データベース名) > backup-file.sql
- PostgreSQL
$ pg_dump (データベース名) > backup-file.out
リストア
dumpからSQLを流す
- MySQL
$ mysql (データベース名) < backup-file.sql
- PostgreSQL
$ psql (データベース名) < backup-file.out
- プライマリキーの値の調整
注意点
MySQLからPostgreSQL、PostgreSQLからMySQLへの移動は困難が予想されますので、開発時から本番機のデータベースは確認しておいてください。
data/install.phpの修正
EC-CUBEのインストール情報はこのファイルに記載されているので、ここの内容を環境に合わせて修正してください。
| 定数名 | 設定内容 |
| ECCUBE_INSTALL | インストールされているEC-CUBEのバージョン |
| HTML_PATH | "html"ディレクトリへの絶対パスです |
| SITE_URL | EC-CUBEへのアクセスに使うURLです(http://〜) |
| SSL_URL | EC-CUBEへのSSLアクセスに使うURLです(https://〜) |
| URL_DIR | ウェブサーバーのドキュメントルートからのパスです。 |
| DB_SERVER | データベースサーバーのアドレスです。IPアドレスやホスト名等が入ります(空白だとデフォルト値) |
| DB_TYPE | データベースのタイプです('pgsql' or 'mysql') |
| DB_USER | データベースユーザーです |
| DB_PASSWORD | データベースユーザーのパスワードです。 |
| DB_NAME | データベース名です |
| DB_PORT | インストールされているEC-CUBEのバージョン |
| ECCUBE_INSTALL | データベースへアクセスするポート番号です(空白だとデフォルト値) |
| DATA_PATH | "data"ディレクトリへの絶対パスです。 |
| MOBILE_HTML_PATH | モバイルのドキュメントルートの絶対パス |
| MOBILE_SITE_URL | モバイルのトップのURL |
| MOBILE_SSL_URL | モバイルのトップのSSL接続用URL |
| MOBILE_URL_DIR | モバイルへのドキュメントルートからの相対パス |
data/cacheの中身の削除
念のため削除しておきます。
この中のmtb_constans.phpはデータベースのmtb_constansの内容が出力されているので、移設作業が完了したら管理画面からパラメーター設定で登録し直してください。
注意する点
- 管理画面からパラメーターを編集すると、移設後に管理画面からパラメーターを更新しないと有効になりません。
- dtb_pagelayoutはupdate_urlというカラムにページのURLが入っています。この様な相対パスではないURLが登録されているテーブルやテンプレートは修正が必要です。
- PostgreSQLのシーケンス値やMySQLのauto_increment値が復元出来ずにidが重複してしまう。
EC-CUBE2.0系について、EC-CUBE No.1パートナー最新情報ブログにも記事があります。
EC-CUBEの環境構築や、ECサイトの開発・構築でお困りなら、
ネットショップ構築パッケージEC-Orangeにお問い合わせください!
EC-CUBEのカスタマイズ・制作会社 強いネットショップ構築します|EC-Orange




