予期せぬインストール停止

ブラウザを表示しているページやその他の出力が半分しか削除されていないテーブルを設定すると、インストールがハングすることがあります。例と原因は次のとおりです。


切り捨てられたMySQLステートメント

 (mysql):SET NAMES 'utf8'
-------------------------------------------------- ------------------------------
(mysql):ローカル変数を表示 'character_set_database'のようにする
...
...
(それ以上のステートメントは表示されません)   

続行ボタンがありません

[続行する]リンクが表示されますが、[続行]ボタンがありません。

:既存のデータベースをアップグレードする場合はこれに例外があり、インストールはロール生成フェーズでハングアップしているように見えることがあります。このプロセスには非常に長い時間がかかる可能性があります。

以下は、この問題を解決するために試すことができるいくつかの解決策です。

  • MySQLの制限を確認してください 。これは多くの場合MySQLエラーであり、phpエラーではありません。 mysqlデータベースに制限が設定されていないことを確認してください(例: "questions"制限)。 MySQLマニュアルのアカウントリソースの制限を参照してください。
  • .htaccessファイルを確認してください 。インストールがウェブホスト上にある場合、Moodleディレクトリの.htaccessファイルに以下の行を追加することで問題を解決することが知られています。
 AddType x-mapp-php5 .php
無効になるように.htaccessファイルの名前も変更してみてください。

コードのカスタマイズ

コードをカスタマイズしたかどうかを確認することもできます。最後に成功したテーブルを調べてから、そのテーブルで参照されているブロック、mod、またはその他のコードを調べます。たとえば、インストールがハングアップし、フォーラムテーブルが最後のメッセージとして成功したと引き続き表示される場合は、/ mod / forum /でカスタムコードを確認してください。コードをカスタマイズした場合は、それらのファイルをバックアップして正しいファイルに置き換えます。その後、config.phpの名前を変更するか、バックアップからデータベースを再インストールすることでインストールを再開できます。あなたのインストールが成功したら、あなたのコードをストックのMoodleコードに戻すことができます。

メモリ制限を確認してください

php.iniの "memory_limit"が小さすぎる可能性もあります。 php.iniファイルを確認して、推奨量を課題てください( Moodleの要件を参照)。 Moodleバージョン1.8以降では少なくとも40MBが推奨されます。

段階的にアップグレードしない

アップグレード時にこの問題を回避するには、以前のバージョンからこれらのバージョンに直接アップグレードすることをお勧めします。

1.x - > 1.9.19+ - > 2.2.11 - > 2.7.14 - > 3.1

この問題を回避するには、 Moodleパッケージを使用してあなたのローカルPCまたはサーバ上で動作するMoodleシステムをセットアップします。 Moodleを起動したら、データベースバックアップしてウェブホストにインポートしてください。それからMoodleコード自体(あなたのPCの "moodle"ディレクトリ)をバックアップし、(例えば)FTPを使ってこれをあなたのウェブホストにコピーしてください。最後に、moodle / config.phpファイルを編集してウェブホスト用に変更する必要がある新しい設定を確認します。

いくつかのMoodlerは、何らかの未知の理由でhttps://moodle.org/mod/forum/discuss.php?d=65786#p297433にある提案を参考にしました。それは、その行のfopen関数(現在は406ではなく426行目)が最初の引数として文字列を与えられていなかったためだと主張していますが、そうではありません。それは文字列でした。編集後は、最初と最後の文字が一重引用符である文字列です。驚くべきことは、それがその編集の後にまったく機能するということです。さらに驚くべきことは、少なくとも一部のユーザーにとっては、問題が解決されることです。図に行きます。

データベース構成の問題

データベースの詳細を入力した後にインストールがハングした場合は、データベースにアクセスするために入力した詳細に問題がある可能性があります。たとえば、MySQLデータベースがデフォルトの3306ではなくポート3309で実行されている場合は、データベースのURLを単に「 http:// localhost 」ではなく「 http:// localhost:3309 」に設定してください。

関連情報