2014-03-05 61 views
2

服務memcached的重啓率:
停止分佈式緩存:[失敗]
開始的memcached:[OK]memcached的死亡,但SUBSYS鎖定

服務memcached的地位得到:
memcached的死亡,但SUBSYS鎖定

LS在/ var/lock/subsys /裏面顯示一個名爲memcached的文件

ls在/ var/run /裏面沒有名爲memcached的pid文件
在這裏有另一個名爲memcached的文件夾,但該文件夾中沒有任何內容。

RM的/ var /鎖/ SUBSYS/memcached的擺脫了memcached的鎖定文件的

服務重新啓動memcached的yeilds:
停止分佈式緩存:[失敗]
開始的memcached:[OK]

服務memcached狀態產生:
memcached死了但子系統被鎖定

我做錯了什麼?

編輯:我想補充一點,我已經在發佈之前搜索了這個,我要麼已經在所述的帖子中列出的步驟或該帖子是幾歲。

1)SU(成爲根):

+0

我重新啓動linux以使其恢復到工作狀態,但知道再次得到此工作的更軟的方法會很高興 –

回答

1

通過在終端輸入以下命令解決了這個問題。

2)killall -9 memcached(殺死memcached)。

3)/etc/init.d/memcached start(手動啓動memcached)。

或者:3)服務memcached啓動。

1

檢查/ etc/SYSCONFIG/memcached的 確保OPTIONS = 「 - 1 127.0.0.1」 是正確的,從OPTION

0

刪除-l。

例如,而不是 OPTION="-l 2.2.2.2" 嘗試使用 OPTION="2.2.2.2"

這爲我工作。

0

要解決此問題,運行以下腳本根 RM /var/run/memcached/memcached.pid RM的/ var /鎖/ SUBSYS/memcached的 服務memcached的啓動

+0

爲什麼?它有什麼作用?有關它的任何參考? – dakab

1

是否有另一種工藝結合到TCP/11211?

也許你試着啓動memcached服務作爲一個非特權用戶,並將其與失敗:

$ service memcached start 
Starting memcached:          [ OK ] 
touch: cannot touch ‘/var/lock/subsys/memcached’: Permission denied 

之後,service memcached status虛報是memcached是沒有運行:

$ service memcached status 
memcached dead but subsys locked 

但它是,它是綁定到端口11211,爲了檢查這個你可以使用:

$ fuser -n tcp 11211 
11211/tcp:   4439 

或者:

$ pgrep -l memcached 
4439 memcached 

的Memcached將無法啓動,因爲它不能綁定到11211,如正在運行的實例已經綁定到它。不幸的是,有一些系統(我在看着你,CENTOS),它可能不會在/var/log/messages/var/log/syslog處留下任何有用的提示。這就是爲什麼許多以前對這個問題的答案,擺弄綁定地址看起來像他們解決了這個問題。

你如何解決它?

由於service stop memcached將無法​​正常工作,你必須殺死它:

$ pkill memcached 

還是這個(其中4439是您在上一步中找到的PID):

$ kill 4439 

然後,你可以做它正確,使用sudo:

$ sudo service memcached start 
Starting memcached:          [ OK ] 
$ service memcached status 
memcached (pid 6643) is running... 
0

刪除和重新安裝memcached是我工作的:

[a[email protected] super-confidential-dir]$ sudo yum remove memcached 
... 
[[email protected] super-confidential-dir]$ sudo yum install memcached 

上述命令後,啓動它,我得到了:

[[email protected] super-confidential-dir]$ sudo service memcached status 
memcached dead but pid file exists 

在這一點上我殺了它,並刪除pid文件:

[[email protected] super-confidential-dir]$ sudo killall -s 9 memcached 
... 
[[email protected] super-confidential-dir]$ sudo rm /var/run/memcached/memcached.pid 

而且終於開始它並檢查其狀態:

[[email protected] super-confidential-dir]$ sudo service memcached start 
... 
[[email protected] super-confidential-dir]$ sudo service memcached status 
memcached (pid 13804) is running... 

而且然後我又開心了。

祝你好運。