【轉】memcache 安裝

轉載鏈接:http://yidao620c.iteye.com/blog/1899814

 

1. 準備安裝文件

下載memcached與libevent的安裝文件

http://memcached.googlecode.com/files/memcached-1.4.15.tar.gz(memcached下載地址)

https://github.com/downloads/libevent/libevent/libevent-2.0.21-stable.tar.gz(libevent下載地址)

 

2. 具體安裝步驟

1.由於memcached依賴於libevent,因此需要安裝libevent。由於linux系統可能默認已經安裝libevent,執行命令:

rpm -qa|grep libevent

查看系統是否帶有該安裝軟件,如果有執行命令:

rpm -e libevent-1.4.13-4.el6.x86_64 --nodeps(由於系統自帶的版本舊,忽略依賴刪除)

 

3. 安裝libevent命令:

tar zxvf libevent-2.0.21-stable.tar.gz

cd libevent-2.0.21-stable

./configure --prefix=/usr/local/libevent

make

make install

至此libevent安裝完畢;

 

4. 安裝memcached命令:

tar zxvf memcached-1.4.15.tar.gz

cd memcached-memcached-1.4.15

./configure --prefix=/usr/local/memcached --with-libevent=/usr/local/libevent/

make

make install

至此memcached安裝完畢;

 

5. 可能存在的錯誤以及解決方案

如果出現客戶端連接不上memcached的情況,請將防火牆關閉或將防火牆中的memcached端口(11211端口)打開。

 

6. 啓動memcached

1.打開一個終端,輸入以下命令:

/usr/local/memcached/bin/memcached -d -m 256 -u root -p 11211 -c 1024 –P /tmp/memcached.pid

 

啓動參數說明:

-d 選項是啓動一個守護進程。

-u root 表示啓動memcached的用戶爲root。

-m 是分配給Memcache使用的內存數量,單位是MB,默認64MB。

-M return error on memory exhausted (rather than removing items)。

-u 是運行Memcache的用戶,如果當前爲root 的話,需要使用此參數指定用戶。

-p 是設置Memcache的TCP監聽的端口,最好是1024以上的端口。

-c 選項是最大運行的併發連接數,默認是1024。

-P 是設置保存Memcache的pid文件。

 

另外還有個更詳細的參數說明:

Param代碼  收藏代碼
  1. memcached 1.4.2  
  2. -p <num>      監聽的TCP端口(默認: 11211)  
  3. -U <num>      監聽的UDP端口(默認: 112110表示不監聽)  
  4. -s <file>     用於監聽的UNIX套接字路徑(禁用網絡支持)  
  5. -a <mask>     UNIX套接字訪問掩碼,八進制數字(默認:0700)  
  6. -l <ip_addr>  監聽的IP地址。(默認:INADDR_ANY,所有地址)  
  7. -d            作爲守護進程來運行。  
  8. -r            最大核心文件限制。  
  9. -u <username> 設定進程所屬用戶。(只有root用戶可以使用這個參數)  
  10. -m <num>      單個數據項的最大可用內存,以MB爲單位。(默認:64MB)  
  11. -M            內存用光時報錯。(不會刪除數據)  
  12. -c <num>      最大併發連接數。(默認:1024)  
  13. -k            鎖定所有內存頁。注意你可以鎖定的內存上限。  
  14.               試圖分配更多內存會失敗的,所以留意啓動守護進程時所用的用戶可分配的內存上限。  
  15.               (不是前面的 -u <username> 參數;在sh下,使用命令"ulimit -S -l NUM_KB"來設置。)  
  16. -v            提示信息(在事件循環中打印錯誤/警告信息。)  
  17. -vv           詳細信息(還打印客戶端命令/響應)  
  18. -vvv          超詳細信息(還打印內部狀態的變化)  
  19. -h            打印這個幫助信息並退出。  
  20. -i            打印memcached和libevent的許可。  
  21. -P <file>     保存進程ID到指定文件,只有在使用 -d 選項的時候纔有意義。  
  22. -f <factor>   塊大小增長因子。(默認:1.25)  
  23. -n <bytes>    分配給key+value+flags的最小空間(默認:48)  
  24. -L            嘗試使用大內存頁(如果可用的話)。提高內存頁尺寸可以減少"頁表緩衝(TLB)"丟失次數,提高運行效率。  
  25.               爲了從操作系統獲得大內存頁,memcached會把全部數據項分配到一個大區塊。  
  26. -D <char>     使用 <char> 作爲前綴和ID的分隔符。  
  27.               這個用於按前綴獲得狀態報告。默認是":"(冒號)。  
  28.               如果指定了這個參數,則狀態收集會自動開啓;如果沒指定,則需要用命令"stats detail on"來開啓。  
  29. -t <num>      使用的線程數(默認:4)  
  30. -R            每個連接可處理的最大請求數。  
  31. -C            禁用CAS。  
  32. -b            設置後臺日誌隊列的長度(默認:1024)  
  33. -B            綁定協議 - 可能值:ascii,binary,auto(默認)  
  34. -I            重寫每個數據頁尺寸。調整數據項最大尺寸。  

也可以啓動多個守護進程,但是端口不能重複

查看memcached啓動命令

ps aux|grep memcached

 

7. 停止memcached

打開一個終端,輸入以下命令:

ps -ef | grep memcached或者上面的ps命令也行,第二個字段爲PID,比如10068

 輸入一下命令終止memcached服務

kill -9 10068

 

8.防火牆開放端口

vi /etc/sysconfig/iptables

添加-A INPUT -m state --state NEW -m tcp -p tcp --dport 11211 -j ACCEPT

service iptables restart

 

發佈了89 篇原創文章 · 獲贊 1 · 訪問量 1萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章