[英]mysqld_safe mysqld from pid file /var/run/mysqld/mysqld.pid prevent from server restart
我在 CentOS 上的 mySQL 服務器一直正常工作,但是,我今天突然無法重新啟動 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。
還有什么我可以嘗試的嗎??
就我而言,問題是 mysql 試圖在/var/run/mysqld
創建臨時文件,但該目錄不存在。 我通過手動創建目錄並為其設置權限解決了這個問題:
mkdir -p /var/run/mysqld
chown mysql:mysql /var/run/mysqld
實際上,Mairdb 在/var/run/mariadb
找到 pid 文件。
然后,你不需要任何其他操作只需設置pid-file=/var/run/mariadb/mysqld.pid
我用谷歌搜索並嘗試。
restorecon -r /var/lib/mysql
這個對我有用。 謝謝。
只需重新安裝 mariadb。 這將更正所有權限。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.