EC-CUBE2系インストール時の注意事項

EC-CUBE2系インストール時の注意事項

この度必要に迫られEC-CUBE2系のインストールを行ったのですが、その時発生したエラーの対処法について記載します。

インストール環境

OS:CentOS6.9
PHP:5.6.31
mysql:5.7.19
EC-CUBE2.13.5

インストール手順

こちらを参照しながらインストールしました。

※ファイルの設置場所は下記の通り


フィアル設置場所
 
/var/www/html/eccube2/html/
 
/var/www/html/eccube2/data/
 ※データは本来非公開領域に置くべき。ローカルの動作確認なので、このままとした。
URL
 
http://IPアドレス/html/

エラー発生場所

上記URLの「6.位ストール開始」の5.データベースの設定の後、「次へ進む」ボタンを押下した後、画面遷移しますが、画面が真っ白(cromeの場合はこのページは表示出来ません)が表示されます。

この時、エラーログを確認して見てください。


cd /var/log/php
tail php_error.log

そうすると下記のようなエラーが吐き出されていると思います。


[03-Feb-2018 22:36:48 Asia/Tokyo] PHP Fatal error:  DB処理でエラーが発生しました。
SQL: [SET SESSION storage_engine = InnoDB]
MDB2 Error: unknown error
_doQuery: [Error message: Could not execute statement]
[Last executed query: PREPARE mdb2_statement_mysql_108f603511684fdc166e58ef73fd01673fb59a109 FROM 'SET SESSION storage_engine = InnoDB']
[Native code: 1193]
[Native message: Unknown system variable 'storage_engine']
 in /var/www/html/eccube2.13.5/data/class/SC_Query.php on line 1095
[03-Feb-2018 22:36:48 Asia/Tokyo] PHP Stack trace:

 

上記のエラーが吐き出さている場合、下記のファイルを修正してみて下さい。


/data/class/db/dbfactory/SC_DB_DBFactory_MYSQL.phpの363行目

$objQuery->exec('SET SESSION storage_engine = InnoDB');
↓
$objQuery->exec('SET SESSION default_storage_engine = InnoDB');

 

この対処後、インストールを最初からやり直すと正常にインストール出来るようになると思います。

なお、この対処方法はこちらのページを参照させて頂きました。

先人の情報に感謝しつつ記載させていただきました。