2017年12月2日土曜日

PostgreSQL10への移行に伴うMediaWikiのupgrade

注: 2017-09-23ごろの情報なので古い (eg. PostgreSQLは10rc1ではなく10.1になっている)が、うっかり忘れていたので今更ではあるがup。



PostgreSQLをupgradeした際 (cf. http://typeinf-memo.blogspot.com/2017/09/postgresql-10.html)に、PostgreSQLをbackendとして利用しているMediaWikiのupgradeも行ったのでメモ。

環境は:

* Debian GNU/Linux (AMD64)
* MediaWiki 1.29.1
* Nginx 1.13.5-1
* PHP-FPM 7.0.22-3
* PostgreSQL 10rc1

という、主流ではない構成なので注意。大体の場合はapache2 + php module + MySQLとか、nginx + php-fpm + mariaDBとかだと思う。

MediaWiki本体のupgrade手順


* sudo service php7.0-fpm stop
* sudo service nginx stop
* cd /path/to/wiki/
* git checkout <VERSION>
* cd maintenance/
* php update.php
* sudo service nginx start
* sudo service php7.0-fpm start

※MediaWikiをgitでinstallする場合は、必要に応じてPHPのpackage managerであるcomposerのupdateを行う → composer update

外部packageのupgrade


pg_upgradeclusterを使ったdatabaseの移行に際し、必要に応じてtextsearch_jaなど外部packageのupgradeも行う

* make USE_PGXS=1
* sudo make USE_PGXS=1 install
→ これで/usr/lib/postgresql/10/textsearch_ja.so他必要filesがinstallされる

sudo -u postgres psql -f /usr/share/postgresql/10/contrib/textsearch_ja.sql wikidb
が失敗する場合は、一度uninstallを試みる
sudo -u postgres psql -f /usr/share/postgresql/10/contrib/uninstall_textsearch_ja.sql
そしてもう一度改めてinstallを試みるとうまくいく場合がある

MediaWikiでerrorが出た時見るべきlog files


* MediaWikiのlogは、LocaleSettings.phpの$wgDebugLogFile = "/path/to/the/debuglogfile";で指定する。comment outするとlog fileを作らない
* /var/log/postgresql/
* /var/log/nginx/
* /var/log/syslog
* /var/log/php7.0-fpm.log

0 件のコメント:

コメントを投稿