質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
MySQL

MySQL(マイエスキューエル)は、TCX DataKonsultAB社などが開発するRDBMS(リレーショナルデータベースの管理システム)です。世界で最も人気の高いシステムで、オープンソースで開発されています。MySQLデータベースサーバは、高速性と信頼性があり、Linux、UNIX、Windowsなどの複数のプラットフォームで動作することができます。

EC-CUBE

EC-CUBEは、主に日本国内で開発されているECコンテンツ管理システムです。ロックオン社のECKitを元にしてオープンソース化され、商品管理・受注管理・顧客管理・売上集計などECに特化した様々な機能を備えています。

Q&A

解決済

2回答

1027閲覧

ec-cube3 データベースの初期化

sk_

総合スコア18

MySQL

MySQL(マイエスキューエル)は、TCX DataKonsultAB社などが開発するRDBMS(リレーショナルデータベースの管理システム)です。世界で最も人気の高いシステムで、オープンソースで開発されています。MySQLデータベースサーバは、高速性と信頼性があり、Linux、UNIX、Windowsなどの複数のプラットフォームで動作することができます。

EC-CUBE

EC-CUBEは、主に日本国内で開発されているECコンテンツ管理システムです。ロックオン社のECKitを元にしてオープンソース化され、商品管理・受注管理・顧客管理・売上集計などECに特化した様々な機能を備えています。

0グッド

0クリップ

投稿2018/06/11 08:21

編集2018/06/14 05:08

前提・実現したいこと

ec-cube3のインストール手順である、データベースの初期化ステップを行った時、エラーが吐かれました。
エラーを吐いた後に該当のMySQLデータベースをphpMyAdminから確認したところ、dtb_mail_history, dtb_product_categoryテーブルのみ作成されていました。
ec-cubeによって初期化が行われる時、データベースの中身は空にしてあったこともあって、上記のテーブルが作成されていることからおそらく接続自体はされていると思います。

(データベース名).dtb_helpがもうあるよというエラー(?)だと思うのですが、先述した通り初期化実行前は空なので、元々あったテーブルと重複するといったようなエラーではないと思っています。

2~3度テーブルを削除しては同じことをしましたが、うまく行きません。
何か解決策や可能性がありそうなら教えていただけると助かります。

発生している問題・エラーメッセージ

膨大な為、一部抜粋します。

4つ中1つ目のエラー

