当前位置: 代码迷 >> 综合 >> centos 下安装memcached 和 memcacheQ
  详细解决方案

centos 下安装memcached 和 memcacheQ

热度:93   发布时间:2024-01-12 08:41:02.0

centos 下安装memcached 和 memcacheQ

1. 安装 libevent
tar zxvf libevent-1.4.13-stable.tar.gz
cd libevent-1.4.13-stable
./configure –prefix=/usr
make
make install

2. 安装memcached,同时需要安装中指定libevent的安装位置
tar zxvf memcached-1.4.4.tar.gz
cd memcached-1.4.4
./configure –with-libevent=/usr
make && make install

3. 测试是否成功安装memcached
ls -al /usr/local/bin/mem*
-rwxr-xr-x 1 root root 201869 12-14 21:44 /usr/local/bin/memcached

4. 安装Memcache的PHP扩展
(1)
tar vxzf memcache-2.2.5.tgz
cd memcache-2.2.5
/usr/local/php5/bin/phpize(注意:如果这个地方报Cannot find autoconf. Please check your autoconf installation and the $PHP,则执行 yum install automake)
./configure –enable-memcache –with-php-config=/usr/local/php5/bin/php-config –with-zlib-dir
make
make install

(2)添加一行来载入memcache扩展:extension=memcache.so

(3)启动memcache 服务端
memcached -d -m 10 -u root -l 127.0.0.1 -p 11211 -c 256 -P /tmp/memcached.pid

结束进程: kill `cat /tmp/memcached.pid`

检查进程:netstat -ant
另外装好之后需要reboot 一下。

另外memcached自启动 在 /etc/rc.d/rc.local
加上 /usr/local/memcache/bin/memcached -d -m 10 -u root -l 127.0.0.1 -p 11211 -c 256 -P /tmp/memcached.pid
即可

#———————
memcacheQ安装
1. 安装berkeleydb
tar zxvf db-4.7.25.tar.gz
cd db-4.7.25
cd build_unix/
../dist/configure
make
make install

2. 安装libvent(上面已经安装)

vi /etc/ld.so.conf
增加:
/usr/local/lib
/usr/local/BerkeleyDB.4.7/lib

vi /etc/profile
增加
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib:/usr/local/BerkeleyDB.4.7/lib

3. 安装memcacheQ
tar xvzf memcacheq-0.2.0.tar.gz
cd memcacheq-0.2.0
./configure –enable-threads
make
make install

memcacheq -h (命令帮助)
这个时候会出现这样的问题
memcacheq: error while loading shared libraries: libdb-5.0.so: cannot open shared object file: No such file or directory

解决办法:在/usr/lib 下建个 libdb-4.7.so 软链就OK啦
ln -s /usr/local/BerkeleyDB.4.7/lib/libdb-4.7.so /usr/lib/libdb-4.7.so

memcacheq -d -r -uroot -p11212 -H /var/mcq/data -N -R -v -L 1024 -B 1024 > /var/mcq/logs/mq_error.log 2>&1 (/var/mcq/data 必须自己创建)

PHP测试:
session_start();
$memcache_obj = new Memcache;
$memcache_obj->connect(‘127.0.0.1′, 11212) or die (“error”);

memcache_set($memcache_obj, ‘ast’,10, 0, 0);

echo “queue”.memcache_get($memcache_obj, ‘ast’);

memcache_close($memcache_obj);
?>


  相关解决方案