MariaDB(WordPress用)の引っ越し

やりたいこと

mysqldumpを利用してバックアップ・リカバリ(リストア)をすることで、
WordPress用のデータを移動させる。

環境

ディストリについて

$ cat /etc/redhat-release


の結果は次の通り。

Rocky Linux release 9.1 (Blue Onyx)

引っ越し前の環境

ソフトウェアバージョン
WordPress5.1.15
WordPress DB Version44719
MariaDB5.5.52-1.el7

引っ越し後の環境

ソフトウェアバージョン
WordPress6.2
MariaDB10.5.16-2.el9_0

手順

バックアップ

バックアップに利用したコマンドは次の通り。

$ mysqldump -u ユーザ名 -p -A > 保存場所/backup

MariaDBのインストールと初期設定

次のコマンドでインストール。

# dnf install mariadb mariadb-server

mariadb-serverを起動。

# systemctl start mariadb

初期設定を行うために次のコマンドを実行すると、

# mysql_secure_installation


次のように聞かれる。

Enter current password for root (enter for none):


MariaDBのrootのパスワードはまだ設定していないので、そのままEnterを押す。

You already have your root account protected, so you can safely answer 'n'. 
Switch to unix_socket authentication [Y/n]


と聞かれる。nを押してEnterを押す。

You already have your root account protected, so you can safely answer 'n'. 
Change the root password?


と聞かれる。Yを押してEnterを押すと設定するパスワードを聞かれるので入力する。

Remove anonymous users?


と聞かれる。Yを押してEnterを押す。

Disallow root login remotely?


と聞かれる。Yを押してEnterを押す。

Remove test database and access to it?


と聞かれる。Yを押してEnterを押す。

Reload privilege tables now?


と聞かれる。Yを押してEnterを押す。

WordPressのための設定をMariaDBに行う

MariaDBにログインする。

$ mysql -u root -p

データベースの一覧表示。

> show databases;

DBユーザの一覧表示。

> SELECT user, host FROM mysql.user;

WordPress用DBユーザを作成する。

> CREATE USER ユーザ名@localhost IDENTIFIED BY 'パスワード';

WordPress用DBユーザの権限を表示する。

> SHOW GRANTS FOR ユーザ名@localhost;

下記のような形で、結果が表示される。

+---------------------------------------------------------------------------------------------------------------+ 
| Grants for ユーザ名@localhost                                                                                   | 
+---------------------------------------------------------------------------------------------------------------+ 
| GRANT USAGE ON *.* TO `ユーザ名`@`localhost` IDENTIFIED BY PASSWORD '*F7DC3CA42B9C9E4554D96B433C9FA5625A65F5BF' | 
+---------------------------------------------------------------------------------------------------------------+

WordPress用のDB作成。

> CREATE DATABASE DB名;

作成したWordPress用DBユーザに権限を与える。

> GRANT ALL ON DB名.* TO ユーザ名@localhost;

再度作成したWordPress用DBユーザの権限を表示する。

> SHOW GRANTS FOR ユーザ名@localhost;

下記のような形で結果が表示される。

+---------------------------------------------------------------------------------------------------------------+ 
| Grants for ユーザ名@localhost                                                                                   | 
+---------------------------------------------------------------------------------------------------------------+ 
| GRANT USAGE ON *.* TO `ユーザ名`@`localhost` IDENTIFIED BY PASSWORD '*F7DC3CA42B9C9E4554D96B433C9FA5625A65F5BF' | 
| GRANT ALL PRIVILEGES ON `DB名`.* TO `ユーザ名`@`localhost`                                             | 
+---------------------------------------------------------------------------------------------------------------+

与えられた権限が表示されていることを確認する。

リカバリ・リストア

次のコマンドでバックアップしていたデータをリストアする。

$ mysql -h localhost -u ユーザ名 -pパスワード < バックアップファイル名

リストアされたデータの一部を確認するために、MariaDBへログイン。

$ mysql -u ユーザ名 -p

指定したデータベースへ接続。

> USE データベース名;

テーブル一覧を確認。

> SHOW TABLES;

指定したテーブルのデータを確認。

> SELECT * FROM wp_users;

特別問題無ければこれでDBの引っ越しはとりあえず完了。
後はwp-content/uploadsフォルダ以下をコピーすれば画像も問題無く表示された。 DBのチューニングもした方が良いのだろうけど、とりあえずしばらくは大丈夫と判断する。

コメント

タイトルとURLをコピーしました