MediaWikiの公式ページ を見るとバージョン1.10.0がリリースされているようです。
前回書いた、「自分だけのオリジナルWikipediaを作ろう! - MediaWikiインストール - 」ではバージョン1.9.3を利用していたので、早速アップグレードしてみる事に。
なお、下記作業は全て前回の内容を踏まえて記載してます。(DocumentRootやDB名など)
※ 新規にMediaWiki1.10.0を上記の方法に従ってインストールしようとすると正常にインストールが完了しませんでした。
同様の手順で1.9.3はインストールできるんですが・・・。
もし同様の現象が発生している方がいらっしゃれば、一旦1.9.3をインストールして下記手順で1.10.0にアップグレード
する事で回避できます。
MediaWikiをアップグレードする
バージョン1.10へのアップグレード方法の、詳細はMediaWikiのマニュアル に掲載されています。
1. ファイルのダウンロード
MediaWikiの公式ページ からバージョン1.10.0のソースをダウンロードし、稼動しているサーバーにFTPなどで転送します。
2. 1.で転送したファイルを展開
3. DB(PostgreSQL)及び前回のバージョン(1.9.3)のファイルをバックアップ
3.1 DB(PostgreSQL)のバックアップ(PostgreSQL)
pg_dumpコマンドを利用してWiki用DB(wikidb)のバックアップを取得します。
$ su - postgres $ pg_dump wikidb > wikidb_backup,dmp
3.2 コンテンツファイルのバックアップ
MediaWiki1.9.3のコンテンツファイルをバックアップします。
基本的にどこか適当なディレクトリにコピーしてしまえばよいです。
$ cd /home/wwwroot/ $ cp -R wiki/* ~/
4. MediaWiki1.10.0のコンテンツを1.9.3のディレクトリに上書きコピー
$ cd /home/wwwroot/wiki/ $ cp ~/mediawiki-1.10.0/* ./
5. AdminSettings.phpファイルの作成
DBへ接続する際の情報を記載したAdminSettings.phpファイルを作成します。
AdminSettings.phpファイルは、MediaWikiをメンテナンスするために用意されている、maintenanceディレクトリ以下のコマンドファイルを実行する際に参照されるファイルのようです。
(メンテナンスが終了すれば削除します)
作成には、MediaWikiのルートディレクトリ(/home/wwwroot/wiki/)以下に「AdminSettings.sample」と言うファイルがあるので、それをAdminSettings.phpと言うファイルとしてコピーし内容を編集します。
$ cp AdminSettings.sample AdminSettings.php $ vi AdminSettings.php $wgDBadminuser = 'wikiadmin'; $wgDBadminpassword = 'adminpass';
DBの管理者用(管理権限を持つ)ユーザーとそのパスワードを入力しておきます。
このAdminSettings.phpファイルを作成または編集しておかないと、6.のアップグレードスクリプト実行時に下記のようなエラーが出力されます。
$ php update.php MediaWiki 1.10.0 Updater No superuser credentials could be found. Please provide the details of a user with appropriate permissions to update the database. See AdminSettings.sample for more details.
6. アップグレードスクリプトの実行
MediaWikiに用意されているアップグレード用のスクリプトを実行します。
アップグレード用のスクリプトは、maintenanceディレクトリに以下に用意されています。
$ cd /home/wwwroot/wiki/maintenance/ $ php update.php
エラーが出なければ、これでアップグレードが完了です。
再度、MediaWikiのページにブラウザからアクセスすれば前回までの記事が同様に表示されます。
また、、「自分だけのオリジナルWikipediaを作ろう! - MediaWikiインストール - 」の最後に書いた検索時のエラーも、バージョン1.10.0から解消されているようです。
> MediaWikiのDBにPostgreSQLを利用した場合で、登録した記事を検索しようとすると下記の様な
> 内部処理エラーが発生します。
Warning: pg_query() [function.pg-query]: Query failed: ERROR: no operand in tsearch query: "+&テスト&" in /home/wwwroot/wiki/includes/DatabasePostgres.php on line 389