一、安装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/ls.so.conf文件中
#vi /etc/ld.so.conf
在最后面一行加入/usr/local/lib
完成后输入以下命令启动memcached主程序
/usr/local/bin/memcached -m 100 -p 11211 -d -u root -p /tmp/memcached.pid -c256
常用启动参数如下:
-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多行找到下面的命令,将注释去掉,有些没有也可手动添加)
Directory in which the loadable extensions (modules) reside.
http://php.net/extension-dir
extension_dir = "/usr/lib64/php/modules/"
extension = "memcache.so"
extension = "pdo_mysql.so"
重启服务器
之后可以通过phpinfo函数查看memcache的配置信息