MediaWikiのアップグレード手順(1.27→1.37)

MediaWikiを1.37にアップグレードしたのでその手順を記載します。過去のアップグレード手順は、MediaWikiのアップグレード手順にあります。基本的には、公式サイトの手順を確認すれば十分かと思います。

構成

  • 移行前
    • OS : CentOS 8.5
    • Apache : 2.4
    • PHP : 7.2
    • MariaDB : 10.5
    • MediaWiki : 1.27
  • 移行後
    • OS : Rocky Linux 8.5
    • Apache : 2.4
    • PHP : 7.4
    • MariaDB : 10.7
    • MediaWiki : 1.37

MediaWikiのサポートPHPが、7.3以上に変更となったのと、CentOS 8がサポート切れになったので、環境を作成し直しました。dnfの向け先を変えれば、CentOSをそのまま使用できる方法もあるようですが、今回は採用しませんでした。

バックアップ(移行前環境)

MySQLをバックアップします。

mysqldump -u <MYSQL_USER> -p <DB_NAME> > <DUMP_NAME>

HTMLファイルをバックアップします。

cd /var/www
tar zcf <BACKUP_FILE_NAME> html

移行後環境でのミドルウェアインストール

ApacheとMariaDBのインストール手順を記載します。PHPは7.4をインストールします。

curl -sS https://downloads.mariadb.com/MariaDB/mariadb_repo_setup | sudo bash
sudo yum install MariaDB-server

yum install httpd httpd-tools httpd-devel
dnf module install php:7.4
dnf install php-mysqlnd php-gd php-pecl-zip php-intl

systemctl start mysqld
systemctl enable mysqld

systemctl start httpd
systemctl enable httpd

1.27では不要だったのですが、1.37では、php-intlがインストールされていないとアップグレードに失敗するので、dnfに追加しています。

リストア(移行後環境)・ファイル更新

MariaDBのデータをリストアします。

mysqladmin -u root password <PASSWORD>

mysql -u root -p

mysqlコマンドにて以下を実行します。

grant all privileges on *.* to <MYSQL_USER>@localhost identified by '<PASSWORD>' with grant option;

create database <DB_NAME> default character set utf8;

「/etc/httpd/conf/httpd.conf」に以下を追加します。

Alias /w/index.php /var/www/html/w/index.php
Alias /wiki /var/www/html/w/index.php
Alias /index.php /var/www/html/w/index.php

DBダンプからインポートします。

mysql <DB_NAME> < <DUMP_NAME> -u <MYSQL_USER> -p

MediaWikiをアップデートします。「/var/www/html」配下に移行前環境のバックアップファイルを展開している前提です。

wget https://releases.wikimedia.org/mediawiki/1.37/mediawiki-1.37.1.tar.gz
tar zxvf mediawiki-1.37.1.tar.gz -C /var/www/html/w/ --strip-components=1

「/var/www/html/LocalSettings.php」に「$wgServer」の項目を追加します。本設定が無いとアップグレードに失敗します。

$wgServer = "http://<HOST_NAME>";

MediaWikiのアップグレードを実施します。

cd /var/www/html/w/maintenance/
php update.php

本内容でアップグレードは完了です。

WordPressの導入手順(CentOS 7.9, Apache 2.4, PHP7.4, MariaDB 10.5)

10年前位に、WordPressの導入手順としてページを作成しましたが、最新のバージョンに置き換える際、手順が色々と変更になったので改めて記載します。

CentOSにWordpressをインストールする手順は、探せば結構あるのですが、CentOS7.9にPHP7.4をインストールする際、そのままの内容ではうまくいかなかったりしたので、備忘として残した次第です。

環境

  • CentOS 7.9
  • MariaDB 10.5.9
  • PHP 7.4
  • Apache 2.4.6
  • WordPress 5.7.1

今回、Apache、PHP、MariaDBは、yumでインストールします。

インストール

Apacheをインストールします。

yum install httpd

PHPをインストールします。CentOS7.9の標準リポジトリでは、5.4がインストールされてしまうので、Wordpressが対応しているバージョンである7.4をインストールするため、EPELを使用します。

yum install epel-release
rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-7.rpm
yum install --enablerepo=remi-php74 php
yum install --enablerepo=remi-php74 php-mysql
yum install --enablerepo=remi-php74 php-ldap
yum install --enablerepo=remi-php74 php-mbstring

MariaDBのインストールも公式のリポジトリを使用します。「/etc/yum.repos.d/MariaDB.repo」ファイルを生成し、以下の内容を記載します。

# MariaDB 10.5 CentOS repository list - created 2021-04-27 08:44 UTC
# http://downloads.mariadb.org/mariadb/repositories/
[mariadb]
name = MariaDB
baseurl = http://yum.mariadb.org/10.5/centos7-amd64
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
gpgcheck=0

編集後、MariaDBをインストールします。

yum install MariaDB-server MariaDB-client

設定

以下はDB設定の参考例です。「mysql」コマンド実行後、以下のようにDB・ユーザ作成を行います。パスワードは適宜指定してください。

create database wordpress default character set utf8;
GRANT ALL ON wordpress.* TO wordpress@localhost IDENTIFIED BY 'password';
FLUSH PRIVILEGES;

HTTP接続を許可するようにファイアウォール設定を変更します。

firewall-cmd --zone=public --add-service=http --permanent
firewall-cmd --reload

Apache起動後、ブラウザアクセスをすれば、Wordpressの初期インストールが出来るようになります。これ以降の作業は一般的な流れになるので、ここまでの記載とします。

変更履歴

  • 2021/05/10
    • ページ作成