PDOException in PDOConnection.php line 104: SQLSTATE[HY000]: General error: 1813 Tablespace '`ktmr_cube3_db`.`dtb_help`' exists. in PDOConnection.php line 104 at PDO->query('CREATE TABLE dtb_help (id INT AUTO_INCREMENT NOT NULL, law_country_id SMALLINT DEFAULT NULL, law_pref SMALLINT DEFAULT NULL, customer_agreement LONGTEXT DEFAULT NULL, law_company LONGTEXT DEFAULT NULL, law_manager LONGTEXT DEFAULT NULL, law_zip01 LONGTEXT DEFAULT NULL, law_zip02 LONGTEXT DEFAULT NULL, law_zipcode LONGTEXT DEFAULT NULL, law_addr01 LONGTEXT DEFAULT NULL, law_addr02 LONGTEXT DEFAULT NULL, law_tel01 LONGTEXT DEFAULT NULL, law_tel02 LONGTEXT DEFAULT NULL, law_tel03 LONGTEXT DEFAULT NULL, law_fax01 LONGTEXT DEFAULT NULL, law_fax02 LONGTEXT DEFAULT NULL, law_fax03 LONGTEXT DEFAULT NULL, law_email LONGTEXT DEFAULT NULL, law_url LONGTEXT DEFAULT NULL, law_term01 LONGTEXT DEFAULT NULL, law_term02 LONGTEXT DEFAULT NULL, law_term03 LONGTEXT DEFAULT NULL, law_term04 LONGTEXT DEFAULT NULL, law_term05 LONGTEXT DEFAULT NULL, law_term06 LONGTEXT DEFAULT NULL, law_term07 LONGTEXT DEFAULT NULL, law_term08 LONGTEXT DEFAULT NULL, law_term09 LONGTEXT DEFAULT NULL, law_term10 LONGTEXT DEFAULT NULL, create_date DATETIME NOT NULL, update_date DATETIME NOT NULL, INDEX IDX_FF18F0EB5C77387 (law_country_id), INDEX IDX_FF18F0EBE3D20F82 (law_pref), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci ENGINE = InnoDB') in PDOConnection.php line 104 at PDOConnection->query('CREATE TABLE dtb_help (id INT AUTO_INCREMENT NOT NULL, law_country_id SMALLINT DEFAULT NULL, law_pref SMALLINT DEFAULT NULL, customer_agreement LONGTEXT DEFAULT NULL, law_company LONGTEXT DEFAULT NULL, law_manager LONGTEXT DEFAULT NULL, law_zip01 LONGTEXT DEFAULT NULL, law_zip02 LONGTEXT DEFAULT NULL, law_zipcode LONGTEXT DEFAULT NULL, law_addr01 LONGTEXT DEFAULT NULL, law_addr02 LONGTEXT DEFAULT NULL, law_tel01 LONGTEXT DEFAULT NULL, law_tel02 LONGTEXT DEFAULT NULL, law_tel03 LONGTEXT DEFAULT NULL, law_fax01 LONGTEXT DEFAULT NULL, law_fax02 LONGTEXT DEFAULT NULL, law_fax03 LONGTEXT DEFAULT NULL, law_email LONGTEXT DEFAULT NULL, law_url LONGTEXT DEFAULT NULL, law_term01 LONGTEXT DEFAULT NULL, law_term02 LONGTEXT DEFAULT NULL, law_term03 LONGTEXT DEFAULT NULL, law_term04 LONGTEXT DEFAULT NULL, law_term05 LONGTEXT DEFAULT NULL, law_term06 LONGTEXT DEFAULT NULL, law_term07 LONGTEXT DEFAULT NULL, law_term08 LONGTEXT DEFAULT NULL, law_term09 LONGTEXT DEFAULT NULL, law_term10 LONGTEXT DEFAULT NULL, create_date DATETIME NOT NULL, update_date DATETIME NOT NULL, INDEX IDX_FF18F0EB5C77387 (law_country_id), INDEX IDX_FF18F0EBE3D20F82 (law_pref), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci ENGINE = InnoDB') in Connection.php line 852 at Connection->executeQuery('CREATE TABLE dtb_help (id INT AUTO_INCREMENT NOT NULL, law_country_id SMALLINT DEFAULT NULL, law_pref SMALLINT DEFAULT NULL, customer_agreement LONGTEXT DEFAULT NULL, law_company LONGTEXT DEFAULT NULL, law_manager LONGTEXT DEFAULT NULL, law_zip01 LONGTEXT DEFAULT NULL, law_zip02 LONGTEXT DEFAULT NULL, law_zipcode LONGTEXT DEFAULT NULL, law_addr01 LONGTEXT DEFAULT NULL, law_addr02 LONGTEXT DEFAULT NULL, law_tel01 LONGTEXT DEFAULT NULL, law_tel02 LONGTEXT DEFAULT NULL, law_tel03 LONGTEXT DEFAULT NULL, law_fax01 LONGTEXT DEFAULT NULL, law_fax02 LONGTEXT DEFAULT NULL, law_fax03 LONGTEXT DEFAULT NULL, law_email LONGTEXT DEFAULT NULL, law_url LONGTEXT DEFAULT NULL, law_term01 LONGTEXT DEFAULT NULL, law_term02 LONGTEXT DEFAULT NULL, law_term03 LONGTEXT DEFAULT NULL, law_term04 LONGTEXT DEFAULT NULL, law_term05 LONGTEXT DEFAULT NULL, law_term06 LONGTEXT DEFAULT NULL, law_term07 LONGTEXT DEFAULT NULL, law_term08 LONGTEXT DEFAULT NULL, law_term09 LONGTEXT DEFAULT NULL, law_term10 LONGTEXT DEFAULT NULL, create_date DATETIME NOT NULL, update_date DATETIME NOT NULL, INDEX IDX_FF18F0EB5C77387 (law_country_id), INDEX IDX_FF18F0EBE3D20F82 (law_pref), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci ENGINE = InnoDB') in SchemaTool.php line 95 at SchemaTool->createSchema(array(object(ClassMetadata), object(ClassMetadata), object(ClassMetadata), object(ClassMetadata), object(ClassMetadata), object(ClassMetadata), object(ClassMetadata), object(ClassMetadata), object(ClassMetadata), object(ClassMetadata), object(ClassMetadata), object(ClassMetadata), object(ClassMetadata), object(ClassMetadata), object(ClassMetadata), object(ClassMetadata), object(ClassMetadata), object(ClassMetadata), object(ClassMetadata), object(ClassMetadata), object(ClassMetadata), object(ClassMetadata), object(ClassMetadata), object(ClassMetadata), object(ClassMetadata), object(ClassMetadata), object(ClassMetadata), object(ClassMetadata), object(ClassMetadata), object(ClassMetadata), object(ClassMetadata), object(ClassMetadata), object(ClassMetadata), object(ClassMetadata), object(ClassMetadata), object(ClassMetadata), object(ClassMetadata), object(ClassMetadata), object(ClassMetadata), object(ClassMetadata), object(ClassMetadata), object(ClassMetadata), object(ClassMetadata), object(ClassMetadata), object(ClassMetadata), object(ClassMetadata), object(ClassMetadata), object(ClassMetadata), object(ClassMetadata), object(ClassMetadata), object(ClassMetadata), object(ClassMetadata), object(ClassMetadata), object(ClassMetadata), object(ClassMetadata), object(ClassMetadata), object(ClassMetadata), object(ClassMetadata), object(ClassMetadata), object(ClassMetadata))) in InstallController.php line 466 at InstallController->createTables() in InstallController.php line 278 at InstallController->step5(object(InstallApplication), object(Request)) at call_user_func_array(array(object(InstallController), 'step5'), array(object(InstallApplication), object(Request))) in HttpKernel.php line 144 at HttpKernel->handleRaw(object(Request), '1') in HttpKernel.php line 64 at HttpKernel->handle(object(Request), '1', true) in Application.php line 586 at Application->handle(object(Request)) in Application.php line 563 at Application->run() in install.php line 40

