zoukankan      html  css  js  c++  java
  • 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 这种情况可能就是因为版本之间差异太大引起的。

  • 相关阅读:
    如何上传整个项目或者是文件夹到github
    阅读笔记16-架构师推荐:提高90%开发效率的工具推荐
    阅读笔记15-这些普通的程序猿,如今都已进阶成为技术大佬
    python爬虫——爬取淘票票正在热映电影
    阅读笔记12-Java 面试题 —— 老田的蚂蚁金服面试经历
    SOA架构设计案例分析
    阅读笔记11-孤独后厂村:30万互联网人跳不出的中国硅谷
    阅读笔记09-Java程序员必备的Intellij插件
    阅读笔记08-程序员依然是这个时代,贫寒学子翻身的不二选择
    os.path.join()
  • 原文地址:https://www.cnblogs.com/zsvslx/p/6652084.html
Copyright © 2011-2022 走看看