Memcached在Linux系统下的安装和PHP开启 Memcached的 扩展 超级解决方案
【项目背景】:阿里云ECS服务器,Linux(centos7.2 64位),环境部署使用的是阿里云一键安装包(LAMP)等
【项目需求】:linux安装memcached 和php开启Memcached的扩展
【项目涉及软件包】:总共涉及4个软件包,分为服务器端:libevent(安装 Memcached 服务器所依赖的软件包,下载地址:http://libevent.org/)、Memcached(Memcached 服务器软件包,下载地址:http://memcached.org/);客户端:libmemcached(是一个 memcached 的库,下载地址:http://libmemcached.org/libMemcached.html)、memcached(PHP开启 Memcached 扩展的软件包,下载地址:http://pecl.php.net/package/memcached) 注意:两个memcache的区别,大家可以根据网址去下载最新或者适合自己的版本!!!
【软件安装】:将上述软件包下载后统一放到linux系统某一文件夹下,我的是默认放在root文件夹下,这个只是存放目录,待软件包安装的时候在指定目录,所以放到哪无所谓(可以参考linux系统文件夹的功能来区分到底放在哪个文件夹下,了解linux系统各文件夹的功能对后期软件安装也是有一定的帮助的,本不不阐述,自行百度)。注意:安装是有顺序的请按【项目涉及软件包】中软件包顺序安装,先安服务器端,再装客户端。每个软件包安装都需要如下几步:
一、详细安装步骤,以libevent为例:
1、将libevent软件解包,解包的命令如下
[root@iZm5e8mdarp2gzrruoytkiZ ~]# tar zxvf libevent-对应版本号-stable.tar.gz -C /usr/local (解释:将libevent解压至/usr/local文件夹下)
2、切换至libevent对应版本文件夹下:
[root@iZm5e8mdarp2gzrruoytkiZ ~]# cd /usr/local/libevent-2.1.8-stable/
3、指定安装目录:
[root@iZm5e8mdarp2gzrruoytkiZ libevent-2.1.8-stable]# ./configure --prefix=/usr/local/libevent/
4、编译
[root@iZm5e8mdarp2gzrruoytkiZ libevent-2.1.8-stable]# make
5、安装
[root@iZm5e8mdarp2gzrruoytkiZ libevent-2.1.8-stable]# make install
至此libevent安装完成,切换到/usr/local/libevetn/文件夹下就可以看到libevent的安装目录了。剩下libmemcached、Memcached的安装与libevent都是一样的,唯一需要注意的就是./configure --prefix指定安装目录需要注意下,具体如下:
二、安装Memcached
1、[root@iZm5e8mdarp2gzrruoytkiZ ~]# tar zxvf memcached-1.4.36.tar.gz -C /usr/local
2、[root@iZm5e8mdarp2gzrruoytkiZ ~]# cd /usr/local/memcached-1.4.36/
3、[root@iZm5e8mdarp2gzrruoytkiZ memcached-1.4.36]# ./configure --prefix=/usr/local/memcached/ --with-libevent=/usr/local/libevent/
4、[root@iZm5e8mdarp2gzrruoytkiZ memcached-1.4.36]# make
5、[root@iZm5e8mdarp2gzrruoytkiZ memcached-1.4.36]# make install
三、安装libmemcached
1、[root@iZm5e8mdarp2gzrruoytkiZ ~]# tar zxvf libmemcached-1.0.18.tar.gz -C /usr/local
2、[root@iZm5e8mdarp2gzrruoytkiZ ~]# cd /usr/local/libmemcached-1.0.18/
3、[root@iZm5e8mdarp2gzrruoytkiZ libmemcached-1.0.18]# ./configure --prefix=/usr/local/libmemcached --with-memcached
4、[root@iZm5e8mdarp2gzrruoytkiZ libmemcached-1.0.18]# make
5、[root@iZm5e8mdarp2gzrruoytkiZ libmemcached-1.0.18]# make install
四、最后一步,开启 PHP 的 memcached 扩展,这步最关键
1、[root@iZm5e8mdarp2gzrruoytkiZ ~]# tar zxvf memcached-3.0.3.tgz -C /usr/local
2、[root@iZm5e8mdarp2gzrruoytkiZ ~]# cd /usr/local/memcached-3.0.3/
3、[root@iZm5e8mdarp2gzrruoytkiZ memcached-3.0.3]# /alidata/server/php-5.5.7/bin/phpize 使用php安装时声称的phpize来来扩展memcached,/alidata/server/php-5.5.7/bin/ 这个是我安装php的路径,请到你自己的php安装路径下找到phpize这个文件。
4、[root@iZm5e8mdarp2gzrruoytkiZ memcached-3.0.3]# ./configure --with-php-config=/alidata/server/php-5.5.7/bin/php-config --with-libmemcached-dir=/usr/local/libmemcached --disable-memcached-sasl
说明:--with-php-config 指定 php-config,该文件与 phpize 所在目录相同,
--with-libmemcached-dir 指定 libmemcached 安装目录,就刚才我们 --prefix 那个目录 ,
--disable-memcached-sasl 说明我们系统不支持sasl.h
5、root@iZm5e8mdarp2gzrruoytkiZ memcached-3.0.3]# make
6、root@iZm5e8mdarp2gzrruoytkiZ memcached-3.0.3]# make install
如果成功,则会提示:
Installing shared extensions: /alidata/server/php/lib/php/extensions/no-debug-non-zts-20121212/
接下来,我们编辑php配置文件php.ini,把 php-memcached 扩展加到配置文件里,找到php.ini,添加extension=/alidata/server/php/lib/php/extensions/no-debug-non-zts-20121212/;extension=memcached.so;保存,重启apache,service httpd restart!
最后还需要开启Memcached。
以守护进程模式启动memcache :[root@iZm5e8mdarp2gzrruoytkiZ ~]# /usr/local/memcached/bin/memcached -d -l 127.0.0.1 -p 11211 -m 2048 -u root
测试是否开启成功:netstat -ntpl | grep memcache
参考文章:http://www.runoob.com/memcached/memcached-connection.html
注意:安装的过程中多注意编译的过程,还有就是需要注意各软件包的版本不要差太多,意思就是一个低版本一个高版本,可能就会出错如****no such file or directory 这种情况可能就是因为版本之间差异太大引起的。
Memcached在Linux系统下的安装和PHP开启 Memcached的 扩展 超级解决方案的更多相关文章
- linux系统下怎么安装.deb文件
linux系统下怎么安装.deb文件? deb 是 ubuntu .debian 的格式.rpm 是 redhat .fedora .suse 的格式. 他们不通用(虽然可以转换一下). deb是de ...
- linux系统下怎么安装.deb文件?
linux系统下怎么安装.deb文件? deb 是 ubuntu .debian 的格式. rpm 是 redhat .fedora .suse 的格式. 他们不通用(尽管能够转换一下). deb是d ...
- Linux 系统下Eclipse安装及使用
Linux 系统下Eclipse安装及使用 我们在搞上层开发的时候,都是在Windows下使用Eclipse,那么如果是Linux应用开发,就必须要在Linux中安装Eclipse,用于C/C++开发 ...
- linux系统下nginx安装目录和nginx.conf配置文件目录
linux系统下nginx安装目录和nginx.conf配置文件目录 1.查看nginx安装目录 输入命令 # ps -ef | grep nginx 返回结果包含安装目录 root 26 ...
- Linux系统下Dubbo安装的详细教程
Linux系统下Dubbo安装的详细教程 1.Dubbo的简介 Dubbo是 [1] 阿里巴巴公司开源的一个高性能优秀的服务框架,使得应用可通过高性能的 RPC 实现服务的输出和输入功能,可以和 [ ...
- Linux系统下Redis安装(一)
最近项目要使用Redis,特将这段时间将Redis的学习经验与大家分享,算是对这段时间学习成果的总结和技术提炼,不足之处还望大家批评指正. 项目背景: 有些很少改动的数据和经常使用的数据(例如系统中下 ...
- linux系统下手动安装Angular-cli
安装Angular-cli 背景 由于公司linux服务器没有外网,无法通过npm包管理器直接安装,只能手动安装一个Angular-cli平台环境! 安装步骤 1. 先再linux系统下安装好node ...
- linux系统下jdk安装配置
1.有jdk包(linux版) 2.放到linux系统下 3.建议在usr下新建jdk目录之后将jdk文件放到该目录下 3.配置系统信息 /etc/profile 需要配置的信息如下:#set j ...
- Linux系统下Redis安装(二)
上一篇随笔,已经成功开启了Redis-server,客户端已经可以正常对redis进行正常操作. 但是,redis-server开启的同时,一个大大doc黑屏也在那里开启着,接下来就对讲解如何在Lin ...
随机推荐
- SharePoint 2010/2013 隐藏的速度下拉菜单列表项
SharePoint 2010/2013 隐藏的速度下拉菜单列表项 有时为了防止一些用户编辑列表项.需要隐藏下拉菜单列表项.,仅仅须要添加一个内容编辑器控件,将css代码写入其HTML ...
- 一段node代码的解读
path.join(path.dirname(__dirname), platform); __dirname:全局变量,变量获取当前模块文件所在目录的完整绝对路径 path.dirname():返回 ...
- mongoose ObjectId.toString()
node中一般我们经常对id进行判断,有的id是string类型,有的是ObjectId(''),这时候就可以使用mongoose的toString方法,将它转换成string
- element-ui 的 日历 datetimerange 日期格适化 , 适合1版本
这家伙把我坑坏了 , 本来吧数据准备好了 , 一掉接口居然不好使 ,日期总是有偏差 , 结果一看是提交的数据有问题 , 后台直接接受的字符串 new 的Date , 2017-12-24T16:00: ...
- this指的是,调用函数的那个对象。
恩 http://www.ruanyifeng.com/blog/2010/04/using_this_keyword_in_javascript.html
- 写在使用 Linux 工作一年后
start 去年公司空了几台台式机,当时看了下似乎配置比我用的乞丐版 air 略高一些,而且除了 ssd 以外还有一个 1T 的大硬盘,加上后面可能会有一段时间不做 iOS 了,那就不需要 macOS ...
- 联合概率(joint probability)、分布函数(distribution function)
0. PMF 与 PDF 的记号 PMF:PX(x) PDF:fX(x) 1. 联合概率 联合概率:是指两个事件同时发生的概率. P(A,B)=P(B|A)⋅P(A)⇒P(B|A)=P(A,B)P(A ...
- WPF文字描边的解决方法
原文:WPF文字描边的解决方法 由于项目原因,今天研究了一下午WPF的文字描边,网上这方面的资料奇少,搞了半天才发现强大的WPF原来不直接支持文字描边啊.最后求助于MSDN,找到了方案,和大家分 ...
- 数据结构 - 只需选择排序(simple selection sort) 详细说明 和 代码(C++)
数据结构 - 只需选择排序(simple selection sort) 本文地址: http://blog.csdn.net/caroline_wendy/article/details/28601 ...
- eclise配置tomcat出现服务Tomcat version 6.0 only supports J2EE 1.2, 1.3, 1.4 and Java EE 5 Web modules
当部署项目Tomcat version 6.0 only supports J2EE 1.2, 1.3, 1.4, 1.5 and Java EE 5 Web modules错;解决方案,如下面: 空 ...