MediaWikiのアップグレード手順
バージョン1.15.1へのアップグレード手順を示します。
手順
DBとWebのデータをバックアップする
DBバックアップコマンド例
mysqldump -u <MYSQL_USER> -p <DB_NAME> > <DUMP_NAME>
Apacheを終了する
終了は必須ではありませんが、トラブル防止のために実施しました。
新たなMediaWikiのアーカイブファイルを既存ディレクトリに上書きする
コマンド例
tar zxvf mediawiki-1.15.1.tar.gz -C <APACHE_HOME>/htdocs/ --strip-components=1
AdminSettings.phpをコマンドラインから実行する(1.15.1 の場合)
注意 : 最新バージョンでは、既に使用できません
AdminSettings.phpは、ブラウザから実行できません。
コマンド例(maintenanceディレクトリに移動してください)
$ php update.php --aconf ../AdminSettings.php
エラーメッセージが出る場合は、AdminSettings.phpの設定が不適切であるかもしれません。
update.phpをコマンドラインから実行する(1.23.5 の場合)
ver 1.16.0 -> 1.23.5 にアップグレードを行いましたが、以前とアップグレード用ファイルが変更されていました。
cd /usr/local/apache2/htdocs/w/ php maintenance/update.php
関係ないですが、ページ編集時、Draft extention がエラーとなってしまい、処理続行できなかったので、コメントアウトしました。アップグレードが必要かも。
Apacheを起動する
補足
ver 1.16.0 -> 1.23.5 にアップグレード時の注意事項
公式サイトに記載はありますが、念のため備忘として残します。
Profilerのエラー
【事象】
ページアクセス時、下記のエラーが出る。操作一切不可。
Fatal error: Cannot redeclare wfProfileIn() (previously declared in /usr/local/apache2/htdocs/w/includes/profiler/Profiler.php:33) in /usr/local/apache2/htdocs/w/includes/ProfilerStub.php on line 24
【対処】
ファイルを移動。
/usr/local/apache2/htdocs/w/ mv StartProfiler.php StartProfiler.orig.php
Profilerが何なのかは知りません。
skinのエラー
【事象】
画面上部に、常に下記の Warning が出る。
Warning: A skin using autodiscovery mechanism, MySkin, was found in your skins/ directory. The mechanism will be removed in MediaWiki 1.25 and the skin will no longer be recognized. See https://www.mediawiki.org/wiki/Manual:Skin_autodiscovery for information how to fix this. [Called from Skin::getSkinNames in /usr/local/apache2/htdocs/w/includes/Skin.php at line 74] in /usr/local/apache2/htdocs/w/includes/debug/Debug.php on line 303 Warning: A skin using autodiscovery mechanism, Simple, was found in your skins/ directory. The mechanism will be removed in MediaWiki 1.25 and the skin will no longer be recognized. See https://www.mediawiki.org/wiki/Manual:Skin_autodiscovery for information how to fix this. [Called from Skin::getSkinNames in /usr/local/apache2/htdocs/w/includes/Skin.php at line 74] in /usr/local/apache2/htdocs/w/includes/debug/Debug.php on line 303 Warning: A skin using autodiscovery mechanism, Chick, was found in your skins/ directory. The mechanism will be removed in MediaWiki 1.25 and the skin will no longer be recognized. See https://www.mediawiki.org/wiki/Manual:Skin_autodiscovery for information how to fix this. [Called from Skin::getSkinNames in /usr/local/apache2/htdocs/w/includes/Skin.php at line 74] in /usr/local/apache2/htdocs/w/includes/debug/Debug.php on line 303 Warning: A skin using autodiscovery mechanism, KindofBlue, was found in your skins/ directory. The mechanism will be removed in MediaWiki 1.25 and the skin will no longer be recognized. See https://www.mediawiki.org/wiki/Manual:Skin_autodiscovery for information how to fix this. [Called from Skin::getSkinNames in /usr/local/apache2/htdocs/w/includes/Skin.php at line 74] in /usr/local/apache2/htdocs/w/includes/debug/Debug.php on line 303 Warning: A skin using autodiscovery mechanism, Standard, was found in your skins/ directory. The mechanism will be removed in MediaWiki 1.25 and the skin will no longer be recognized. See https://www.mediawiki.org/wiki/Manual:Skin_autodiscovery for information how to fix this. [Called from Skin::getSkinNames in /usr/local/apache2/htdocs/w/includes/Skin.php at line 74] in /usr/local/apache2/htdocs/w/includes/debug/Debug.php on line 303 Warning: A skin using autodiscovery mechanism, Nostalgia, was found in your skins/ directory. The mechanism will be removed in MediaWiki 1.25 and the skin will no longer be recognized. See https://www.mediawiki.org/wiki/Manual:Skin_autodiscovery for information how to fix this. [Called from Skin::getSkinNames in /usr/local/apache2/htdocs/w/includes/Skin.php at line 74] in /usr/local/apache2/htdocs/w/includes/debug/Debug.php on line 303
【対処】
現状の skins フォルダを消して、新規の skins フォルダを上書き。
当サイトは、スキンは vector しか使用していないので、これで問題なし。skin の仕様変更があったようだが、詳細は知らない。
「特別:最近の更新」にアクセスできない
ver 1.16.0 -> 1.23.5 にアップグレード後、特別:最近の更新 を開こうとすると、画面が真っ白となり、apache の error_log に
Fatal error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 2147483648 bytes) in /usr/local/apache2/htdocs/w/includes/User.php on line 2439
のようなログが表示される。php のメモリ割り当てが少ないのかと思い、php.ini の 「memory_limit = 128M」を徐々に上げていったが、解決しなかった。
試しに、php のバージョンを 5.3 系の最新版である、5.3.29 に挙げてみたらエラーが解消された。根本原因は謎。(エラー発生時は、5.3.6 を使用していた)
ver 1.23.5 -> 1.27.1 にアップグレード時の注意事項
php 5.5 が必須
php 5.3 では動作しなくなっていました。また、mbstring と mcrypt も必要になっていました。libmcrypt も yum 経由で追加しています。
yum install libmcrypt yum install libmcrypt-devel tar zxf php-5.5.38.tar.gz cd php-5.5.38 ./configure --with-apxs2=/usr/local/apache2/bin/apxs --with-mysql --enable-mbstring --with-mcrypt make su make install
mbstring が無いと、update.php 実行時にエラーになります。
php maintenance/update.php
Error: Missing one or more required components of PHP. You are missing a required extension to PHP that MediaWiki needs. Please install: * mbstring <https://secure.php.net/mbstring>
mcrypt が無いと、MediaWiki ログイン時、画面に以下エラーが表示されます。
Exception encountered, of type "BadMethodCallException"
mcrypt インストールの代わりに、LocalSettings.php に
$wgSessionInsecureSecrets = true;
を記述してもエラーは回避できるのですが、公式サイトによると非推奨とのことです。
参考 : https://www.mediawiki.org/wiki/Manual:$wgSessionInsecureSecrets/ja
スキン読み込み
MediaWiki 1.24 以降は、スキン自動読み込みが無効になったようです。LocalSettings.php に
wfLoadSkin( 'Vector' );
を追加しました。
参考
更新履歴
- 2016/08/29
- ver 1.27.1 へのアップグレードの記述を追記
- 2014/10/13
- ver 1.23.5 へのアップグレードの記述を追記
- 2010/01/10
- ページ作成