AmazonLinux2023にWordPressを移行

こんにちは、かっぺいです。
WordPressのブラウザからのバージョンアップができなくなったので、手動更新のついでにAmazonLinux2からAmazonLinux2023へ移行しました。
一緒に、ローカルのMariaDBからAuroraServerlessV2へ移行を行いました。

EC2インスタンスの作成

適当なインスタンスタイプで、AmamzonLinux2023のイメージで作成し、起動後に必要なパッケージをインストールします。

# yum install php

デフォルトで、PHP8.2がインストールされます。
httpdも依存関係になっているようで、一緒にインストールされました。

php.iniとhttpd.confを適度な設定に変更しておきましょう。
mysql関連を追加インストールして、サービスの起動を行います。

# yum install php8.2-mysql
# systemctl start php-fpm
# systemctl enable php-fpm
# systemctl start httpd
# systemctl enable httpd

AuroraServerless v2インスタンスの作成

AmazonRDSから、データベースの作成を選び、AuroraをServerlessで作成します。

Serverlessでは、ACUでスケーリング幅を指定します。
文字コード設定などは、パラメータグループとオプショングループで設定します。

移行の準備

AmazonLinux2の環境から、移行するために必要なバックアップを取得します

WordPressのバックアップ

旧環境から、DBのバックアップとhttpフォルダのバックアップを取得します。

# mysqldump -u root -p wordpress > /tmp/wpdb.dmp
# cd /var/www/
# tar zcvf /tmp/wphtml.tgz html

WordPressの移行

旧環境のhtmlをまずはリストアします。

# cd /var/www/
# tar zxvf /tmp/wphtml.tgz

mysqlコマンドをインストールして、DBのリストアします。

# yum install mariadb105
# cat /tmp/wp-db.dmp > mysql -u admin -p -h wp-xx.cluster-ooooooooo.ap-northeast-1.rds.amazonaws.com wordpress

WordPressの手動アップデート

最新バージョンのtar.gzファイルをダウンロードして、既存のものにリストアします

# wget https://ja.wordpress.org/latest-ja.tar.gz
# tar zxvf latest-ja.tar.gz

既存のフォルダから、wp-includeとwp-adminを削除して、最新のフォルダと入れ替えます

# cd /var/www/html/
# rm -rf wp-admin wp-includes
# mv /tmp/wordpress/wp-admin .
# mv /tmp/wordpress/wp-includes .

wp-contentフォルダとルートフォルダの内容全てを上書きコピーします

# cd /tmp/wordpress
# cp -prf wp-content /var/www/html/
# cp -pf * /var/www/html/

DB接続設定をAuroraへ変更

wb-config.phpのDB接続情報をAuroraの内容に変更します

最後に

公式手順では、プラグインを停止してからアップデートファイルを上書きコピーと書いてありましたので、安全な手順としてはプラグインを停止して、更新後にプラグインの有効化をする必要がありそうです。