1. 程式人生 > >LNMP下安裝memcache

LNMP下安裝memcache

php擴展模塊 report hpa OS not 缺少 測試 AD post

轉自:LNMP 添加 memcached服務

 由於memcached具有更多的功能和服務,已經不推薦使用memcache了。(缺少個字母d)

 1. 首先安裝memcached服務端。

  這裏使用yum源安裝

# yum -y install memcached

  

  啟動服務(命令默認在/usr/bin/memcached。主要的啟動參數-d守護進程,-u使用用戶,-m分配內存,-l機器ip,-p端口默認11211  

# /usr/bin/memcached -d -uroot -p 11211 -m 200 -l 127.0.0.1

  查看是否啟動成功  

# netstat -anp | grep 11211

2. 安裝memcached客戶端

    這裏使用源碼包安裝。下載libmemcached源碼包,官方地址 https://launchpad.net/libmemcached/+download  

技術分享圖片
# tar -xf libmemcached-1.0.18.tar.gz

# cd libmemcached-1.0.18

# ./configure --prefix=/usr/lib/memcached    # 指定安裝在某個目錄下,為後面安裝php-memcached擴展用

# make && make install
技術分享圖片

 

3. 安裝php-memcached擴展

    安裝php擴展模塊大致相同。之前寫過安裝pdo-mysql模塊。

    基本步驟就是1. phpize ; 2. 編譯安裝該模塊,註意配置過程中的參數設置 ; 3. 去php.ini加一行,擴展extension=balabala.so

   下載php-memcached,官網地址,https://pecl.php.net/package/memcached。  

技術分享圖片
# tar -xf memcached-2.1.0.tgz

# cd memcached-2.1.0

# /usr/local/php/bin/phpize      # 假設php安裝在/usr/local/php,以後涉及php的也是假設安裝在這裏了

# ./configure --with-php-config=/usr/local/php/bin/php-config  --with-libmemcached-dir=/usr/lib/memcached

# make && make install
技術分享圖片

  安裝成功後,最後一行提示會出現動態庫路徑:Installing shared extensions: /usr/local/php/lib/php/extensions/no-debug-non-zts-20131226/

  找到php.ini,把這個擴展路徑拷貝到裏頭  

# vi /usr/local/php/lib/php.ini 

  # 在裏面追加一行 extension=/usr/local/php/lib/php/extensions/no-debug-non-zts-20131226/memcached.so

  # 重新啟動php-fpm。

 

# php -m | grep memcached    #查看是否php模塊安裝成功

然後可以寫測試腳本,看看是否安裝成功~測試腳本可以去官網查看 http://php.net/manual/zh/book.memcached.php

比如:

技術分享圖片
<?php
  error_reporting(E_ALL & ~E_NOTICE); 

  $m = new Memcached(); 
  $m->addServer("127.0.0.1", 11211); 
  $m->set("foo", "Hello!"); 
  $m->set("bar", "Memcached..."); 

  $arr = array( 
       $m->get("foo"), 
       $m->get("bar") 
   );  

   print_r($arr);
技術分享圖片

memcached內存管理的機制:

參考這篇文章:http://www.cnblogs.com/qq78292959/archive/2012/12/27/2836015.html

memcached的存儲時間和大小限制:

LNMP下安裝memcache