NetCommons2 コミュニティ掲示板

さくらのレンタルサーバ:MySQL 5.5 → MySQL5.7へDBコピー後、install.inc.php を編集し再読み込みするには?

投稿日時: 2021/12/25 akaz

こんにちは。

さくらのレンタルサーバで、NetCommons 2.4.2.1 を運用しています。

MySQLのバージョンが 5.5 だったので、さくらインターネットから「5.7にアップグレードするように」との案内メールがあり、さくらのコントロールパネルにログインしてMySQLをアップグレードしました。

この結果、MySQL 5.5 のDBサーバから、MySQL 5.7 のDBサーバにDB内容がコピーされました。DB名とDBアクセス用のユーザ名/パスワードは MySQL5.5時とMySQL5.7時で同じです。ただし、MySQLサーバのホスト名は、MySQL5.5のときはMySQL5.7とで異なります(仮名で示しますと mysql55.db.sakura.ne.jp → mysql57.db.sakura.ne.jp というような感じです)

そこで、NetCommons の設定ファイル  webapp/config/install.inc.php をFTPでアクセスし、次のように変更しました。

ユーザ名、パスワード、DB名は 仮名としてあります(alias_で始まる部分)。

// ----------------------------
// データベース用設定値
// ----------------------------
define('DATABASE_DSN', 'mysql://alias_user:alias_password@mysql57.db.sakura.ne.jp/alias_db');  //変更した行

 

しかし、NetCommons は install.inc.php の新設定を見てくれているようには思えません。というのも、mysql57.db.sakura.ne.jp の方のDBレコードを直接編集し、公開スペースに配置してある、お知らせモジュールの一部の記事を少し変更してみましたが、NetCommonsは旧記事を表示し続けています。

NetCommonsにシステム管理者でログインすると、不思議と上の公開記事は mysql57の方の(変更した)内容を表示してくれます。でも、ログアウトするとまた元の旧記事のままです。webブラウザ (Google Chrome のキャッシュを削除してみましたが同様の現象です)

 

再度、NetCommonsにシステム管理者でログインし、管理画面→「モジュール管理」にて「一括アップデート」をしてみましたところ、ある程度まではアップデートが進みますが、その後の以下のエラーが発生します(二種類)。

(1) 500 Internal Server Error が16個

Internal Server Error
The server encountered an internal error or misconfiguration and was unable to complete your request.

Please contact the server administrator at [no address given] to inform them of the time this error occurred, and the actions you performed just before this error.

More information about this error may be available in the server error log.

 

(2) Service Unavailable が 5個
The server is temporarily unable to service your request due to maintenance downtime or capacity problems. Please try again later.

 

NetCommonsが install.inc.php を読み込めていないのが原因だろうと思うのですが、いかがでしょう?

また、install.inc.php を再読込するにはどうしたらいいでしょうか。

さくらのレンタルサーバでは、SSH接続はできますが、httpd を再起動する権限がありません。

 

ご指導よろしくお願いいたします。

Re: さくらのレンタルサーバ:MySQL 5.5 → MySQL5.7へDBコピー後、install.inc.php を編集し再読み込みするには?

投稿日時: 2021/12/25 akaz

赤沢です。

さくらのレンタルサーバのコントロールパネルの様子です。ご覧のように、上にMySQL5.5のサーバ、下に、MySQL5.5のDBをコピーして新たにできた、MySQL5.7のサーバが見えます。

 DBのアップグレード結果

さきほどの質問を書いている間に、自然と状況が変わりました。表示が想定どおりとなりました。念のため、MySQL5.5への接続パスワードを変更し、NetCommonsからMySQL5.5にアクセスできないようにしました。この後も、NetCommonsへログインもできますしコンテンツも見えておりますので、これで install.inc.php の設定内容が反映されていると言えるでしょう。

 

あちこちにキャッシュが残存していたのかもしれません。しばらく時間をおくといいみたいです。

 

ただし、依然として モジュール管理の「一括アップデート」では、上述の(1)と(2)のエラーが発生します。MySQL5.5のときからそうだったのかもしれませんが、今となってはわかりません。

 

いずれ、Connect-CMSに移行せねばならないと思っておりますが、もう当該大学の身分が無く、私の手を離れていることもあり、どうするか関係者と相談してみます。(弊社事業で構築したものではなく、当時、大学スタッフとして構築したNetCommonsサイトです)

Re2: さくらのレンタルサーバ:MySQL 5.5 → MySQL5.7へDBコピー後、install.inc.php を編集し再読み込みするには?

投稿日時: 2021/12/27 牟田口 満

こんにちは。オープンソース・ワークショップの牟田口です。

 

もしかしたら、NC2のお知らせの場合、内部キャッシュを持っているのでその関係かなぁと思います。
→内部キャッシュには DB(smarty_cacheテーブル)とファイル(webapp/templates_c/配下ファイル)があって、DB切り替わった事でファイルと何かずれちゃったのかな?と。

(けど内部キャッシュ持ってるにしても、一括アープデートしたら解消されそうなものなんですけどね。ううーん。)

 

(1) 500 Internal Server Error が16個

