MySQL启动故障解决
2017-04-18 21:22
417 查看
今天在启动mysql的时候,使用/etc/init.d/mysqld start 报错
一看这种是权限问题,但查看发现目录权限已经是对的
查看启动脚本,是启动的时候调用/usr/bin/mysqld_safe启动进程,两个都是shell脚本,改用调试模式执行
发现在目录判断的时候会失效
实际上这个目录是存在的,查看启动失败的日志
也是权限问题,但目录权限正确,所以可能的问题就出在启动mysql_safe脚本的时候导致某些问题的出现
换用以下方式启动
发现启动成功,这种情况相当于直接以root用户启动,
查看日志/var/log/audit/audit.log 发现发现时selinux限制了mysql启动时对数据目录的chown
因为这里我们用不上selinux直接关掉,临时关掉的方式如下:
永久关掉需要修改 /etc/selinux/config 再重启机器就好
也可以打开相关目录的权限
再启动便不会报错
附:
关于selinux与mysql相关的一些问题可查看 https://blogs.oracle.com/jsmyth/entry/selinux_and_mysql
Starting MySQL (Percona Server).mkdir: cannot create directory `/var/lib/mysql': File exists chown: cannot access `/var/lib/mysql': Permission denied chmod: cannot access `/var/lib/mysql': Permission denied rm: cannot remove `/var/lib/mysql/mysql.sock': Permission denied ERROR! The server quit without updating PID file (/var/run/mysqld/mysqld.pid).
一看这种是权限问题,但查看发现目录权限已经是对的
查看启动脚本,是启动的时候调用/usr/bin/mysqld_safe启动进程,两个都是shell脚本,改用调试模式执行
发现在目录判断的时候会失效
实际上这个目录是存在的,查看启动失败的日志
也是权限问题,但目录权限正确,所以可能的问题就出在启动mysql_safe脚本的时候导致某些问题的出现
换用以下方式启动
[shell#] sh /etc/init.d/mysqld start
发现启动成功,这种情况相当于直接以root用户启动,
查看日志/var/log/audit/audit.log 发现发现时selinux限制了mysql启动时对数据目录的chown
type=AVC msg=audit(1492495884.134:8627): avc: denied { getattr } for pid=11695 comm="chown" path="/var/lib/mysql" dev=dm-0 ino=392235 scontext=unconfined_u:system_r:mysqld_safe_t:s0 tcont ext=unconfined_u:object_r:var_lib_t:s0 tclass=lnk_file
因为这里我们用不上selinux直接关掉,临时关掉的方式如下:
[shell#] setenforce 0
永久关掉需要修改 /etc/selinux/config 再重启机器就好
SELINUX=disabled
也可以打开相关目录的权限
[shell#]chcon -R -t mysqld_db_t dir
再启动便不会报错
附:
关于selinux与mysql相关的一些问题可查看 https://blogs.oracle.com/jsmyth/entry/selinux_and_mysql
相关文章推荐
- mysql5.7 rpm包完整安装教程,解决网上更改数据文件就启动报错的故障。
- 一次MySQL无法启动故障的解决案例
- MYSQL启动报错故障及解决
- 非正常关机时,innodb故障导致mysql无法启动的解决方法
- 2007年第一贴,SQL7.0启动不了!回故会计机器故障解决过程!
- mysql启动错误1067的解决
- MySQL服务不能启动的解决方法
- MS SQL Server 无法启动故障解决
- 解决Windows Server 2003中的启动故障
- win2000 启动 蓝屏 stop 0x00000050 蓝屏故障解决(经典)
- mysql4中出现的本地计算机 无法启动mysql服务 错误1067解决办法
- 解决MySQL启动时万恶的的“1067”错误
- 解决MySQL进程无法启动的问题
- 系统启动故障及解决办法
- MySQL启动出错的解决方法
- 解决Default storage engine (InnoDB) is not available导致mysql无法启动的修改办法
- 使用故障恢复控制台解决XP系统无法启动的常见故障
- 【收藏】常见WinXP启动故障及解决方法
- 解决配置appfuse后,tomcat5.0无法启动appfuse的服务,报错,无法连接mysql
- 再议“网络未连接或启动”故障解决办法