We launched new forums in March 2019—join us there. In a hurry for help with your website? Get Help Now!
    • 16106
    • 6 Posts
    これまでEtomiteを使っていたのですが、MODxもおもしろそうだなと思い、
    さっそくインストールしてみようとしたところ、
    途中でエラーが出て止まってしまい困っています。

    ■手順
    インストーラ→New Installation→
    Connection InformationでDBの情報を入力→
    Test connection(結果はConnection to host: passed... Checking database: passed)→
    Optional Items→
    Setup has carried out a number of checks to see if everything’s ready to start the setup.
    全項目OK→install now

    と、ここまではいいんですが、その後、インストールが始まると下記の大量のエラーが出て、
    インストーラが終了していしまいます。

    Setup will now attempt to setup the database:

    Creating connection to the database: OK!

    Selecting database `jvm`: OK!

    Checking table prefix `modx2_`: OK!

    Creating database tables: Database Alerts!

    MODx setup couldn’t install/alter some tables inside the selected database.

    The following errors had occurred during installation

    Lost connection to MySQL server during query during the execution of SQL statement CREATE TABLE IF NOT EXISTS `modx2_log_access` ( `visitor` int(11) NOT NULL default ’0’, `document` int(11) NOT NULL default ’0’, `timestamp` int(20) NOT NULL default ’0’, `hour` tinyint(2) NOT NULL default ’0’, `weekday` tinyint(1) NOT NULL default ’0’, `referer` int(11) NOT NULL default ’0’, `entry` tinyint(1) NOT NULL default ’0’, KEY `visitor` (`visitor`), KEY `document` (`document`), KEY `timestamp` (`timestamp`), KEY `referer` (`referer`), KEY `entry` (`entry`), KEY `hour` (`hour`), KEY `weekday` (`weekday`) ) TYPE=InnoDB COMMENT=’Contains visitor statistics.’.


    --------------------------------------------------------------------------------
    MySQL server has gone away during the execution of SQL statement CREATE TABLE IF NOT EXISTS `modx2_log_hosts` ( `id` int(11) NOT NULL default ’0’, `data` varchar(255) NOT NULL default ’’, PRIMARY KEY (`id`) ) TYPE=InnoDB COMMENT=’Contains visitor statistics.’.
    --------------------------------------------------------------------------------
    Lost connection to MySQL server during query during the execution of SQL statement CREATE TABLE IF NOT EXISTS `modx2_log_operating_systems` ( `id` int(11) NOT NULL default ’0’, `data` varchar(255) NOT NULL default ’’, PRIMARY KEY (`id`) ) TYPE=InnoDB COMMENT=’Contains visitor statistics.’.
    --------------------------------------------------------------------------------
    MySQL server has gone away during the execution of SQL statement CREATE TABLE IF NOT EXISTS `modx2_log_referers` ( `id` int(11) NOT NULL default ’0’, `data` varchar(255) NOT NULL default ’’, PRIMARY KEY (`id`) ) TYPE=InnoDB COMMENT=’Contains visitor statistics.’.
    --------------------------------------------------------------------------------
    Lost connection to MySQL server during query during the execution of SQL statement CREATE TABLE IF NOT EXISTS `modx2_log_user_agents` ( `id` int(11) NOT NULL default ’0’, `data` varchar(255) NOT NULL default ’’, PRIMARY KEY (`id`) ) TYPE=InnoDB COMMENT=’Contains visitor statistics.’.


    Some tables were not updated. This might be due to previous modifications.


    PhpMyAdminから見ると、DBは作成されているようなのですが…
    使っているサーバはさくらのスタンダードです。
    Apache 1.3.34
    PHP 4.4.2
    MySQL 4.0.2x

    その昔、etomiteをインストールしたときには特に問題なくできたように記憶しているのですが、
    どなたかこの現象を経験された方はいらっしゃいませんか?
    よろしくお願いします。
      • 8382
      • 253 Posts
      こんにちは、kobaさん。
      さくらを使用しているわけではないのですが...

      DBスキーマは既に存在するわけですよね?そしてテーブル作成時にエラーが報告されると。
      実際に「modx2_log_access」テーブルは作成されていますか?
      また、他の例えば「modx2_active_users」テーブルは作成されていますか?
      active_usersが作成されていて、log_accessが作成されていないならば
      「InnoDBテーブルが作成できない」という事です。mysqlのバージョンやmy.cnf設定によると思いますが、
      phpMyAdminでストレージエンジンのステータスを見てみてはいかがでしょう?
        • 16106
        • 6 Posts
        こんにちは、eastbind さん、レスありがとうございます。
        Quote from: eastbind at Mar 21, 2006, 06:26 AM

        実際に「modx2_log_access」テーブルは作成されていますか?
        また、他の例えば「modx2_active_users」テーブルは作成されていますか?
        作成できていると思っていたのですが、modx2_log_accessを開いてみたら
        #1016 - Can’t open file: ’modx2_log_access.InnoDB’. (errno: 1)
        とエラーが出ました。
        modx2_active_usersの方はふつうに開けました。
        MODxのインストーラがアラートを出したテーブルはどうやらやはり作成に失敗しているようです。

        「InnoDBテーブルが作成できない」という事です。mysqlのバージョンやmy.cnf設定によると思いますが、
        phpMyAdminでストレージエンジンのステータスを見てみてはいかがでしょう?

        勉強不足であまりDBに詳しくなく、申し訳ないのですが、
        eastbindさんのおっしゃるとおりだとすると、対処は厳しいのでしょうか。
        MySQLのバージョンは4.0.26だと思いますが、さくらの共用サーバではphpMyAdminからストレージエンジンのステータスが見れないようです。
        それらしい項目は見当たりませんでした。
          • 8382
          • 253 Posts
          kobaさん。もしかして63さん? wink
          InnoDBテーブルが作成できない旨をさくらに問い合わせてみましょう。
          実際作成できなくても以下の方法で対処できます。

          install/setup.sql内の「InnoDB」を全て「MyISAM」に置換します。
          そして、install/index.phpを実行します。
          メモ帳でもできるでしょう。全部で6箇所あります。
          こんな感じに
          変更前
          CREATE TABLE IF NOT EXISTS `{PREFIX}log_hosts` (
            `id` int(11) NOT NULL default '0',
            `data` varchar(255) NOT NULL default '',
            PRIMARY KEY  (`id`)
          ) TYPE=InnoDB COMMENT='Contains visitor statistics.';


          変更後
          CREATE TABLE IF NOT EXISTS `{PREFIX}log_hosts` (
            `id` int(11) NOT NULL default '0',
            `data` varchar(255) NOT NULL default '',
            PRIMARY KEY  (`id`)
          ) TYPE=MyISAM COMMENT='Contains visitor statistics.';


          MyISAMで動かしても何の問題もありませんのでご心配なく。
            • 16106
            • 6 Posts
            eastbind さん、こんばんは。
            ち、ちがいますよ￿。残念ながらわたしは某サイトの63さんではないです(笑)
            ただ、今回のトラブルの対処方法を探している時にその書き込みを見つけて、
            わたしと同じさくらで症状もまったく同じなので
            ちょっと注目していたのですが、いまのところレスはないみたいですね。

            InnoDBの件は、さっそく明日にでもさくらに問い合わせてみますね。
            それから、MyISAMのに置換する方法、これも実際に試すのは明日になりそうですが
            すぐに試しみてみたいです。
            もともとetomiteが気に入っていたこともあり、MODxを使うのがすごく楽しみなので、
            すごくうれしいです。
            ありがとうございます。感謝感謝です!


            それにしても、さくらの共用サーバでうまくいった方ってどうしているんだろ?
            あと、etomiteのときは特に手こずった記憶がないのですが、
            MODxだとそのへんもちがうんでしょうか。
            それとも最近、さくらの仕様変更でもあったのかな…
            • > それとも最近、さくらの仕様変更でもあったのかな

              こんにちは。たまたまさくらでインストール成功した者です。

              http://www.sakura.ne.jp/news/archives/20060207-004.news
              最近あった変更です。僕がMODxをインストールしたのはこれ以前のことです。
              これ関係あるのかな?だとしたら、
              ホームディレクトリ(/home/アカウント名)の下に php-4.3.10 というファイル(空ファイルで可)を設置することで PHP は PHP 4.3.10 で動作します。
              ということで条件は同じになると思いますが…たぶんこれは違いますよね。汗
              • 先週契約したばかりのさくらサーバで試してみましたが、あっさり成功しました。
                しかも、ファイル・ディレクトリのパーミッション設定をサボった強行インストールです。
                前回悩まされたUTF-8の日本語ファイルでの文字化けも見られず快適です。
                phpのバージョンはアナウンスどおり4.4.2でした。
                プリフィクスは同様に「modx2」で試してみました。
                php.iniや.htaccessなどはまったくさわっていません。
                うーん、何が違うのでしょう???
                • 参考情報。「The following errors had occurred during installation」で
                  検索してみました。これも見当外れだったらすみません。

                  http://modxcms.com/forums/index.php/topic,1292.msg8913.html
                  http://www.tutorial.hu/forum/lofiversion/index.php/t1311.html

                  Should get real interesting when we’ve got users with Japanese databases!
                  って言ってる人が次ページにいますけど、何か関係あるのかな?
                    • 16106
                    • 6 Posts
                    おはようございます。kobaです。
                    みなさんレスありがとうございました wink
                    eastbind さんの教えていただいた方法(MyISAMに書き換える)で、
                    無事うまく動きました!本当にありがとうございます>eastbindさん。

                    >yamaさん
                    先週契約したばかりのさくらサーバで試してみましたが、あっさり成功しました。
                    しかも、ファイル・ディレクトリのパーミッション設定をサボった強行インストールです。
                    う~ん。サーバによって微妙に設定が違ったりすんでしょうか?
                    それとも私の設定(とはいっても、さくらでいじれるところってほとんどないような……)の問題?
                    InnoDBの件のさくらの回答を待って、またご報告します。

                    参考情報。「The following errors had occurred during installation」で
                    検索してみました。これも見当外れだったらすみません。
                    英語力も弱いので自信がないですが、なにやらエンコードの問題?
                    す、すみません…どなたか分かる方いらっしゃればお願いします。
                      • 8382
                      • 253 Posts
                      http://modxcms.com/forums/index.php/topic,1292.msg8913.html
                      このトピックは今回の件には関係ないです。

                      これはアップグレードインストールをするとエラーが出るという話です。
                      ALTER TABLE文で新しく加わった列を加えるとき、既にその列が存在すると
                      MySQLがduplicateエラーを報告します。MODxインストーラはそのエラーを
                      無視してインストールを続行するようになっているのですが、そのエラーを
                      mysql_error()で検出しているため、MySQLの言語ローカライズ版では検出できず
                      単なるエラーとしてインストールを中止してしまうと言うものです。

                      このバグ報告がフランス語板から報告されたので、sottwellさんがフランス語対応版
                      を作成しました。しかし日本語ユーザはどうするのでしょう?とボソッと言いましたとさ。

                      日本ではまず日本語エラーメッセージを使用する人はいないでしょう。
                      主要なホスティングサービスでも聞いた事無いですし。
                      0.9.2ではmysql_errno()を使ったものに変更されるので問題は解決してしまいます。
                      (本来0.9.1で直されるバグだったが、手違いで入れられなかったそうです)

                      ちなみに、Etomiteでは全テーブルがMyISAMです。MODxがいつからInnoDBテーブルに
                      したかは私はわかりません。しかし今のところMODx内部では全くInnoDBの機能を
                      使用していないので(トランザクションとか行ロックとか)問題ないでしょう。
                      MODx1.0ではPDOを使用するそうなのでその時には必須になるかもしれません。