Manual:アップグレード

From MediaWiki.org
Jump to: navigation, search
This page is a translated version of the page Manual:Upgrading and the translation is 99% complete.

Other languages:
العربية • ‎беларуская • ‎български • ‎català • ‎Deutsch • ‎Zazaki • ‎Ελληνικά • ‎English • ‎español • ‎فارسی • ‎français • ‎हिन्दी • ‎magyar • ‎Bahasa Indonesia • ‎italiano • ‎日本語 • ‎한국어 • ‎Nederlands • ‎polski • ‎português do Brasil • ‎русский • ‎sicilianu • ‎سنڌي • ‎Türkçe • ‎中文
ダウンロード アイコン
パッケージのダウンロード

基本的な概要[edit]

ファイル転送[edit]

ファイル転送の方法を選択してください:

  • wget
  • SCP または WinSCP でセキュアなコピー
  • SSH File Transfer Protocol (SFTP)
  • FTP クライアントを使用。
  • ホスティング会社がウェブブラウザ経由で使用できるファイルマネージャーを用意しているかもしれません。ご自分が契約しているプロバイダーを調べましょう。
  • その他の方法。 これらのプロトコルの一覧は w:List of file transfer protocols にあります

準備[edit]

MediaWikiに含まれるUPGRADE テキストファイルを読みましょう。

  1. 要件を確認する
  2. リリースノートを読む
  3. 既存のファイルとデータベースをバックアップする
  4. 新しいファイルを展開する
  5. 拡張機能をアップグレードする
  6. 更新スクリプトを実行してデータベースをチェックする
  7. アップグレードをテストする

システム要件の確認[edit]

MediaWiki 1.28 の要件は以下の通りです:

  • PHP 5.5.9+
  • 以下のうちいずれか 1 つ:
    • MySQL 5.0.2+ (または同等の MariaDB)
    • PostgreSQL 8.3+
    • SQLite 3.3.7+
    • Oracle 9.0.1+

PostgreSQL をお使いの場合は、Manual:Upgrading PostgresManual:Upgrading Postgres もお読みください。

詳細情報については、Manual:インストール要件Manual:Installation requirements および 互換性Compatibility をお読みください。

リリースノートを読む[edit]

配布用のtarballやGitからチェック・アウト/エキスポートしたファイルの中には、大文字で始まるファイルが沢山ありますが、その中の1つに RELEASE-NOTESwiki)があります。 ファイルを開くなら「今」です。今回のリリースでなにが変わっているのかを見てみましょう。

保留中のジョブの一掃[edit]

性能向上の理由で、データベースのいくつかの動作は先延ばしされており、ジョブキューで管理されています。 それらのジョブはデータベースに格納され、実行すべき動作に関する情報をパラメーターに記録します。 新しいバージョンでジョブのパラメーターの指定方法が変更になり、ジョブの実行が失敗することを避けるために、wikiをアップグレードする前に、保留中のジョブを実行するように強く推奨します。 runJobs.phpManual:RunJobs.phpを使用して全ての保留中のジョブを実行し、アップグレードを実行する前にジョブキューを一掃します。

既存のファイルとデータベースをバックアップする[edit]

完全な説明: Manual:ウィキのバックアップManual:Backing up a wiki

アップグレード・スクリプトは良く管理され安定していますが、上手く行かない可能性はあります。データベース・スキーマを更新処理する前に、Wikiの完全なバックアップをしましょう 。データベースとファイルのバックアップを両方とも行います。

ウィキはコンテンツです。データベースから表示しています。(キャラクターセットの設定は正確に。最初に LocalSettings.phpを確認しましょう)。SQLデータベース・ダンプの他にXMLダンプを作成するのは良いアイデアです。

  • MySQLの場合、mysqlコマンドでSQL dumpとXML dumpを使用します。
mysqldump --user=wikidb_user --password=wikidb_userpassword wikidb > file.sql
mysqldump --user=wikidb_user --password=wikidb_userpassword wikidb --xml > file.xml
  • PostgreSQLの場合、databaseのダンプ作成には pg_restoreを使います。以下のように入力してください:
pg_dump --create -Fc wikidb > file.db.dump
SQLiteの場合、バクアップ作成にはMediaWikiスクリプトを使用します。
php wikifolder/maintenance/sqlite.php --backup-to file
  • 画像と他のメディアファイル(imagesディレクトリの内容とカスタムロゴ /skins/common/images/wiki.png)
  • 設定ファイル。例えばLocalSettings.php.htaccess(もしあれば)。
  • MediaWikiのプログラムファイル。全てのスキンや拡張機能、とくにユーザーが修正を加えたもの。

