VPSのCentOS7のデータベース「MariaDB」を最新バージョンの「10.6.3」GA(General Availavility)版が2021.7.6リリースされたのでアップデート
10.3.30 ⇒ 10.6.3
◆リポジトリ設定
MariaDBの公式サイトのブログ記事「CentOS 7 に MariaDB Community Server 最新版をインストール」を参考にリポジトリ設定スクリプトを実行
・リポジトリ設定スクリプトの実行
# curl -sS https://downloads.mariadb.com/MariaDB/mariadb_repo_setup | bash
・リポジトリ設定ファイルの確認
# cat /etc/yum.repos.d/mariadb.repo [mariadb-main] name = MariaDB Server baseurl = https://dlm.mariadb.com/repo/mariadb-server/10.6/yum/rhel/7/x86_64 gpgkey = file:///etc/pki/rpm-gpg/MariaDB-Server-GPG-KEY gpgcheck = 1 enabled = 1 [mariadb-maxscale] # To use the latest stable release of MaxScale, use "latest" as the version # To use the latest beta (or stable if no current beta) release of MaxScale, use "beta" as the version name = MariaDB MaxScale baseurl = https://dlm.mariadb.com/repo/maxscale/latest/yum/rhel/7/x86_64 gpgkey = file:///etc/pki/rpm-gpg/MariaDB-MaxScale-GPG-KEY gpgcheck = 1 enabled = 1 [mariadb-tools] name = MariaDB Tools baseurl = https://downloads.mariadb.com/Tools/rhel/7/x86_64 gpgkey = file:///etc/pki/rpm-gpg/MariaDB-Enterprise-GPG-KEY gpgcheck = 1 enabled = 1
◆削除
・サービスの停止
# systemctl stop mariadb
・現バージョンのMariaDB-serverの削除
# yum remove MariaDB-server.x86_64 読み込んだプラグイン:langpacks, versionlock 依存性の解決をしています --> トランザクションの確認を実行しています。 ---> パッケージ MariaDB-server.x86_64 0:10.3.30-1.el7.centos を 削除 --> 依存性解決を終了しました。 依存性を解決しました ============================================================================================================================= Package アーキテクチャー バージョン リポジトリー 容量 ============================================================================================================================= 削除中: MariaDB-server x86_64 10.3.30-1.el7.centos @mariadb 121 M トランザクションの要約 ============================================================================================================================= 削除 1 パッケージ インストール容量: 121 M 上記の処理を行います。よろしいでしょうか? [y/N]y Downloading packages: Running transaction check Running transaction test Transaction test succeeded Running transaction 削除中 : MariaDB-server-10.3.30-1.el7.centos.x86_64 1/1 警告: /etc/my.cnf.d/server.cnf は /etc/my.cnf.d/server.cnf.rpmsave として保存されました。 検証中 : MariaDB-server-10.3.30-1.el7.centos.x86_64 1/1 削除しました: MariaDB-server.x86_64 0:10.3.30-1.el7.centos 完了しました!
1行目:「MariaDB-server」を削除する
28行目:設定ファイル「server.cnf」が「server.cnf.rpmsave」としてバックアップ
◆インストール
・MariaDB-serverのインストール
# yum install MariaDB-server.x86_64 読み込んだプラグイン:langpacks, versionlock 依存性の解決をしています --> トランザクションの確認を実行しています。 ---> パッケージ MariaDB-server.x86_64 0:10.6.3-1.el7.centos を インストール ~ 中略 ~ インストール: MariaDB-server.x86_64 0:10.6.3-1.el7.centos 依存性関連をインストールしました: MariaDB-client.x86_64 MariaDB-common.x86_64 MariaDB-compat.x86_64 完了しました!
1行目:「MariaDB-server」をインストールする
注:パッケージ名を「mariadb-server」と小文字にすると、標準パッケージバージョンの「5.5」がインストールされる
13,14行目:依存性関連パッケージもインストールされる
私は併せて、「yum update」を実行しました。
・インストールパッケージの確認
# yum list installed | grep MariaDB MariaDB-client.x86_64 10.6.3-1.el7.centos @mariadb-main MariaDB-common.x86_64 10.6.3-1.el7.centos @mariadb-main MariaDB-compat.x86_64 10.6.3-1.el7.centos @mariadb-main MariaDB-devel.x86_64 10.6.3-1.el7.centos @mariadb-main MariaDB-server.x86_64 10.6.3-1.el7.centos @mariadb-main
5行目:「yum update」することで、「MariaDB-devel」がアップデートされた
◆文字コード設定
# vi /etc/my.cnf.d/server.cnf [mariadb] character-set-server=utf8
1行目:設定ファイル「server.cnf」を編集
4行目:「mariadb」セクションに文字コード設定を追加
◆起動
・自動起動設定
# systemctl enable mariadb Created symlink from /etc/systemd/system/multi-user.target.wants/mariadb.service to /usr/lib/systemd/system/mariadb.service.
・サービス起動
# systemctl start mariadb
・状態確認
# systemctl status mysql ● mariadb.service - MariaDB 10.6.3 database server Loaded: loaded (/usr/lib/systemd/system/mariadb.service; enabled; vendor preset: disabled) Drop-In: /etc/systemd/system/mariadb.service.d mqmigrated-from-my.cnf-settings.conf Active: active (running) since 日 2021-07-11 17:46:14 JST; 4min 49s ago Docs: man:mariadbd(8) https://mariadb.com/kb/en/library/systemd/ Process: 17806 ExecStartPost=/bin/sh -c systemctl unset-environment _WSREP_START_POSITION (code=exited, status=0/SUCCESS) Process: 17709 ExecStartPre=/bin/sh -c [ ! -e /usr/bin/galera_recovery ] && VAR= || VAR=`cd /usr/bin/..; /usr/bin/galera_recovery`; [ $? -eq 0 ] && systemctl set-environment _WSREP_START_POSITION=$VAR || exit 1 (code=exited, status=0/SUCCESS) Process: 17706 ExecStartPre=/bin/sh -c systemctl unset-environment _WSREP_START_POSITION (code=exited, status=0/SUCCESS) Main PID: 17723 (mariadbd) Status: "Taking your SQL requests now..." CGroup: /system.slice/mariadb.service mq17723 /usr/sbin/mariadbd ~ 略 ~
・テーブルのチェックとアップグレード
# mysql_upgrade -u root -p Enter password:
1行目:「mysql_upgrade」で、現バージョンとの互換性をチェックし、システムテーブルをアップグレードする
・サービスの再起動
# systemctl restart mariadb
1行目:システムテーブルのアップグレード後に再起動
・mysqlコマンドで接続確認
# mysql -u root -p Enter password: Welcome to the MariaDB monitor. Commands end with ; or \g. Your MariaDB connection id is 5 Server version: 10.6.3-MariaDB MariaDB Server Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. MariaDB [(none)]> quit Bye
1行目:「root」で接続
2行目:パスワードの入力
5行目:バージョンが確認できる
11行目:「quit」で切断
今回は、データベースのバックアップを省略しましたが、障害や不具合発生に備えて実施することをお勧めします。