前提・実現したいこと
最低でもMariaDBをSELECT出来る状態に戻したい。
(SELECTが出来れば最低限のバックアップが取れるので。)
背景
2018/02/05 23:00頃までは問題なく動作していました。
2018/02/06 17:00頃DBに接続しようとした所、接続できなかった為DBサーバが停止していた事に気づきました。
発生している問題・エラーメッセージ
systemctl status mariadb.service
txt
1 mariadb.service - MariaDB database server 2 Loaded: loaded (/usr/lib/systemd/system/mariadb.service; disabled; vendor preset: disabled) 3 Drop-In: /etc/systemd/system/mariadb.service.d 4 └─migrated-from-my.cnf-settings.conf 5 Active: activating (start) since Tue 2018-02-06 22:10:12 JST; 4s ago 6 Process: 26633 ExecStartPre=/bin/sh -c [ ! -e /usr/bin/galera_recovery ] && VAR= || VAR=`/usr/bin/galera_recovery`; [ $? -eq 0 ] && systemctl set-environment _WSREP_START_POSITION=$VAR || exit 1 (code=exited, status=0/SUCCESS) 7 Process: 26631 ExecStartPre=/bin/sh -c systemctl unset-environment _WSREP_START_POSITION (code=exited, status=0/SUCCESS) 8 Main PID: 26675 (mysqld) 9 CGroup: /system.slice/mariadb.service 10 ├─26675 /usr/sbin/mysqld 11 └─26693 addr2line -C -f -e /usr/sbin/mysqld 12 13Feb 06 22:10:13 150-95-x-x mysqld[26675]: /usr/sbin/mysqld(+0x840b11)[0x7f31ce0a2b11] 14Feb 06 22:10:13 150-95-x-x mysqld[26675]: handler/ha_innodb.cc:4432(innobase_init(void*))[0x7f31cdec7254] 15Feb 06 22:10:13 150-95-x-x mysqld[26675]: sql/handler.cc:512(ha_initialize_handlerton(st_plugin_int*))[0x7f31cdd4b6f0] 16Feb 06 22:10:13 150-95-x-x mysqld[26675]: sql/sql_plugin.cc:1694(plugin_init(int*, char**, int))[0x7f31cdd4cf22] 17Feb 06 22:10:13 150-95-x-x mysqld[26675]: sql/mysqld.cc:5253(init_server_components())[0x7f31cdca8ef8] 18Feb 06 22:10:13 150-95-x-x mysqld[26675]: sql/mysqld.cc:5845(mysqld_main(int, char**))[0x7f31cdcad1f9] 19Feb 06 22:10:13 150-95-x-x mysqld[26675]: /lib64/libc.so.6(__libc_start_main+0xf5)[0x7f31cb9a8b35] 20Feb 06 22:10:13 150-95-x-x mysqld[26675]: /usr/sbin/mysqld(+0x43fb9d)[0x7f31cdca1b9d] 21Feb 06 22:10:13 150-95-x-x mysqld[26675]: The manual page at http://dev.mysql.com/doc/mysql/en/crashing.html contains 22Feb 06 22:10:13 150-95-x-x mysqld[26675]: information that should help you find out what is causing the crash.
journalctl -xe
https://gist.github.com/anonymous/1cc897df5df12d1e0a1142715fbb47ef
(本文が長くなりすぎて投稿できなかったのでgistに投稿しました。)
試したこと
service mysql start
で起動を試みる
→ダメだった
service mysql restart
で起動を試みる
→ダメだった
/var/log/mysql
や/var/log/mariadb
の確認
→ログは保存されていなかった(ファイル自体が存在していなかった)
- 新規VPSサーバをレンタルし新規MariaDBをインストールし、そこに
/data/mysql
の全てのコピーし、chownでmysqlに設定した
→同様のエラーが発生
- innodb_force_recoveryの値を変えて起動テスト
vim /etc/my.conf.d/server.cnf
txt
1[mysqld] 2 innodb_force_recovery = 1 #1~6まで、起動するまで一つずつ上げていく
5で起動できたが、以下の通り非常に不安定な状態。
ローカルマシンからは以下のエラーの通り絶対に接続できない。
txt
1[root mysql]# mysql -u root -p 2Enter password: 3ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/data/mysql/mysql.sock' (111)
外部マシンからIPアドレスを指定して接続した場合はエラーになったり正常に接続できたりする。
txt
1[root mysql]# mysql -h 150.95.x.x -u root -p 2Enter password: 3ERROR 2013 (HY000): Lost connection to MySQL server at 'handshake: reading inital communication packet', system error: 104
補足情報(FW/ツールのバージョンなど)
- CentOS Linux release 7.3.1611 (Core)
- MariaDB-server-10.2.7-1.el7.centos.x86_64
- /etc/my.cnf.d/server.cnf
txt
1[mysqld] 2innodb_buffer_pool_size=6GB 3max_allowed_packet=256MB 4character-set-server = utf8 5wait_timeout = 30 6event_scheduler=ON 7datadir=/data/mysql 8socket=/data/mysql/mysql.sock

回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。