エラーメッセージでログインできない状態でのアップデート方法

2014年8月12日 at 20:55

こんにちは。はじめまして。
サーバーがPHP5.2の提供を終了し、5.4.2.2のアップデートをしたいのですが、
エラーメッセージが表示され、ログインができません。
その状態から、復旧させることは可能でしょうか。

MySQLからのデータはphpmyadminを使用し、抽出ができました。
抽出したデータを、新しいMySQLにインポートし
エラーで表示できないページとは別のディレクトリに最新版をインストールし、
動かそうとしたら、エラーが発生しました。
(ディレクトリが異なるからだと思いますが、テーブルのどこをいじるのかもわかりません)

また、生きているMySQLを最新版に設定しても、正しく表示はされるのでしょうか。

アドバイスをお願いします。

SITE_APP_VERSION 5.4.2.2
APP_VERSION_LATEST 5.5.2.1

タグ:

Re: エラーメッセージでログインできない状態でのアップデート方法

2014年8月12日 at 21:46
サーバーの方では、もうPHP5.2は使えなくなってしまったと言うことでしょうか。もし切り替えが可能なら、5.2で次のバージョンに上げてから、5.3に切り替えて、残り最新バージョンまでアップすれば良いと思います。

切り替えが不可能なら、ローカルにダウンロードしてバージョンアップを実施してから、バージョンアップ後のファイルをサーバーに反映するという手順になると思います。

まずは、どちらになりそうか見ていただければと思います
 

Re: エラーメッセージでログインできない状態でのアップデート方法

2014年8月12日 at 22:05
早速のご返信ありがとうございます。

現在、サーバーの方ではPHP5.2への変更ができませんので、
ご提案いただいた中の、後者になると思います。

初心者なもので、具体的なアップデート作業方法をご教示いただければと思います。
現在エラーで閲覧できないページのデータに関しては、ダウンロードは可能です。

よろしくお願いします。
 

Re: エラーメッセージでログインできない状態でのアップデート方法

2014年8月13日 at 15:38
まず、ローカルで(レンタルサーバーではなく、お使いのパソコン上で)concrete5が動く環境を作りましょう。

MacならMAMP
http://www.mamp.info/en/

WindowsならXAMPP
http://www.apachefriends.org/index.html

これらのソフトを使って、練習のためにローカルでまずconcrete5の新規インストールをしましょう。使ったことがあるなら次に進んでください。

次に、MAMPまたはXAMPPで動くPHPのバージョンをPHP5.2系か、またはそれ以下に切り替えます。MAMPは確か標準機能で切り替えられます。XAMPPは普段使ってないのですが、できそう
http://seo.fiverworks.com/pc%E9%96%A2%E9%80%A3/%EF%BC%91%E3%81%A4%E3%81%AExampp%E3%81%A7%E3%80%81%E8%A4%87%E6%95%B0%E3%81%AE%E3%83%90%E3%83%BC%E3%82%B8%E3%83%A7%E3%83%...

次に、下記のヘルプを参考にレンタルサーバー上のファイルとMySQLデータベースのエクスポートデータを元にローカル上に(MAMPまたはXAMMP上に)5.4.2.2の状態のサイトの複製を作ります。
http://concrete5-japan.org/help/install/how-to-restore/

ここまできたらあと一歩。ヘルプを参考に、バージョンアップを進めます。
http://concrete5-japan.org/help/install/how_to_upgrade/

まず5.4.2.2から5.5.2.1にアップデートします。成功したら、PHPのバージョンを新しいのに切り替えます。それから、5.6.3.1までアップデートします。

5.6.3.1までアップデートが成功したら、今度はローカルのconcrete5のデータをレンタルサーバー上に引っ越し直します。

まずはざっくり書きましたので、詰まったところがあればまた投稿してください
 

Re: エラーメッセージでログインできない状態でのアップデート方法

2014年8月13日 at 16:15
わざわざありがとうございますm(_ _)m
バックアップしたデータを使用して、ローカルでチャレンジしようと思います!
また不明点が出てきたら、返信させて頂きます。
その際は、ご迷惑をお掛けしますが、ご教示よろしくお願いします。
 

Re: エラーメッセージでログインできない状態でのアップデート方法

2014年8月19日 at 15:17
間が合いてしまいましたが、壁にぶち当たってしまいましたので、ご教示ください。

windowsにXAMPPをインストールして、PHPのバージョンを参考URLを見て変更しましたが、
うまく動作せず、windowsを諦めて、macのMAMPに切り替えました。

