memcached(源码包)安装,php(rpm包)-memcache的扩展安装

# 我们开始装memcache

tar -zxvf  tar -zxvf libevent-1.4.13-stable.tar.gz
cd libevent-1.4.13-stable
 ./configure --prefix=/usr
 make && make install
 # 查看 libevent 是否安装完成
 ls -al /usr/lib | grep libevent
 
 tar -zxvf memcached-1.4.17.tar.gz
 cd memcached-1.4.17
 ./configure --with-libevent=/usr
 make && make install
 # 查看memcache是否安装完成
 ls -al /usr/local/bin/mem*
 # 启动memcache的服务端
 #启动Memcache的服务器端:
 /usr/local/bin/memcached -d -m 200 -u www -p 11211 -c 256 -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 -I INPUT -p tcp --dport 11211 -j DROP
# 单独接受特定的ip的当前端口的数据包
iptables -I INPUT -s 192.168.1.112 -p tcp --dport 11211 -j ACCEPT

# 查看启动的端口号
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

<?php
ini_set(‘display_errors‘,1);
error_reporting(7);
$mem = new Memcache;
$mem->connect(‘192.168.1.112‘,11211);
$mem->set(‘test‘,‘Hello world!‘,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 -m 200 -u www -p 11211 -c 256 -P /tmp/memcached.pid

 
 
 
 





 

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。