功能
归档
495
2018 年 02 月 01 日
记一次博客MySQL突发事件

实验平台:CentOS 7.4



一、博客瘫痪


下午时分像往常一样打开自己博客,突然发现不能正常跳转到自己的博客主页。


解决思路:

1.首先想的是配置文件是否被人修改了;

打开配置文章一看,发现的确有两个配置文件,多了一个初始配置文件;立刻删除后重新刷新博客,还是异常。

2.发现不是代码的问题,转念一想,进入不了主页;我的博客数据全部是存放在数据库里的。

进入数据库一看,发现了问题。

二、寻找问题


问题定位:

$ mysql -u root -p
mysql> show databases;

+--------------------+
| Database           |
+--------------------+
| ***                |
| blog               |
| ****               |
| ****               |
+--------------------+
mysql> use blog;
Database changed
mysql> show tables;
ERROR 1018 (HY000): Can't read dir of './blog/' (errno: 13 - Permission denied)

发现的确进入表有问题,显示权限拒绝;
查看数据库日志:

2018-02-01 13:30:01 2161 [ERROR] /www/mysql/bin/mysqld: Can't find file: './mysql/user.frm' (errno: 13 - Permission denied)
2018-02-01 13:30:01 2161 [ERROR] Fatal error: Can't open and lock privilege tables: Can't find file: './mysql/user.frm' (errno: 13 - Permission denied)
2018-02-01 13:30:01 2161 [ERROR] /www/mysql/bin/mysqld: Can't find file: './mysql/tables_priv.frm' (errno: 13 - Permission denied)
2018-02-01 13:30:01 2161 [ERROR] Fatal error: Can't open and lock privilege tables: Can't find file: './mysql/user.frm' (errno: 13 - Permission denied)
2018-02-01 13:30:01 2161 [ERROR] /www/mysql/bin/mysqld: Can't find file: './mysql/servers.frm' (errno: 13 - Permission denied)
2018-02-01 13:30:01 2161 [ERROR] Can't open and lock privilege tables: Can't find file: './mysql/user.frm' (errno: 13 - Permission denied)

也是报文件权限问题;

问题再生:

退出数据库后,发现数据库直接down掉了。

$ ps -ef | grep mysql

root      7182 32061  0 17:23 pts/2    00:00:00 grep --color=auto mysql

重启也失败

$ service mysqld restart
 ERROR! MySQL server PID file could not be found!
Starting MySQL./www/mysql/bin/mysqld_safe: line 138: /www/data/jarbo.err: Permission denied
/www/mysql/bin/mysqld_safe: line 138: /www/data/jarbo.err: Permission denied
/www/mysql/bin/mysqld_safe: line 183: /www/data/jarbo.err: Permission denied
/www/mysql/bin/mysqld_safe: line 138: /www/data/jarbo.err: Permission denied
 ERROR! The server quit without updating PID file (/www/data/jarbo.pid).

三、解决问题


通过上诉步骤的问题定位:

发现是文件目录权限不够。

chown -R mysql.mysql /www/data/

赋予权限后,问题解决;

再此有个问题,/www/data/目录一直是www权限,运行了这么久,怎么会突然出现了/www/data,mysql权限不够的问题。


Over~

zhifubao_pay                weixin_pay

本站的发展离不开您的资助,金额随意,感谢来赏!


转载原创文章请注明,转载自: 林里克斯 » 记一次博客MySQL突发事件
留言
Loading...

发表评论

电子邮件地址不会被公开。 必填项已用*标注