Mac(Linux)上安装memcached步骤

Mac上安装memcached类似于在Linux平台上安装memcached。

主要需要做两块:

一.安装libevent库;

二.安装memcached;

 

一.安装libevent库

libevent是个程序库,它将Linux的epoll、BSD类操作系统的kqueue等事件处理功能 封装成统一的接口。即使对服务器的连接数增加,也能发挥O(1)的性能。 memcached使用这个libevent库,因此能在Linux、BSD、Solaris等操作系统上发挥其高性能。 关于事件处理这里就不再详细介绍,可以参考Dan Kegel的The C10K Problem。

步骤1:下载libevent库,官网地址http://libevent.org/,我下载使用的版本为libevent-2.0.22-stable,下载libevent-2.0.22-stable.tar.gz文件存放在本地目录。

 

步骤2:解压压缩文件,使用命令:

tar -xzvf libevent-2.0.22-stable.tar.gz
 
步骤3:执行配置,执行命令:    
./configure --prefix=/usr/local/libevent
其中prefix指定的是要将libevent安装的位置,建议放在/usr/local目录下的某个目录下即可。
 
步骤4:安装libevent库,执行命令make && make install,如果当前用户不是管理员,需要将命令修改为:make && sudo make install
 
至此libevent就安装成功了,我们继续memcached的安装过程。
 
二.安装memcached
安装memcached的前置过程是安装libevent,安装libevent的步骤前面已经介绍过了,下面来看看memcached的安装步骤。
 
步骤1:下载memcached,官网:http://memcached.org/downloads,我下载使用的版本为memcached-1.4.22.tar.gz,下载后进入到下载目录;
 
步骤2:解压压缩文件,执行命令:
tar -zxvf memcached-1.4.22.tar.gz
cd memcached-1.4.22
 
步骤3:执行配置,执行命令:
./configure --prefix=/usr/local/memcached/memcached-1.4.22 --with-libevent=/usr/local/libevent
 
其中prefix依然是指定memcached的安装目录,而with-libevent参数指定的是你之前安装libevent的安装路径,如果不指定该参数,则可能会报如下错误提示:
If it‘s already installed, specify its path using --with-libevent=/dir/
 
步骤4:安装memcached命令,执行命令:
make && make install
同样的,如果当前用户不具有管理员权限,则需要执行
make && sudo make install
建议都执行后一种命令
 
步骤5:启动memcached,执行命令:
/usr/local/memcached/memcached-1.4.22/bin/memcached
这时候会报另外一个错误:
dyld: Library not loaded: /usr/lib/libevent-2.0.5.dylib
  Referenced from: /usr/local/memcached/memcached-1.4.22/bin/./memcached
  Reason: image not found
Trace/BPT trap: 5
 
这就需要我们去刚才安装libevent的目录中拷贝一下libevent-2.0.5.dylib文件至/usr/lib目录,执行如下目录:
sudo cp libevent-2.0.5.dylib /usr/lib
拷贝完该文件后,再次启动memcached,启动后执行如下命令查看是否启动成功了:
ps -ef | grep ‘memcached‘
返回的结果如下所示:
  501 24136  5144   0 12:05上午 ttys000    0:00.01 /usr/local/memcached/memcached-1.4.22/bin/memcached
  501 24155 24150   0 12:06上午 ttys002    0:00.00 grep memcached

则整个安装过程完成!
 
参考文档:
http://blog.csdn.net/pwlazy/article/details/1542916
http://kb.cnblogs.com/page/42731/

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