MAMPへConcrete5のデータを、ディレクトリ「concrete5」へ移し、
PHPを5.2.17へ変更、phpmyadminでMySQLのインポートを行いました。

site.phpのMySQLの情報を変更しましたが、
「BASE_URL」を「localhost/concrete5」にしましたが、
ブラウザで確認すると、「localhost/concrete5/localhost/concrete5」や
「localhost/localhost/concrete5」などURLが安定しません。

MySQL内のデータはまだどこも編集はしていません。
ほかにファイルを変更する箇所があるのでしょうか。

よろしくお願いします。
 

Re: エラーメッセージでログインできない状態でのアップデート方法

2014年8月22日 at 0:05
この設定にしてください

define('BASE_URL', 'http://localhost');
define('DIR_REL', '/concrete5');
 

Re: エラーメッセージでログインできない状態でのアップデート方法

2014年8月22日 at 10:07
site.phpの設定を変更し、無事アクセスできました。
アップデートも5.6.3まで完了しました。
ありがとうございました。

ローカルからサーバーにアップロードするのですが、
全てのファイルを上書きしてしまって大丈夫なのでしょうか。
または、ある限られたファイルのみアップロードで大丈夫なのでしょうか。

最後の最後まですいません。
よろしくお願いします。
 

Re: エラーメッセージでログインできない状態でのアップデート方法

2014年8月22日 at 10:31
基本的には全て上書きで構いませんが、転送量節約のためには、files以下はもともとサーバー側で先にアップロード済みのものをダウンロードしたはずですから、再度アップロードしてもしなくてもいいでしょう。また、config/site.phpはアップロード後に再度データベース接続情報などを戻す必要があります。
 

Re: エラーメッセージでログインできない状態でのアップデート方法

2014年8月26日 at 21:03
ありがとうございました。
ですが、最後の最後で壁にぶち当たりました。
files以外のファイルと、site.phpの内容を変更し、アップロードした所、
下記のようなエラーが発生しました。
MySQLのエラーのようですが、MySQL内の修正を行なうのでしょうか。
最後まで申し訳ないのですが、ご教示お願いします。

Fatal error: Uncaught exception 'ADODB_Exception' with message 'mysqlt error: [1054: Unknown column 'logUserID' in 'field list'] in EXECUTE("insert into Logs (logType, logText, logIsInternal, logUserID) values ('exceptions', 'Exception Occurred: /サーバー/updates/concrete5.6.3.1.ja_updater/concrete/libraries/3rdparty/adodb/adodb-exceptions.inc.php:78 mysqlt error: [1146: Table \'データベース名.PermissionKeys\' doesn\'t exist] in EXECUTE("select pkID, pkName, pkDescription, pkHandle, pkCategoryHandle, pkCanTriggerWorkflow, pkHasCustomClass, PermissionKeys.pkCategoryID, pkCategoryHandle, PermissionKeys.pkgID from PermissionKeys inner join PermissionKeyCategories on PermissionKeyCategories.pkCategoryID = PermissionKeys.pkCategoryID")\n (1146)\n\n#0 /サーバー/updates/concrete5.6.3.1.ja_updater/concrete/libraries/3rdparty/adodb/adodb.inc.php(1074): adodb_throw(\'mysqlt\', \'EXECUTE\', 1146, \'Table \'sddb0040...\', \'s in /サーバー/updates/concrete5.6.3.1.ja_updater/concrete/libraries/3rdparty/adodb/adodb-exceptions.inc.php on line 78
 

Re: エラーメッセージでログインできない状態でのアップデート方法

2014年8月27日 at 19:21
ローカルでバージョンアップを行なわれたのですよね。その際に、MySQLのデータベースの構造も自動的に更新されています。ですので、公開サイトに反映する際、ローカルで作成したデータベースのバックアップ(エクスポート、またはダンプとも言う)を、公開サイト側でインポートする必要があります。
 

Re: エラーメッセージでログインできない状態でのアップデート方法

2014年8月13日 at 5:16
サーバー会社がわかると的確な返信があるかもしれませんよ。
更にエラーメッセージを記載するといいと思います。

バージョンが変わったことでphp.iniの設定も変わっているということはありませんか?
.htaccessもチェックしておくといいかも知れません。
 

Re: エラーメッセージでログインできない状態でのアップデート方法

2014年8月13日 at 13:50
サーバーは、SDサーバーです。
エラーメッセージは、画面一杯に表示されており、相当な数です。

以前は、PHP5.2へ変更ができ、変更すると通常通り動作していましたが、
完全にPHP5.2が使用できなくなったため、エラーが表示されてしまいます。

php.iniや.htaccessも特に修正などは加えてないと思います。