3月に入って、ブログが2度運用不能になってしまった。
PHPのバージョンUP後、NEXTCLOUDインストール後など、人的作業が入った場合にトラブってる。
何もしないのが一番いい!主義なのだが、
半面、なんかやってみたい、トラブル解決大好き!
という、矛盾と葛藤があるのだが、折角なので、こりもせず、データベースもバージョンUPしようと思い立った。これ、失敗するとまたブログがSTOPしてしまうのだが?!
何が最新かわからないが、NETで見よう見まねで、やってみよう!
■ MariaDBをダウンロード
$ curl -sS https://downloads.mariadb.com/MariaDB/mariadb_repo_setup | sudo bash
$ cat /etc/yum.repos.d/mariadb.repo
[mariadb-main]
name = MariaDB Server
baseurl = https://downloads.mariadb.com/MariaDB/mariadb-10.3/yum/rhel/$releasever/$basearch
gpgkey = file:///etc/pki/rpm-gpg/MariaDB-Server-GPG-KEY
gpgcheck = 1
enabled = 1
以下省略
■稼働中のMariaDBを停止して、アップデート
$ sudo systemctl stop mariadb
$ sudo yum update mariadb-server
~色々処理が始まる
■サーバーの開始とバージョン確認
$ sudo systemctl start mariadb
$ mysql --version
mysql Ver 15.1 Distrib 10.3.13-MariaDB, for Linux (x86_64) using readline 5.1
$
とりあえずうまくいったようだが、念のため状態を確認
$sudo systemctl status mariadb
3月 19 09:34:37 XXXX.don-don.0am.jp mysqld[23451]: 2019-03-19 9:34:37 0 [ERROR] Missing system table mysql.roles_mapping; please run mysql_upgrade to create it
3月 19 09:34:37 XXXX.don-don.0am.jp mysqld[23451]: 2019-03-19 9:34:37 0 [ERROR] Incorrect definition of table mysql.event: expected column 'sql_mode' at position 1…ATE','POST
3月 19 09:34:37 XXXX.don-don.0am.jp mysqld[23451]: 2019-03-19 9:34:37 0 [ERROR] mysqld: Event Scheduler: An error occurred when initializing system tables. Disabli…Scheduler.
3月 19 09:34:37 XXXX.don-don.0am.jp mysqld[23451]: 2019-03-19 9:34:37 6 [Warning] Failed to load slave replication state from table mysql.gtid_slave_pos: 1146: Tab…sn't exist
~中略~
3月 19 09:34:37 XXXX.don-don.0am.jp systemd[1]: Started MariaDB 10.3.13 database server.
3月 19 09:39:09 XXXX.don-don.0am.jp mysqld[23451]: 2019-03-19 9:39:09 8 [ERROR] InnoDB: Tablemysql
.innodb_table_stats
not found.
Hint: Some lines were ellipsized, use -l to show in full.
$
なんか、ERRORが出ている。
「system table」「Table mysql
.innodb_table_stats
not found.」「
run mysql_upgrade 」などのワードが頭に引っ掛かる。
mysql_upgradeで調べてみると
テーブルのチェックや修復、システムテーブルのUPGRADEを行うそうだ。
バージョンが 5.5.60 ⇒ 10.3.13にアップグレードする際のデータベーステーブルの、矛盾点や表記?などを調整してくれるものと自分なりに理解した。
$ sudo mysql_upgrade -u root -p
Enter password:(SQL用rootのパスワードを入力)
~色々処理が始まる
$ sudo systemctl restart mariadb
$ sudo systemctl status mariadb
● mariadb.service - MariaDB 10.3.13 database server
Loaded: loaded (/usr/lib/systemd/system/mariadb.service; disabled; vendor preset: disabled)
Drop-In: /etc/systemd/system/mariadb.service.d
mqmigrated-from-my.cnf-settings.conf
Active: active (running) since 火 2019-03-19 10:15:35 JST; 15s ago
~中略~
3月 19 10:15:35 s2018.don-don.0am.jp mysqld[24167]: 2019-03-19 10:15:35 0 [Note] InnoDB: Buffer pool(s) load completed at 190319 10:15:35
3月 19 10:15:35 s2018.don-don.0am.jp systemd[1]: Started MariaDB 10.3.13 database server
$
ERRORもなくうまくいったようだ。
しかし新たな問題が?
Loaded: loaded (/usr/lib/systemd/system/mariadb.service; disabled; vendor preset: disabled)でdisabledしてるが、問題ないのか?
その後、mariadb.log.rpmsave や my.cnfをいじってるうちに、サーバー機自信が起動できなくなったり、apacheが動かなくなったり、不安定になってしまった。
仕方なく、元のままに設定を戻したら、取りあえず、ブログは復活した。
おっさん、プロではないので、復旧に約4時間もかかってしまった。
やはり、触らぬ神にたたりなし!なのか?
コメント