最近看了下memcache. 下面我就来说一下在Linux上安装memcached(服务器)以及memcache(客户端),在这我使用的是源码安装。
安装memcached:
- 安装memcached是需要先安装libevent依赖
你可以到官网下载libevent:http://libevent.org/
当然你也可以使用wget 命令在线下载,我使用eget命令下载安装包
- 安装memcached是需要先安装libevent依赖
# wget https://github.com/libevent/libevent/releases/download/release-2.1.8-stable/libevent-2.1.8-stable.tar.gz
- 解压你下载好的文件
# tar zxvf libevent-2.1.8-stable.tar.gz
# cd libevent-2.1.8-stable
# ./configure –prefix=/usr
# make
# make install
(注:在这里执行的时候出现错误:no acceptable C compiler found in $PATH 是由于centos没有安装gcc,使用yum安装
yum install gcc* make*)
- Memcached 安装
你可以到官网下载memcached: http://memcached.org/
当然你也可以使用wget 命令在线下载
# wget http://memcached.org/files/memcached-1.4.36.tar.gz
# tar zxvf memcached-1.4.36.tar.gz
# cd memcached-1.4.36
# ./configure –with-libevent=/usr
# make
# make install
- 注意,这里要指定libevent的安装路径,不然后面会找不到libevent的安装路径
- 安装完成后会把memcached放到 /usr/local/bin/memcached 下面
- 测试是否成功安装memcached:
# ls -al /usr/local/bin/mem*
出现下面结果说明安装成功
-rwxr-xr-x 1 root root 137986 11?? 12 17:39 /usr/local/bin/memcached
-rwxr-xr-x 1 root root 140179 11?? 12 17:39 /usr/local/bin/memcached-debug
- 安装Memcache及Memcache的PHP扩展
- 在http://pecl.php.net/package/memcache 选择相应想要下载的memcache版本。
- 安装PHP的memcache扩展
# wget http://pecl.php.net/get/memcache-3.0.8.tgz
# tar vxzf memcache-3.0.8.tgz
# cd memcache-3.0.8
# /usr/local/php/bin/phpize
# ./configure --enable-memcache --with-php-config=/usr/local/php/bin/php-config --with-zlib-dir
# make
# make install
- 这一步最容易出问题,
- 在执行 /usr/local/php/bin/phpize时如果出现phpize没有找到,你需要执行find命令来查找phpize的位置。
# find / -name phpize
如果没有显示,则说明phpize没有找到,你需要执行
# yum install php-devel
来安装它。
在执行./configure --enable-memcache --with-php-config=/usr/local/php/bin/php-config --with-zlib-dir
命令是你需要--with-php-config=PATH,修改为你的PHP路径,若出现with-zlib-dir错误的问题,说明你没有安装zlib使用
# yum install zlib-devel
安装zlib。
- 上述安装完后会有类似这样的提示:
Installing shared extensions: /usr/local/php/lib/php/extensions/no-debug-non-zts-xxxxxxx/
说明你已经安装成功了,记住这个路径,后面有用。
2.找到你的php.ini文件,添加以下内容
extension_dir = “/usr/local/php/lib/php/extensions/no-debug-non-zts-xxxxxxx/”
;这里的路径就是你安装完memcache后显示的路径。
extension=memcache.so
3.重启apache
#service httpd restart
到此我们的memcached和memcache就已经安装好了。
4.下面说一下memcached的基本设置:
- 启动Memcache的服务器端:
# /usr/local/bin/memcached -d -m 512 -u ouyang -l 10.203.87.17 -p 11211 -c 256
-d选项是启动一个守护进程,
-m是分配给Memcache使用的内存数量,单位是MB,我这里是512MB,默认是64M
-u是运行Memcache的用户,我这里是ouyang,
-l是监听的服务器IP地址,如果有多个地址的话,我这里指定了服务器的IP地址10.203.87.17,
-p是设置Memcache监听的端口,我这里设置了11211(默认端口)
-c是最大运行的并发连接数,默认是1024,我这里设置了256。
-v 输出警告和错误信息
-vv 打印客户端的请求和返回信息
-h 打印帮助信息
-i 打印memcached 和libevent的版权信息
5.Memcache环境测试:
运行下面的php文件,如果有输出Hello Memcache!,就表示环境搭建成功。
< ?php
$mem=new Memcache();
$mem->connect("10.203.87.17", 11211);
$mem->set("name",‘Hello Memcache!′,0,60);
$val = $mem->get("name");
var_dump($val);
?>
费劲千辛万苦终于安装好了,庆祝一下吧。