下載並安裝Memcache伺服器端
伺服器端主要是安裝memcache伺服器端.
下載:http://www.danga.com/memcached/dist/memcached-1.2.2.tar.gz
另外,Memcache用到了libevent這個庫用於Socket的處理,所以還需要安裝libevent,libevent的最新版本是libevent-1.3。(如果你的系統已經安裝了libevent,可以不用安裝)
官網:http://www.monkey.org/~provos/libevent/
下載:http://www.monkey.org/~provos/libevent-1.3.tar.gz
用wget指令直接下載這兩個東西.下載回源檔案後。
1.先安裝libevent。這個東西在配置時需要指定一個安裝路徑,即./configure –prefix=/usr;然後make;然後make install;
2.再安裝memcached,只是需要在配置時需要指定libevent的安裝路徑即./configure –with-libevent=/usr;然後make;然後make install;
這樣就完成了Linux下Memcache伺服器端的安裝。詳細的方法如下:
1.分別把memcached和libevent下載回來,放到 /tmp 目錄下:
# cd /tmp
# wget http://www.danga.com/memcached/dist/memcached-1.2.0.tar.gz
# wget http://www.monkey.org/~provos/libevent-1.2.tar.gz
2.先安裝libevent:
# tar zxvf libevent-1.2.tar.gz
# cd libevent-1.2
# ./configure –prefix=/usr
# make
# make install
3.測試libevent是否安裝成功:
# ls -al /usr/lib | grep libevent
lrwxrwxrwx 1 root root 21 11?? 12 17:38 libevent-1.2.so.1 -> libevent-1.2.so.1.0.3
-rwxr-xr-x 1 root root 263546 11?? 12 17:38 libevent-1.2.so.1.0.3
-rw-r–r– 1 root root 454156 11?? 12 17:38 libevent.a
-rwxr-xr-x 1 root root 811 11?? 12 17:38 libevent.la
lrwxrwxrwx 1 root root 21 11?? 12 17:38 libevent.so -> libevent-1.2.so.1.0.3
還不錯,都安裝上了。
4.安裝memcached,同時需要安裝中指定libevent的安裝位置:
# cd /tmp
# tar zxvf memcached-1.2.0.tar.gz
# cd memcached-1.2.0
# ./configure –with-libevent=/usr
# make
# make install
如果中間出現報錯,請仔細檢查錯誤資訊,按照錯誤資訊來配置或者增加相應的庫或者路徑。
安裝完成後會把memcached放到 /usr/local/bin/memcached ,
5.測試是否成功安裝memcached:
# ls -al /usr/local/bin/mem*
-rwxr-xr-x 1 root root 137986 11?? 12 17:39 /usr/local/bin/memcached
-rwxr-xr-x 1 root root 140179 11?? 12 17:39 /usr/local/bin/memcached-debug
安裝完成後的memcached在 /usr/local/bin/memcached
這時運行memcached -m 500 -p 11333, 有可能會出現:
memcached: error while loading shared libraries: libevent-1.2.so.1: cannot open shared object file: No such file or directory
這說明沒有找到檔案:libevent-1.2.so.1
解決辦法如下:
第一步. 查看下lib路徑:
which memcached 得到/usr/local/memcached/bin/memcached
LD_DEBUG=libs /usr/local/memcached/bin/memcached -v
第二步. 將libevent-1.2.so.1拷貝到任何一個列出的lib下。或者軟連結到列出的lib下(很多情況下是/usr/lib下有該檔案,需要把該檔案拷貝到/usr/lib64/下)
memcached -d -m 10 -u root -l 192.168.40.4 -p 12000 -c 256 -P /tmp/memcached.pid
參數說明:
-d選項是啟動一個守護進程
-m是分配給Memcache使用的記憶體數量,單位是MB,我這裡是10MB
-u是運行Memcache的使用者,我這裡是root
-l是監聽的伺服器IP地址
-p是設定Memcache監聽的連接埠,最好是1024以上的連接埠
-c選項是最大啟動並執行並發串連數,預設是1024,按照你伺服器的負載量來設定
-P是設定儲存Memcache的pid檔案