よろしくお願いします。

追記①

database.yml.dist

database:
driver: '${DBDRIVER}'
host: '${DBSERVER}'
dbname: '${DBNAME}'
port: '${DBPORT}'
user: '${DBUSER}'
password : '${DBPASS}'
charset: utf8
defaultTableOptions: { collate: utf8_general_ci }

追記②

database.yml

database:
driver: 'pdo_mysql'
host: 'localhost'
dbname: '[設定したdb名]'
port: ''
user: '[設定したuser名]'
password : '[設定したuserのパスワード]'
charset: utf8
defaultTableOptions: { collate: utf8_general_ci }

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

sk_

2018/06/12 00:24

追記させて頂きました。よろしくお願いします。
sk_

2018/06/14 05:07

間違った場所を記載していたようですみません。追記②でよろしいでしょうか
xenbeat

2018/06/14 05:23

追記②でOKです。phpMyAdminで入力した接続情報と追記②の接続情報は一致していますか?
sk_

2018/06/15 03:09

一致しております。EC-CUBE3のインストール時に一応途中までデータベースをいじられているので、ECCUBE的には一旦接続できてはいるのだと思います。
guest

回答2

0

接続情報が正しいということですので、キャッシュを疑うしかないです。
もう一度インストールを最初(step1)から行うか、ブラウザのキャッシュをクリアしてみてください。

それでも無理ならデータベースを作り直し(DROP&CREATE)し、最初からインストールし直してください。

投稿2018/06/15 04:19

xenbeat

総合スコア4258

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

自己解決

解決しました
結論から言うと使用していたデータベースにスキーマ不整合があったようです。
eccubeのインストール以外でも、テーブルを作成しようとすると「もうあるよ」と言われて作れず、DROPしようにも「そんなテーブルないよ」と言われる状態でした。

原因はわかりませんが、eccube関連の不具合ではありませんでした。

投稿2018/06/28 10:03

sk_

総合スコア18

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

xenbeat

2018/06/28 13:28 編集

> 結論から言うと使用していたデータベースにスキーマ不整合があったよう よくわからないです。何と何でどういう不整合があったのでしょうか。 回答は「接続情報が正しい」という前提で回答しています。 > DROPしようにも「そんなテーブルないよ」と言われる状態 結果「接続情報が正しい」わけではなかったという認識で良いでしょうか。 > 原因はわかりませんが、eccube関連の不具合ではありませんでした 解決したようで解決してないですね。 これだと自己満QAなので、お時間有りましたら具体的に解決方法を記載ください。
sk_

2018/06/28 14:26

接続情報は先述した通り正しかったです。 ただしサーバー管理会社に問い合わせても原因がわからなかったのと、私に専門的な知識がない為、詳細な説明はできません。EC-CUBE3に関わる問題ではなかったという点で解決としました。 データベースのスキーマ不整合については代わりにこちらを参照してください。結果として下記ページと同じ問題でした。 https://accountingse.net/2015/09/943/
xenbeat

2018/06/28 14:50

> 結果として下記ページと同じ問題でした。 ありがとうございます。 こちらのコメントをいただいたことでサイトとして有益なQAとなったので良かったです!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問