今天有台服务器需要迁移业务安装memcached,以前没有安装过,按照网上步骤尝试了下,并且记录了安装过程。


安装包准备:

libevent-1.4.14b-stable.tar.gz

memcached-1.4.5.tar.gz


首先安装libevent:

tar zxvf libevent-1.4.14-stable.tar.gz -C /usr/local/

cd libevent-1.4.14-stable/

./configure -prefix=/usr/libevent

make && make install


然后安装memcached

tar zxvf memcached-1.4.5.tar.gz -C /usr/local

cd /usr/local/memcached-1.4.5/

./configure -with-libevent=/usr/libevent/ -prefix=/usr/local/memcached

make && make install


创建软连接方便以后使用:

ln -s /usr/local/memcached/bin/memcached /usr/local/bin/


启动memcached

/usr/local/memcached/bin/memcached -p 11211 -u root


在启动的时候,突然报错:

./bin/memcached: error while loading shared libraries: libevent-1.4.so.2: cannot open shared object file: No such file or directory

原因:没有建立libevent动态库


解决方案:

装完libevent之后为了让动态链接库为系统所共享,需要执行以下动态链接库的管理命令ldconfig

1、我们使用find命令找到我们的libevent-1.4.so.2

find /usr/local/ -name libevent-1.4.so.2 

/usr/local/libevent-1.4.14b-stable/.libs/libevent-1.4.so.2

2、使用debug信息查看程序去哪里寻找共享文件库

LD_DEBUG=libs /usr/local/bin/memcached -v

我们看到:trying file=/usr/lib64/libevent-1.4.so.2

这个时候,我直接做了个软链接(网上还有更多的步骤,还在研究)

ln -s /usr/local/libevent-1.4.14b-stable/.libs/libevent-1.4.so.2 /usr/lib64/libevent-1.4.so.2


然后启动服务成功。

服务参数:http://alca0126.blog.51cto.com/7826974/1771900


参考文献:http://www.cnblogs.com/carbon3/p/5870230.html

          http://chenzhou123520.iteye.com/blog/1925196