新しいファイルの展開[edit]

tarball パッケージの使用[edit]

FTPやコマンドラインを使って、新しいファイルを設置することが出来ます。もし可能ならコマンドラインを使いましょう!FTPを通して数千のファイルを一つづつアップロードするよりもコマンドラインの方がだんぜん速いです。

注 注: tarball はサーバー上の新しい空のフォルダに解凍すべきです。そうせずに新しいバージョンを古いバージョンに直接展開するなら、 既存ファイルとデータベースのバックアップの指示に従いましょう。そうしないと上書きされて、カスタマイズした内容が分からなくなってしまいます。 tarballをユーザーのMediaWikiの最上位フォルダに抽出すると、MediaWikiの古いバージョンのファイルが置き忘れられて、アップグレードされたコードを邪魔するかもしれません。お勧めは新しいファイルを新しいディレクトリに解凍して、それから新しいディレクトリをカスタマイズ(LocalSettings.phpやimagesフォルダ、拡張機能やカスタムスキンなど)することです。

FTP コマンドかグラフィカルか[edit]

コマンドラインからサーバへ接続できない場合、MediaWikiより.tar,gzファイルをダウンロードし、7zipで解凍することもできます。

ローカルで解凍したあとは、FTPクライアントアプリケーションでディレクトリとファイルをサーバへアップロードしてください。

コマンドライン[edit]

カレントユーザーがウィキをインストールするディレクトリに対する完全な書き込み権限を所有していない場合は、sudoでコマンドを実行する必要があるかもしれません。tarballパッケージを解凍すると、新しいバージョン用の新規ディレクトリが作成されます。古いバージョンをインストールしたディレクトリから設定ファイルや画像ディレクトリをコピーします。

$ cd /path/to/your/new/installation/  
$ wget https://releases.wikimedia.org/mediawiki/1.28/mediawiki-1.28.1.tar.gz
$ tar -xvzf mediawiki-1.28.1.tar.gz 
$ rm mediawiki-1.28.1.tar.gz

(Open)Solaris ユーザーはgtarを使用するか、または

$ gzip -dc mediawiki-1.28.1.tar.gz | tar xf -

その他のファイル[edit]

tarballを展開した後、古いバージョンをインストールしたディレクトリから新しい方へ幾つかのファイルやフォルダをコピーします。

  • LocalSettings.php、ユーザーが行った構成設定が入っているファイルです。
  • imagesディレクトリ(古いバージョンの場合はuploadsディレクトリ)。初期設定では、ウィキにアップロードした全てのファイルが入っています。所有権と権限を変更してください。find ./images -type d -exec chmod 755 {} \;chgrp -R apache images(ウェブユーザーが"apache"の場合)を実行します。
  • extensionsディレクトリ内の拡張機能。出来れば拡張機能も新しいバージョンを取得すべきです。古い拡張機能が新しいバージョンのMediaWikiで動く保証はありません。
  • custom logoを使用している場合は、バックアップからファイルを復元する必要があります。1.24以前はskins/common/images/、1.24以降はresources/assets/images/(ユーザーの設定による)。それからLocalSettings.php に例えば$wgLogo = "$wgScriptPath/images/logo.png";を追加します。
  • skins ディレクトリからカスタム・スキン。
  • 古いバージョンでインストールしたファイルや拡張機能に加えた修正。
  • .htaccess ファイル(Apacheを使用し、何かルールを定義した場合)

完了したら、新しいフォルダをウェブサーバーの公開フォルダにします。もしくは古いインストールディレクトリの名前を変更して、新しい方を古い方の名前に変更します。

Git の使用[edit]

Gitを使用する場合、ファイルを全く新しい場所にエキスポートしてから、カスタマイズ済みのファイルを新しい場所に前述のようにコピーします。

MediaWiki 1.25以降を使用している場合、Composerで使用している外部のPHPライブラリやWikimedia wiki farmを維持管理するために提供されているコレクションもインストールする必要があるでしょう。インストールや外部ライブラリのアップデートの詳細はGit ダウンロード・ドキュメントで見つけることが出来ます。

パッチの使用[edit]

