下載最新的 memcached http://www.memcached.org/ 1.4.15
# tar -xvf memcached-1.4.15.tar.gz
cd memcached-1.4.15
./configure --prefix=/usr/local/memcache
出現了 configure: error: libevent is required. You can get it from http://www.monkey.org/~provos/libevent/
就直接去,那個網站下載
# tar zxvf libevent-1.2.tar.gz
# cd libevent-1.2
# ./configure -prefix=/usr
# make
# make install
ldconfig命令 重新加載一下公共的文件
cd memcached-1.4.15中
./configure --prefix=/usr/local/memcache
make & make install
編譯安裝php模塊的memcache模塊 下載地址 http://pecl.php.net/package/memcache
tar -xvf memcache-2.2.7.tar.gz
cd memcache-2.2.7
#/usr/local/php/bin/phpize
#./configure --with-php-config=/usr/local/php/bin/php-config --enable-memcache
make & make install
# vi /usr/local/php/lib/php.ini #吃了虧,這個最好是看phpinfo() 看一下,這個所謂的php.ini在什么地方
啟用
#memcached -m 2048 -u root -d -l 127.0.0.1 -p 11211 或
/usr/local/bin/memcached -d -m 10 -u root -l 192.168.12.201 -p 13001 -c 256 -P /tmp/memcached.pid
# telnet 127.0.0.1 11211
通常:啟動Memcache的服務器端的命令為:
# /usr/local/bin/memcached -d -m 10 -u root -l 192.168.0.200 -p 12000 -c 256 -P /tmp/memcached.pid
-d選項是啟動一個守護進程,
-m是分配給Memcache使用的內存數量,單位是MB,我這里是10MB,
-u是運行Memcache的用戶,我這里是root,
-l是監聽的服務器IP地址,如果有多個地址的話,我這里指定了服務器的IP地址192.168.0.200,
-p是設置Memcache監聽的端口,我這里設置了12000,最好是1024以上的端口,
-c選項是最大運行的並發連接數,默認是1024,我這里設置了256,按照你服務器的負載量來設定,
-P是設置保存Memcache的pid文件,我這里是保存在 /tmp/memcached.pid,
想開機自動啟動的話,只需在/etc/rc.d/rc.local中加入一行,上面命令
有人用以下命令:
/usr/local/memcached/bin/memcached -d -m 20 -p 11211 -u www
上面有些東西可以參考一下:即,ip不指定時,默認是本機,用戶,最好選擇是:www
這樣,也就是屬於哪個用戶的服務,由哪個用戶啟動。
測試:
<?php
$memcache = new Memcache; //創建一個memcache對象
$memcache->connect('localhost', 11211) or die ("Could not connect"); //連接Memcached服務器
$memcache->set('key', 'test'); //設置一個變量到內存中,名稱是key 值是test
$get_value = $memcache->get('key'); //從內存中取出key的值
echo $get_value;
?>