右往左往して復旧に6時間程度かかった。もうこりごりなので内容をざっくりまとめる。
KUSANAGI(CentOS7)での手順。
sudo su
vi /etc/my.cnf.d/server.cnf
i
[mysqld]
innodb_force_recovery = 3
[esc] キーで vi 終了。
systemctl start mysqld
mysqldump -u root -p -x --all-databases > alldatabase.dump
systemctl stop mysqld
rm -rf /var/lib/mysql/*
yum remove -y MariaDB-devel MariaDB-client MariaDB-server
yum install -y MariaDB-devel MariaDB-client MariaDB-server
systemctl start mysqld
mysql -u root
UPDATE mysql.user SET password=password('password') WHERE user = 'root';
CREATE USER 'username'@'localhost' IDENTIFIED BY 'password';
GRANT ALL ON db_name.* TO 'username'@'localhost';
flush privileges;
exit;
mysql -u root -p < alldatabase.dump
innodb_force_recovery
を 3 以下に設定しておくと InnoDB が壊れていても Read only でとりあえず起動出来るようになるっぽい/var/lib/mysql/
配下を消しておく。(必要であれば設定ファイルは逃しておく)数日前に単純に MariaDB が落ちたことがあり、何かしら高負荷がかかっている可能性があるが、アクセス数も多くなく、環境である仮想ハードウェアの負荷も目立った様子は無い。できれば関係ログを追って探りたいところだが不明。
KUSANAGI で MySQL が頻繁に落ちる際の対処 - Crieit
Crieitは誰でも投稿できるサービスです。 是非記事の投稿をお願いします。どんな軽い内容でも投稿できます。
また、「こんな記事が読みたいけど見つからない!」という方は是非記事投稿リクエストボードへ!
こじんまりと作業ログやメモ、進捗を書き残しておきたい方はボード機能をご利用ください。
ボードとは?
コメント