小型パッチは通常マイナーなバージョン・アップグレードに使用されます。the dumps siteからパッチファイルを手動でダウンロードして抽出して、以下のwgetの指示に従います。増分パッチなので、バージョンをスキップすることは出来ません

  1. MediaWikiディレクトリへ cdで移ってください。(一般的にLocalSettings.phpがある場所となります。)
  2. バッチファイルをダウンロードし、gunzipで解凍してください。
  3. patch -p1 --dry-runを使い、パッチを適用すると変更されることを確認します(例えば patch -p1 --dry-run -i mediawiki stable release number.patch
  4. 以上がよろしければ、--dry-run無しでpatchを実行してください。
  5. 「特別:バージョン情報」を確認すると、新しいバージョン番号になっているはずです。

エラーを引き起こす可能性がある残留ファイル[edit]

古いバージョンをインストールしたディレクトリに新しいバージョンを解凍した場合、幾つかの古いファイルが問題を引き起こすかもしれません。


MediaWiki バージョン: 1.18

プロファイリングを使用しないのに、MediaWikiのルートフォルダにStartProfiler.php ファイルがある場合、/includes/Profiler.phpの参照エラーが表示されるかもしれません。 削除するか、名称を変更すれば、StartProfiler.phpファイルはこのエラーを解決できます。MediaWikiのルートフォルダにある StartProfiler.sampleファイルは将来のプロファイリングのテンプレートとして役立ちます。


MediaWiki バージョン: 1.23

MediaWiki 1.23ではコアスキンファイルの自動発見メカニズムを旧式化しました。このバージョンにアップグレードしたら、skins/ディレクトリ内のChick.phpNostalgia.phpSimple.phpStandard.phpディレクトリやskins/ディレクトリ内のサブフォルダを削除してください。それらのフォルダを見つけると、MediaWikiは注意喚起のために警告ログを記録します。(似たような理由でカスタムスキンの調整も必要かもしれません)。詳細はManual:Skin autodiscoveryManual:Skin autodiscoveryご覧ください。


MediaWiki バージョン: 1.24

MediaWiki 1.24 はコア・スキンファイルのパスを変更しました。このバージョンにアップグレードしたら、skins/ ディレクトリ内のCologneBlue.phpModern.phpMonoBook.phpVector.phpに古いファイルが存在しないようにして下さい。詳細はManual:Skin autodiscoveryManual:Skin autodiscoveryをご覧下さい。

拡張機能のアップグレード[edit]

拡張機能の中にはMediaWikiの新しいバージョンで動くようにアップデートされている物があります。そのような拡張機能は必ず最新版にアップグレードしてください。中には拡張機能をカスタマイズするために手動アップデートを実行する必要がある物があるかもしれません。

ディファレントtarballsは拡張機能の一部セット(サブセット)であり、 ユーザーのMediaWikiコア・リリースに応じて正しい機能を選択して、ユーザーのアップグレードを助けるバージョニングを行います。

拡張機能ディストリビューター は古いMediaWikiで動作する拡張機能のスナップショットが欲しい人に役立ちます。

もし多くの拡張機能が欲しいなら、Gitからダウンロードするのが最良の選択かもしれません。

今までのLocalSettings.phpの適用[edit]

今まで使用してきた古いバージョンのLocalSettings.phpを使う場合、新しいバージョンがLocalSettings.phpを使用できるようにLocalSettings.phpを修正する必要があるかもしれません。

外装の登録[edit]

MediaWiki 1.24から VectorやMonobookやModernやCologneBlueのような同梱されたスキンはMediaWiki のコアの一部ではなくなりました。それらを使用するためにはLocalSettings.phpに明示的に設定する必要があります。もしそうしないとMediaWiki はスキンがインストールされていないと警告します。

以下の設定は、1.24より前のバージョンからアップグレードして、以前同梱されていたスキンの1つを使用したい場合にLocalSettings.phpに追加する必要があるものです。

wfLoadSkin( 'Vector' );
wfLoadSkin( 'MonoBook' );
wfLoadSkin( 'Modern' );
wfLoadSkin( 'CologneBlue' );

このコードはMediaWiki 1.25より適用されました。 MediaWiki 1.24を使用する場合、以下のコードを実行してください:

require_once "$IP/skins/Vector/Vector.php";
require_once "$IP/skins/MonoBook/MonoBook.php";
require_once "$IP/skins/Modern/Modern.php";
require_once "$IP/skins/CologneBlue/CologneBlue.php";

他のスキンは新しいskin registrationシステムに未だ適用されていないと思われるので、問題が生じた場合は、スキンごとに適切な登録方法をドキュメント・ページで参照してください。

拡張機能の登録[edit]

MediaWiki 1.25より、新しい 拡張機能の適用 システムが使われています。

以前は $LocalSettings.php で以下のようにインクルードしていたと思われます:

require_once "$IP/extensions/Cite/Cite.php";
require_once "$IP/extensions/Gadgets/Gadgets.php";
require_once "$IP/extensions/ImageMap/ImageMap.php";
require_once "$IP/extensions/InputBox/InputBox.php";
require_once "$IP/extensions/Nuke/Nuke.php";
require_once "$IP/extensions/ParserFunctions/ParserFunctions.php";
require_once "$IP/extensions/Poem/Poem.php";
require_once "$IP/extensions/SyntaxHighlight_GeSHi/SyntaxHighlight_GeSHi.php";
require_once "$IP/extensions/WikiEditor/WikiEditor.php";

1.25より、以下のように置き換わります:

wfLoadExtension( 'Cite' );
wfLoadExtension( 'Gadgets' );
wfLoadExtension( 'ImageMap' );
wfLoadExtension( 'InputBox' );
wfLoadExtension( 'Nuke' );
wfLoadExtension( 'ParserFunctions' );
wfLoadExtension( 'Poem' );
wfLoadExtension( 'SyntaxHighlight_GeSHi' );
wfLoadExtension( 'WikiEditor' );

拡張機能は新しい拡張機能登録システムを使用するように作られています。 適合しない拡張機能は古い方法を使ってインストールすべきです。 詳細は各拡張機能のページのインストール指示を参照してください。

その他の変数[edit]

幾つかの変数は旧式になり、廃止された物もあります。 LocalSettings.php の中にそれらの変数があっても、何の効果もありません。 新しいバージョンでは新しい変数が追加されたり、既存の変数の型が変更になっている事があります。 MediaWikiは変数をまずデフォルトで使用してみて、型が変わっている場合は、後方互換性で使用します。 どのような場合でも、リリースノートより変更点を見てください。

更新スクリプトの実行[edit]

MediaWiki データベースの更新には2つの方法があります。1つはコマンドラインから行うもの、1つはウェブブラウザから行うものです。もしサーバーにシェルアクセスが出来るなら、コマンドラインによる更新をお勧めします。その理由はタイムアウトやコネクション・リセットによる更新処理の中断のリスクを減らすことが出来るからです。

スクリプトはMediaWikiが必要とする依存ファイルが見つからない場合はダウンロードを試みます。

コマンドライン[edit]

サーバーのコマンドラインやSSHシェル他を使用しましょう。SSH経由でサーバーに接続してコマンドラインを使用しましょう。ローカルのMicrosoft Windowsのパソコンの場合は、PuTTYでSSHを使いましょう。コマンドラインやシェルで、maintenanceディレクトリを移動してupdate scriptを実行しましょう。

$ php update.php

Linuxサーバーでエラーが表示されたら、ルートとしてコマンドを実行してください。sudo php maintenance/update.php。 Windows (例えばXAMPPManual:Installing MediaWiki on XAMPP)の場合は、まず最初にウェブサーバー(例えばApache)やデータベース(例えばMySQL)が起動しているか確認してください。それからupdate.phpを実行します(右クリックで「開く」を選択してPHP.exe)。スキーマのアップグレードが完了したら、コマンドプロンプトの結果ウィンドウは自動的に閉じるようです。

PHPのバージョンが古すぎます、MediaWiki には新しいバージョンが必要です(your PHP version is too old and that MediaWiki needs a newer version)というメッセージが表示されるかもしれません。このメッセージのあとで、アップデートは中止されます。このエラーの理由は、ウェブサーバー上でユーザーのMediaWikiを動かしているPHPとは別のバージョンのPHPをコマンドラインが使用できるからです。もしこのメッセージが表示されたら、シェル上でPHPの新しいバージョンを使用できるか、php5php56などのコマンドを実行して確かめてください。もし別のバージョンが利用可能なら、- if so - under which name, depends on the setup of your server. もし動かないなら、ホスティング会社に尋ねてください。たぶん知っています。

MediaWikiは既存のスキーマを検査して、新しいコードが動くように更新し、必要に応じてテーブルやカラムを追加します。

共有データベースを使用している場合、 共有テーブルを更新したいなら--dosharedパラメーターを付けてください。そうしないと更新スクリプトがテーブルを操作できません。

ALTER command denied to user エラー(類似エラー)の対処法[edit]

スクリプトが以下のようなメッセージと共に中断することがあります。

Error: 1142 ALTER command denied to user 'wiki'@'localhost' for table 'mytable' (localhost)
ERROR: must be the owner of the mytable relation 

これは(最上位ディレクトリにある)LocalSettings.phpManual:LocalSettings.php$wgDBadminuserManual:$wgDBadminuser$wgDBadminpasswordManual:$wgDBadminpasswordの設定を確認しなさいと言う意味です。そこにはスクリプトがデータベースに接続するために必要なユーザー名とパスワードの設定があります。

unexpected T_STRING エラーの対処法[edit]

コマンドラインからupdate.phpを実行している場合は、以下のようなエラーに出くわす可能性があります。

syntax error, unexpected T_STRING, expecting T_OLD_FUNCTION or T_FUNCTION or T_VAR or '}' \
in ~/maintenance/commandLine.inc on line 13

このエラーはPHP4でupdate.phpを実行している場合に起こります。

ホスティング会社がPHP4とPHP5の両方に対応している場合は、以下の手順を実行します。

  1. コマンドラインから「whereis php5」を実行する。
  2. PHP5のパスの場所を見つけたら、 php5/binディレクトリの内容をリスト表示する。
  3. PHPの実行ファイル(PHPまたはPHP5)が分かったら、完全なパスを入力してupdate.phpを実行する。

以下に例を示します:

$ whereis php5
$ ls -la /usr/local/php5/bin
$ /usr/local/php5/bin/php update.php

register_argc_argv is set to false エラーの対処法[edit]

以下のようなエラーが出力されると思われます:

Cannot get command line arguments, register_argc_argv is set to false
  1. ~/maintenance に行き、既存の'php.ini'を編集するか、作成してください。
  2. 以下のように行を追加します:
register_argc_argv=true
  1. php update.php をもう一度実行します

Web ブラウザー[edit]

MediaWiki バージョン: 1.17
update.phpManual:update.php も参照してください

データベースがすでに巨大だったり、稼働率が高い場合は、ウェブアップデートを使用すべきではありません。その理由は例えばmaximum_execution_timeに達した時、更新処理はタイムアウトするからです。そういう場合は (Webではなく)コマンドラインからupdate.phpを使用すべきです。これはまったくもってユーザーのサーバーに「大きすぎるほど大きく」依存します(例えばパフォーマンスやロードやスクリプト実行をどのくらい許すかというPHPの最大実行時間など)。Wikiがウェブアップデートを使用するには大きすぎるのに、ユーザーのホスティング会社がコマンドライン・アクセスを許可しない場合は、Wikiを他のホスティング会社に移す必要があります。できればシェル・アクセスが出来る会社が良いです。

  1. データベース・メンテナンスを実行する前はいつでもバックアップしてください。
  2. ウェブブラウザのURLに/mw-config/を入力します。例えば、ユーザーのウィキがhttp://example.org/w/index.phpにあるなら、http://example.org/w/mw-config/と入力して下さい。
  3. ユーザーの使用言語を選択し、「次へ」をクリックします。
  4. インストールされているウィキが検出されます。画面に表示される指示に従ってアップグレードします。
    もし「アップグレードキー」を尋ねられた場合はLocalSettings.phpManual:LocalSettings.phpファイルを開いて$wgUpgradeKeyManual:$wgUpgradeKeyに割り当てられたキーを探して下さい。

ウェブ・アップデーターが作動しないように思える時があるかもしれません。最初の言語選択画面が表示される代わりに、空のWikiページが表示されるかもしれません。この場合、ユーザーのウェブサーバーがRewriteルールを使用している可能性が高いです(特にshort URLs)。これはmw-configではウェブアップデーターを表示せず、頭文字が大文字のMw-config/の時は表示します。この場合、.htaccessファイルの名前をアップデートの時だけ変更してください。そうすればウェブ・アップデーターにアクセスすることが出来るでしょう。

警告 警告: この方法を使った場合はアップグレード・スクリプトを実行した後に、必ず「.htaccessファイルの名称を元に戻して」ください。そうしないとshort URLやもしかすると他の物が壊れます!

更新のテスト[edit]

アップグレードが完了したら、ウェブブラウザでwikiを見て、以下の操作が期待通りに出来るか確認しましょう。

  • 複数のページの閲覧
  • 複数のページの編集
  • ファイルを1つアップロード
  • Special:Versionを開いて、表示されるバージョンが正しいか、拡張機能があるかを確認します。

よくある質問[edit]

アップグレードはどのくらい大変ですか?[edit]

もし修正したファイルがLocalSettings.phpManual:LocalSettings.phpだけで、1.5以降からアップグレードするなら、作業はとても単純です。人間の作業は数分だけです。データベース・スキーマの変更時間はユーザーのデータベースの大きさに比例します。数百万ページのWikiなら数時間かかる可能性があります。しかし千ページ以下の典型的な大きさなら、通常は数秒で完了します。

例えば1.13.0から1.13.1のようにメジャーバージョンが同じの「マイナーアップグレード」では、スキーマの変更は全く必要ありません。ユーザーはファイルの更新だけで済みます。データベースの更新は必要ありません。従ってインストーラー・スクリプトの実行は必要ありません。

1.4以前からのアップグレードは複雑になる可能性があります。その理由はUTF-8以外の文字セットへの対応が廃止され、大量の文章データを並べ替えるソート構造が変わったからです。UPGRADEファイルの関連する節を読んで下さい。

あなたが私たちのソースコードを修正していて、修正を上書きされたくない場合は、アップグレードは複雑になります。diffpatchMeldWinMergeのようなツールが役に立つかもしれません。あなたが維持管理がなされていない拡張機能を使用している場合も、手間がかかる可能性があります。MediaWikiを更新する時は、拡張機能も一緒に更新しましょう。

あなたがスキンを修正したり、カスタムスキンを使用している場合は、それらが新しいバージョンのMediaWikiで動くように調整しなければならなくなる可能性が高いでしょう。

Template loop detected: Template:TNT 毎度毎度「グローバル」CSSやJS(JavaScript)ファイルにパッチを当てる代わりに、単純にMediaWiki:Common.jsや MediaWiki:Common.css ページにコードを追加することも出来ます。それらがデータベースの一部になっていれば、アップグレード後に再利用されるので、今後はMediaWiki のコアファイルにパッチを当てなくて済みます。

本当に古いバージョンからどのようにアップグレードすれば良いでしょうか?一段階で済みますか?何段階もかかりますか?[edit]

場合によります。MediaWiki 1.4以前からアップグレードする場合は、まず最初にMediaWiki 1.5にアップグレードすべきです。Latin-1のウィキからアップグレードする場合はupgrade1_5.php(MediaWiki 1.5にある)を使用して、データベースの関連部分をUTF-8をコンバートします(動作させるにはLocalSettings.phpManual:LocalSettings.php$wgUseLatin1Manual:$wgUseLatin1にtrueを設定する必要)。次にupdate.phpを実行し、LocalSettings.phpの$wgLegacyEncodingManual:$wgLegacyEncoding オプションに以前のWikiで使用していたエンコーディングを設定します(例えばwindows-1252)。以上は基本的にウィキペディアやその他のウィキメディア財団のウェブサイトがMediaWiki 1.4から1.5に更新した方法です。詳しくは 関連設定ファイル(巨大ページにつき閲覧注意)Wikitechの関連するノートをご覧ください。あなたがupgrade1.5スクリプトを実行する前にMediaWiki 1.4に更新する必要があるかもしれません。 (例えばMySQLの)Latin-1のウィキのデータベース・ダンプを行いたい場合、textManual:Text table テーブルのold_textの型がmediumblobであることを確認してください。mediumtextでは文字エンコーディングの問題を避けられません。

もし今使用しているバージョンがMediaWiki 1.5 以上なら、1ステップで最新の安定版へ更新できます。数多くの報告や自動テストが非常に上手く行くと指示しています。あなたがもしそれを信じられないなら、メーリングリストのこの投稿を読んで下さい。 しかし注意して頂きたいことは、もしあなたが古い版から更新するならば、直前の版から更新する時よりもPHPエラーに遭遇する場合が多くなります。とは言え、途中を飛ばさずに毎回更新していたとしても、それらのエラーが表示されることはあります。また途中を飛ばした場合は、不具合は一度に起こるでしょう。この場合、更新が更に難しくなるでしょうが、あなたが飛ばした途中の版に更新すれば、その不具合が起きないことをお忘れなく!

バックアップは第一にするべきですか?[edit]

簡潔な回答: はい。

長い回答:a) あなたは自分のデータをどのくらい高く評価するか、b) バックアップ作成がどのくらい大変か、c) あなたはMySQLの保守管理にどのくらい自信があるかによります。

