mysqld_safe 来自 pid 文件的 mysqld /var/run/mysqld/mysqld.pid 阻止服务器重启
mysqld_safe mysqld from pid file /var/run/mysqld/mysqld.pid prevent from server restart
我的 mySQL 服务器在 CentOS 上运行正常,
但是,我今天突然无法重启 mysqld。
1)
# /etc/rc.d/init.d/mysqld 开始
显示[失败]
2) 查看日志
tail /var/log/mysqld.log
.
.
mysqld_safe mysqld from pid file /var/run/mysqld/mysqld.pid ended
3) 手动放
/usr/bin/mysqld_safe
151129 15:54:36 mysqld_safe Logging to '/var/log/mysqld.log'.
151129 15:54:37 mysqld_safe Starting mysqld daemon with databases from /var/lib/mysql
151129 15:54:37 mysqld_safe mysqld from pid file /var/run/mysqld/mysqld.pid ended
4) 检查配置
less /etc/my.cnf
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
# Recommended in standard MySQL setup
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
[mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid
5)查看mysql目录,每艘船都属于mysql。但是我不能罚款mysql.sock(这是在my.cnf中设置的)
cd /var/lib/mysql
ls -la
drwxr-xr-x 5 mysql mysql 4096 11月 29 15:54 2015 .
drwxr-xr-x 21 root root 4096 6月 2 06:09 2015 ..
-rw-rw---- 1 mysql mysql 56 6月 2 05:42 2015 auto.cnf
drwx------ 2 mysql mysql 4096 11月 24 11:12 2015 myapp
-rw-rw---- 1 mysql mysql 50331648 11月 29 12:30 2015 ib_logfile0
-rw-rw---- 1 mysql mysql 50331648 11月 29 12:30 2015 ib_logfile1
-rw-rw---- 1 mysql mysql 79691776 11月 29 12:30 2015 ibdata1
drwx------ 2 mysql mysql 4096 6月 2 05:42 2015 mysql
drwx------ 2 mysql mysql 4096 6月 2 05:42 2015 performance_schema
6) 发现/var/lib/mysql目录下没有mysql.sock,于是试了一下
touch /var/lib/mysql/mysql.sock
尝试重启
/etc/rc.d/init.d/mysqld start
不知何故 mysql.sock 被删除了。
还有什么我可以尝试的吗??
我用谷歌搜索并尝试。
restorecon -r /var/lib/mysql
对我有用。
谢谢
只需重新安装 mariadb。这将更正所有权限。
实际上,Mairadb 在 /var/run/mariadb
.
中找到 pid 文件
然后,你不需要任何其他操作只需设置 pid-file=/var/run/mariadb/mysqld.pid
在我的例子中,问题是 mysql 试图在 /var/run/mysqld
中创建临时文件,但该目录不存在。我通过手动创建目录并为其设置权限解决了这个问题:
mkdir -p /var/run/mysqld
chown mysql:mysql /var/run/mysqld
我的 mySQL 服务器在 CentOS 上运行正常, 但是,我今天突然无法重启 mysqld。
1) # /etc/rc.d/init.d/mysqld 开始
显示[失败]
2) 查看日志
tail /var/log/mysqld.log
.
.
mysqld_safe mysqld from pid file /var/run/mysqld/mysqld.pid ended
3) 手动放
/usr/bin/mysqld_safe
151129 15:54:36 mysqld_safe Logging to '/var/log/mysqld.log'.
151129 15:54:37 mysqld_safe Starting mysqld daemon with databases from /var/lib/mysql
151129 15:54:37 mysqld_safe mysqld from pid file /var/run/mysqld/mysqld.pid ended
4) 检查配置
less /etc/my.cnf
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
# Recommended in standard MySQL setup
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
[mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid
5)查看mysql目录,每艘船都属于mysql。但是我不能罚款mysql.sock(这是在my.cnf中设置的)
cd /var/lib/mysql
ls -la
drwxr-xr-x 5 mysql mysql 4096 11月 29 15:54 2015 .
drwxr-xr-x 21 root root 4096 6月 2 06:09 2015 ..
-rw-rw---- 1 mysql mysql 56 6月 2 05:42 2015 auto.cnf
drwx------ 2 mysql mysql 4096 11月 24 11:12 2015 myapp
-rw-rw---- 1 mysql mysql 50331648 11月 29 12:30 2015 ib_logfile0
-rw-rw---- 1 mysql mysql 50331648 11月 29 12:30 2015 ib_logfile1
-rw-rw---- 1 mysql mysql 79691776 11月 29 12:30 2015 ibdata1
drwx------ 2 mysql mysql 4096 6月 2 05:42 2015 mysql
drwx------ 2 mysql mysql 4096 6月 2 05:42 2015 performance_schema
6) 发现/var/lib/mysql目录下没有mysql.sock,于是试了一下
touch /var/lib/mysql/mysql.sock
尝试重启
/etc/rc.d/init.d/mysqld start
不知何故 mysql.sock 被删除了。
还有什么我可以尝试的吗??
我用谷歌搜索并尝试。
restorecon -r /var/lib/mysql
对我有用。 谢谢
只需重新安装 mariadb。这将更正所有权限。
实际上,Mairadb 在 /var/run/mariadb
.
中找到 pid 文件
然后,你不需要任何其他操作只需设置 pid-file=/var/run/mariadb/mysqld.pid
在我的例子中,问题是 mysql 试图在 /var/run/mysqld
中创建临时文件,但该目录不存在。我通过手动创建目录并为其设置权限解决了这个问题:
mkdir -p /var/run/mysqld
chown mysql:mysql /var/run/mysqld