下載libevent ,這個是memcache的支持。從網(wǎng)上找到源碼直接編譯安裝。注:CentOS默認(rèn)是安裝了的所以不需要再這一步。為測試libevent是否安裝成功:
成都創(chuàng)新互聯(lián)主要從事做網(wǎng)站、網(wǎng)站建設(shè)、網(wǎng)頁設(shè)計、企業(yè)做網(wǎng)站、公司建網(wǎng)站等業(yè)務(wù)。立足成都服務(wù)宜秀,10年網(wǎng)站建設(shè)經(jīng)驗,價格優(yōu)惠、服務(wù)專業(yè),歡迎來電咨詢建站服務(wù):18982081108
# 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
2.下載安裝memcache (這個是給本機安裝memcache,如果裝php擴展,可略)
這個直接上memcache的官網(wǎng)上下載最新版本,然后解壓安裝
# tar zxvf memcached-1.*.*.tar.gz
# cd memcached-1.*.*
下面這一步需要者注意的是libevent所在的目錄可能和下面的不同,可以通過whereis libevent來查看所在目錄
# ./configure --prefix=/usr/local/memchached --with-libevent=/usr/local/libevent
# make;make install
3.安裝php的memcache擴展
http://pecl.php.net/get/memcache-2.2.7.tgz (當(dāng)然也可以下載其他版本)
解壓目錄然后到目錄下然后執(zhí)行
先找出phpize(至于是干什么的自己搜索)所在位置whereis phpize ,如果沒有的話則執(zhí)行命令yum install php-devel ,因為PHPize 是屬于php 的 devel .
執(zhí)行phpize
執(zhí)行完畢后進行編譯前的配置
./configure --enable-memcache --with-php-config=/usr/bin/php-config --with-zlib-dir
(同樣這里需要你找出紅字部分所在位置)
make
make install
然后會提示
安裝完后會有類似這樣的提示:
Installing shared extensions: /usr/lib/php/modules/
把這個記住,然后修改php.ini,把
extension_dir = "./"
修改為
extension_dir = "/usr/lib/php/modules/"
并添加一行
extension=memcache.so
——————————————————————————
到這基本就完成了,然后我們啟動memcache,
memcache -uroot -p21003 -m1024 (如果直接這么執(zhí)行的話則這個窗口就沒法退出了還需要以守護進程的方式運行)
——————————————————————————————————
下面寫一個php腳本
connect('localhost', 11211) or die ("Could not connect"); //連接Memcached服務(wù)器 $memcache->set('key', 'test'); //設(shè)置一個變量到內(nèi)存中,名稱是key 值是test $get_value = $memcache->get('key'); //從內(nèi)存中取出key的值 echo $get_value; ?>
——————————————————————————
然后這里可能會出現(xiàn)的問題是 Failed reading line from stream (0)
出現(xiàn)這個問題可能是因為1.內(nèi)存不夠了,你設(shè)置的內(nèi)存過大,崩潰了2.你不是以守護進程執(zhí)行的,可能后臺的memcache已經(jīng)關(guān)閉了
ps aux|grep memcached