アップグレードに失敗すると、あなたのデータベースは2つの版の間で矛盾した状態になるかもしれません。更新中にPHPやMySQLエラーが発生すると、あなたのデータベースは一部だけ更新された状態になってしまうかもしれません。そのような状況でも、たくさん手作業をすれば、なんとか問題を修正できるかもしれません。しかしもっと簡単な方法があります。それはupdate.phpを実行して足踏みをする前にちょっとデータベースをバックアップすることであり、その後も継続的に行う事です。そうしないと不要な作業を何時間もすることになるかもしれませんよ。

復旧は複雑になりがちです。もしあなたがバックアップを怠って、更新関係の破損から復旧したいと助けを求めても、サポートフォーラムのボランティア達は好印象を持たないでしょう。よりよい対応は、あなたがご自分のバックアップで復旧して、MediaWikiプロジェクトの担当者に更新処理の不具合を報告することです。

自分のLocalSettings.phpを長持ちさせることは出来ますか?[edit]

はい、しかしユーザーは幾つかのマイナーな変更を行わなければならないかもしれません。LocalSettings.phpManual:LocalSettings.phpのフォーマットは大部分が後方互換性です。 LocalSettings.phpの互換性を壊すような変更はリリースノートの「後方互換性のない変更」節に文章化されて公表されます。