Internal Server Error
The server encountered an internal error or misconfiguration and was unable to complete your request.

Please contact the server administrator at [no address given] to inform them of the time this error occurred, and the actions you performed just before this error.

More information about this error may be available in the server error log.

こちらの原因はわかりませんが、さくらレンタルサーバーであればコントロールパネルのどこかで server.log 的なものが見れたかと思います。

そちらを見ればもうちょっと詳細がわかるかも?位ですね。

参考になれば幸いです。

 

 

Re3: さくらのレンタルサーバ:MySQL 5.5 → MySQL5.7へDBコピー後、install.inc.php を編集し再読み込みするには?

投稿日時: 2021/12/27 OSWS永原

こんにちは。
株式会社オープンソース・ワークショップの永原です。

もしかしたら。

NetCommons2 は、一括アップデート時に、複数のリクエストを同時に出していたような覚えがあります。(インストール時は確かそう。一括アップデートも同じだったような。。)

で、その複数リクエストが、一気に走るので、サーバ側で、負荷がかかりすぎたとしてコケるケースがありました。(レンタルサーバーなどで)

そのために、モジュールアップデートのインターバルを設定できるようになっています。

webapp/config/define.inc.php

//------モジュールアップデート間隔(ミリ秒)---------
define('_MODULE_ALLUPDATE_INTERVALTIME', 0);

ここの設定をいじってみては、いかがでしょうか?

以上、参考になりましたら。

 

 

こんにちは。オープンソース・ワークショップの牟田口です。

 

もしかしたら、NC2のお知らせの場合、内部キャッシュを持っているのでその関係かなぁと思います。
→内部キャッシュには DB(smarty_cacheテーブル)とファイル(webapp/templates_c/配下ファイル)があって、DB切り替わった事でファイルと何かずれちゃったのかな?と。

(けど内部キャッシュ持ってるにしても、一括アープデートしたら解消されそうなものなんですけどね。ううーん。)

 

(1) 500 Internal Server Error が16個

Internal Server Error
The server encountered an internal error or misconfiguration and was unable to complete your request.

Please contact the server administrator at [no address given] to inform them of the time this error occurred, and the actions you performed just before this error.

More information about this error may be available in the server error log.

こちらの原因はわかりませんが、さくらレンタルサーバーであればコントロールパネルのどこかで server.log 的なものが見れたかと思います。

そちらを見ればもうちょっと詳細がわかるかも?位ですね。

参考になれば幸いです。

 

 

Re4: さくらのレンタルサーバ:MySQL 5.5 → MySQL5.7へDBコピー後、install.inc.php を編集し再読み込みするには?

投稿日時: 2021/12/27 akaz

永原さま、牟田口さま

こんにちは。

コメントをいただきうれしいです!!

とりあえず永原さんの方法で次のような設定にしてみました。

//------モジュールアップデート間隔(ミリ秒)---------
define('_MODULE_ALLUPDATE_INTERVALTIME', 1000);

 

そして、いざモジュールの「一括アップデート」を実行!!

  ↓

  ↓ 時間がかかる・・・(1秒間隔ですからね)

  ↓

「アップデート完了」となりました\(^O^)/(エラーも出てない♥)

 

教えてくださりありがとうございました!!

さくらのレンタルサーバとは言え、ビジネスタイプというお高いやつを使ってますので、ここが効いてくるとは予想外でした。

 

こんにちは。
株式会社オープンソース・ワークショップの永原です。

もしかしたら。

NetCommons2 は、一括アップデート時に、複数のリクエストを同時に出していたような覚えがあります。(インストール時は確かそう。一括アップデートも同じだったような。。)

で、その複数リクエストが、一気に走るので、サーバ側で、負荷がかかりすぎたとしてコケるケースがありました。(レンタルサーバーなどで)

そのために、モジュールアップデートのインターバルを設定できるようになっています。

webapp/config/define.inc.php

//------モジュールアップデート間隔(ミリ秒)---------
define('_MODULE_ALLUPDATE_INTERVALTIME', 0);

ここの設定をいじってみては、いかがでしょうか?

以上、参考になりましたら。

 

 

こんにちは。オープンソース・ワークショップの牟田口です。

 

もしかしたら、NC2のお知らせの場合、内部キャッシュを持っているのでその関係かなぁと思います。
→内部キャッシュには DB(smarty_cacheテーブル)とファイル(webapp/templates_c/配下ファイル)があって、DB切り替わった事でファイルと何かずれちゃったのかな?と。

(けど内部キャッシュ持ってるにしても、一括アープデートしたら解消されそうなものなんですけどね。ううーん。)

 

(1) 500 Internal Server Error が16個

Internal Server Error
The server encountered an internal error or misconfiguration and was unable to complete your request.

Please contact the server administrator at [no address given] to inform them of the time this error occurred, and the actions you performed just before this error.

More information about this error may be available in the server error log.

こちらの原因はわかりませんが、さくらレンタルサーバーであればコントロールパネルのどこかで server.log 的なものが見れたかと思います。

そちらを見ればもうちょっと詳細がわかるかも?位ですね。

参考になれば幸いです。