# 我们开始装memcache

tar-zxvftar-zxvflibevent-1.4.13-stable.tar.gzcdlibevent-1.4.13-stable./configure--prefix=/usrmake&&makeinstall#查看libevent是否安装完成ls-al/usr/lib|greplibeventtar-zxvfmemcached-1.4.17.tar.gzcdmemcached-1.4.17./configure--with-libevent=/usrmake&&makeinstall#查看memcache是否安装完成ls-al/usr/local/bin/mem*#启动memcache的服务端#启动Memcache的服务器端:/usr/local/bin/memcached-d-m200-uwww-p11211-c256-P/tmp/memcached.pid#(不指定ip)

#参数说明:
#-d选项是启动一个守护进程,
#-m是分配给Memcache使用的内存数量,单位是MB,我这里是10MB,
#-u是运行Memcache的用户,我这里是root,
#-l是监听的服务器IP地址,如果有多个地址的话,我这里指定了服务器的IP地址202.207.177.177,
#-p是设置Memcache监听的端口,我这里设置了11211,最好是1024以上的端口,
#-c选项是最大运行的并发连接数,默认是1024,我这里设置了256,按照你服务器的负载量来设定,
#-P是设置保存Memcache的pid文件,我这里是保存在 /tmp/memcached.pid,

#2.如果要结束Memcache进程,执行:kill`cat/tmp/memcached.pid`

# 添加防火墙规则
# -I 在前面添加规则

#drop目标端口11211端口的所有数据包iptables-IINPUT-ptcp--dport11211-jDROP#单独接受特定的ip的当前端口的数据包iptables-IINPUT-s192.168.1.112-ptcp--dport11211-jACCEPT

# 查看启动的端口号
netstat -tanp # 查看所有用户开启的端口
netstat -tunp # 查看当前用户开启的端口

# 安装php-memcache的扩展
tar -zxvf memcache-2.2.4.tgz
cd memcache-2.2.4
phpize # 如果没有找到phpize命令则 yum -y install php-devel

./configure --with-php-config=/usr/bin/php-config --enable-memcache # error: memcache support requires ZLIB. Use --with-zlib-dir=<DIR> to specify prefix where ZLIB include and library are located 这个错误就要执行:yum -y install zlib-devel
make
make test
## 查看是否可以在扩展目录下找到 memcache.so
ls /usr/lib64/php/modules/ # 如果找不到则直接复制一个过去 cp modules/memcache.so /usr/lib64/php/modules/

### 如果可以找到则重新加载php配置文件进行测试
service httpd reload

### 测试memcache的功能是否正常
# 新建index.php文件测试看php是否支持memcache

<?phpini_set('display_errors',1);error_reporting(7);$mem=newMemcache;$mem->connect('192.168.1.112',11211);$mem->set('test','Helloworld!',0,12);$val=$mem->get('test');echo$val;var_dump($val);

# 如果页面中输出Hello world!string(12) "Hello world!" 则说明此时php已经支持memcache模块

##/etc/rc.d/rc.local中加入memcache的启动命令确保memcache在开机时自动启动vi/etc/rc.d/rc.local#memcache启动/usr/local/bin/memcached-d-m200-uwww-p11211-c256-P/tmp/memcached.pid