アップグレード中にwikiをオンラインに出来ますか?[edit]

一般的にはYESです。しかしGitは一時的に(数秒)Wikiを壊す可能性があります。

MediaWikiのマイナーリリース間のアップデートなら、行うべきことはソースファイルを更新するだけです。

注意: 以下はコマンドラインによる操作を想定しています。MediaWikiのメジャーリリース間のアップデートを行う場合に推奨される手順は以下の通りです。

  1. MediaWikiの新バージョンを新規ディレクトリに解凍します。
  2. 新しいバージョンのディレクトリの準備: 古いバージョンのディレクトリから設定済みのLocalSettings.phpをコピーし、インストール済みの拡張機能やカスタムスキン(もしあるなら)をコピーします。LocalSettings.phpの$wgLogo 設定を確認して、もし必要ならロゴファイルを古いバージョンのディレクトリから新しい方にコピーします。
  3. 新しいバージョンのリリースノートに、LocalSettings.phpに行う必要のある変更がないか調べる。
  4. 古いバージョンのディレクトリのLocalSettings.phpに以下の変数を挿入して、データベースを読み取り専用にする。アップグレード処理の間に利用者が編集しようとすると、以下のメッセージが表示される
    $wgReadOnlyManual:$wgReadOnly = 'Upgrading to MediaWiki 1.28.1';
  5. アップデート・スクリプトまたはウェブアップデーターを新バージョンのディレクトリで実行する。
  6. 古いバージョンのディレクトリ内のimagesディレクトリから新バージョンのディレクトリに画像をコピーする。
  7. 古いバージョンのディレクトリと新バージョンのディレクトリを交換する。

アップグレードする理由[edit]

新リリースの通知を受けるためにmediawiki-announceを購読しましょう。

普通のアップグレードなら十分に簡単で、ユーザーが使用するバージョンから最新バージョンへひとっ飛びに、ウェブブラウザでアップグレードも可能だからです。

最近のリリースではあなたのウィキやホストを荒らし行為から守り安全に保つためのセキュリティ修正を受け取れる一方で、旧版のリリースでは (バージョン ライフサイクルVersion lifecycle を見れば分かるように) 受け取れません。このセキュリティ修正はアップグレードを決意するのに十分な理由となるはずです。

新しいメジャーリリースはあなたが使いたくなるような新しい機能を備えています。詳細はリリース・ノートをご覧ください。非常に古いバージョンからアップグレードすることを、あなたの上司に納得させるための根拠はこれです:

2014年以前にBugzillaBugzilla最も要望が多かった不具合の修正一覧 もご覧ください。

同様にMediaWiki 1.18で、私たちは改良された編集エディタや荒らし防止ツールのConfirmEditやNukeのような必要不可欠な拡張機能を同梱し始めました。最新版で私たちはより多くの拡張機能を追加しつづけます。

関連項目[edit]