centos memcached安裝

1、安裝libevent

安裝memcached前需要先安裝libevent

wget http://sourceforge.net/projects/levent/files/libevent/libevent-2.0/libevent-2.0.22-stable.tar.gz

 tar zxvf libevent-2.0.22-stable.tar.gz 

 cd libevent-2.0.22-stable

   ./configure 

  make && make install

2、安裝memcached

 wget http://www.danga.com/memcached/dist/memcached-1.2.2.tar.gz

 tar zxvf memcached-1.2.7.tar.gz

 cd memcached-1.2.7

 ./configure

 make && make install

注意:make的時候報錯

memcached.c: 在函數‘add_iov’中:

memcached.c:696:30: 錯誤: ‘IOV_MAX’未聲明(在此函數內第一次使用)

memcached.c:696:30: 附註: 每個未聲明的標識符在其出現的函數內只報告一次

make[2]: *** [memcached-memcached.o] 錯誤 1

需要修改 memcached.c 文件:

複製代碼

/* FreeBSD 4.x doesn't have IOV_MAX exposed. */

#ifndef IOV_MAX

#if defined(__FreeBSD__) || defined(__APPLE__)

# define IOV_MAX 1024

#endif

#endif


改成:


/* FreeBSD 4.x doesn't have IOV_MAX exposed. */

#ifndef IOV_MAX

# define IOV_MAX 1024

#endif

複製代碼

再make&&make install,編譯之後退出root用戶。

安裝完成後memcached的默認目錄爲/usr/local/bin/memcached

3、啓動memcached

/usr/local/bin/memcached -m 32m -p 11211 -d -u root -P /var/run/memcached.pid -c 256

啓動時報如下錯誤的解決方法

/usr/local/bin/memcached: error while loading shared libraries: libevent-2.0.22.so.1: cannot open shared object file: No such file or directory

找不到libevent-2.0.22.so的解決方法

echo "/usr/local/lib" >> /etc/ld.so.conf

ldconfig

啓動參數說明:
-d 選項是啓動一個守護進程。
-u root 表示啓動memcached的用戶爲root。
-m 是分配給Memcache使用的內存數量,單位是MB,默認64MB。
-M return error on memory exhausted (rather than removing items)。
-u 是運行Memcache的用戶,如果當前爲root 的話,需要使用此參數指定用戶。
-l 是監聽的服務器IP地址,默認爲所有網卡。
-p 是設置Memcache的TCP監聽的端口,最好是1024以上的端口。
-c 選項是最大運行的併發連接數,默認是1024。
-P 是設置保存Memcache的pid文件。
-f <factor> chunk size growth factor (default: 1.25)。
-I Override the size of each slab page. Adjusts max item size(1.4.2版本新增)。  也可以啓動多個守護進程,但是端口不能重複

測試啓動是否正常

telnet localhost 11211
2.查看memcached啓動命令
ps aux|grep memcached
 
2.1.2. 停止memcached

kill 'cat /var/run/memcached/pid'

6、安裝Memcache的PHP擴展

wget http://pecl.php.net/get/memcache-2.2.5.tgz

tar zxvf memcache-2.2.5.tar.gz

cd memcache-2.2.5

/home/webserver/php/bin/phpize

./configure --enable-memcache --with-php-config=/home/webserver/php/bin/php-config

make && make install

安裝完成後會出現如下提示

Installing shared extensions:

/home/webserver/php/lib/php/extensions/no-debug-non-zts-20121212/

修改php.ini文件 

把extension_dir = “./” 修改爲extension_dir = “/home/webserver/php/lib/php/extensions/no-debug-non-zts-20121212/”

添加如下一行代碼

extension=memcache.so

7、測試Memcache的PHP是否安裝成功

運行如下代碼

<?php

$mem = new Memcache;

$mem->connect( '127.0.0.1' , 11211);

$mem->set ('test' , "hello world!" , 0 ,12);

$val = $mem->get( 'test');

echo $val;

?>

   

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章