linux下給php安裝memcached及memcache擴展(轉)


http://kimi.it/257.html (另外的方法)
linux安裝memcached及memcache擴展
一、安裝libevent函數庫
下載地址:http://libevent.org
默認被安裝到:/usr/local/lib目錄下
安裝memcached之前需要先安裝libevent函數庫。
可以通過#ls -al /usr/local/lib | grep libevent命令查看是否已安裝libevent函數庫。
如果沒安裝,則需下載並安裝libevent函數庫。
 
二、安裝memcached
下載地址:http://memcached.org
默認被安裝到:/usr/local/bin目錄下
安裝完畢后,
先將libevent包路徑加入/etc/ld.so.conf文件中
#vi /etc/ld.so.conf
在最后面一行加入/usr/local/lib
 
完成后輸入以下命令啟動memcached主程序
/usr/local/bin/memcached -d -m 1024  -u root -l 需要訪問memcached的客戶端ip地址 -p 11211 -c 1024 -P /tmp/memcached.pid
常用啟動參數如下:
-m:最大使用內存,以MB為單位,默認64。
-p:進程所使用的TCP進程端口,默認11211。
-d:將memcached作為后台守護進程運行。
-u:啟動用戶。
-P:進程文件存放路徑。
-c:最大運行並發數,默認1024。
-l:監聽服務地址(即允許telnte登錄的IP)。
 
如果出現以下報錯:error while loading shared libraries: libevent-2.0.so.5: cannot open shared object file: No such file or directory
則說明memcached找不到libevent的位置,解決辦法及原因如下:
原因之一:雖然剛剛我們在/etc/ls.so.conf文件里添加了libevent包目錄,但系統還沒有識別到這個新的動態鏈接庫。
解決辦法:我們需要執行一下ldconfig命令,這個命令通常在系統啟動時運行,而當用戶安裝了一個新的動態鏈接庫時,就需要手工運行這個命令。
這個命令的用途:默認搜尋/lilb和/usr/lib,以及配置文件/etc/ld.so.conf內所列的目錄下的庫文件。
 
啟動完成后,可查看memcached主程序是否存在
#pstree | grep mem
 
三、安裝memcache擴展
下載地址:http://pecl.php.net/package/memcache
memcache是php的一個擴展模塊,安裝前應先保證目前具備php環境。
先找到phpize的存在目錄(如果是通過yum安裝的php,則存在於/usr/bin中,如果沒找到它們,則#yum install php-devel並重啟)
解壓memcache壓縮包后,“進入解壓出的文件夾中”。接下來使用phpzie將memcache編譯到php擴展模塊中。
#/usr/bin/phpize
#./configure --with-php-config=/usr/bin/php-config
(此時如果error: memcache support requires ZLIB報錯,則說明沒有zlib,可以yum一個,之后重啟:#yum install -y zlib.x86_64 zlib-devel.x86_64)
檢測成功后就可以用make編譯memcache了:
#make
#make install
Installing shared extensions:     /usr/lib64/php/modules/
(上面的結果表示:擴展將被安裝到/usr/lib64/php/modules/目錄)
最后還需要修改php.ini配置項,過程如下:
#vim /etc/php.ini
(在700多行找到下面的命令,將注釋去掉,有些沒有也可手動添加)
extension_dir = "/usr/lib64/php/modules/"(地址是上面make時顯示的地址)
extension = "memcache.so"
extension = "pdo_mysql.so"
重啟服務器
 
可以用#telnet memcached所在服務器ip地址 11211
來查看是否可以連接memcached
 
之后可以通過phpinfo函數查看memcache的配置信息


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM