一、yum安装

1、Linux系统安装memcached,首先要先安装libevent库。

yum install libevent libevent-devel

2、安装memcached

yum install memcached

二、手动安装

1.下载libevent库。

wget https://github.com/downloads/libevent/libevent/libevent-2.0.21-stable.tar.gz

2.安装

tar -zxvf libevent-2.0.-stable.tar.gz
cd ibevent-2.0.-stable
./configure --prefix=/usr/local/libevent-2.0.-stable
make
make install

3.检查是否安装成功

ls -al /usr/local/libevent-2.0.-stable/lib | grep libevent

4.下载memcached

wget http://memcached.org/files/memcached-1.5.9.tar.gz

5.安装

tar -zxvf memcached-1.5..tar.gz
cd memcached-1.5.
./configure -with-libevent=/usr/local/libevent-2.0.-stable/ --prefix=/usr/local/memcached-1.5.
make
make install

三、启动

/usr/local/memcached/bin/memcached -d -m 87380m -c  -p  -u root

四、配置项

-d选项是启动一个守护进程,
-m是分配给Memcache使用的内存数量,单位是MB,这里是10MB,
-u是运行Memcache的用户,这里是root,
-l是监听的服务器IP地址,如果有多个地址的话,这里指定了服务器的IP地址192.168.0.200,
-p是设置Memcache监听的端口,这里设置了12000,最好是1024以上的端口,
-c选项是最大运行的并发连接数,默认是1024,这里设置了256,按照服务器的负载量来设定,
-P是设置保存Memcache的pid文件,我这里是保存在 /tmp/memcached.pid,也可以启动多个守护进程,不过端口不能重复。
-s以unix域socket方式启动,后接用于FIFO通讯的文件绝对路径,例如:/run/memcached/memcached.sock。

五、通讯方式

客户端可以有两种方式与服务进程通信,分别是TCP和unix domain socket.

1.TCP

TCP是最常用的一种通讯方式,这种方式可以通过TCP网络连接远方的memcached服务器。

如果是客户端和服务端处于同一服务器,采用这种通讯方式就会带来而外不必要的传输开销,所以客服同机的情况下,应当采用unix域协议通信。

2.unix domain socket

unix domain socket是unix系统中特有的进程间通讯方式(IPC),两个进程通过管道(FIFO)互相通信,相比起TCP的开销更加小,但是只有在客服同机的情况下才能使用。

开启此方式的方法是让memcached服务进程以创建一个文件的方式,双方进程通过读写此文件进行通信,可以参考第六点的第2条命令。

所有通过此方式通讯的进程必须注意:
服务进程需要创建一个文件用于通信,所以服务进程必须具备指明路径下的创建文件的权限。
客户端进程必须有读写该文件的权限。

六、常用命令

1.启动后保存pid文件

/usr/bin/memcached -d -m  -u root -l 127.0.0.1 -p  -c  -P /tmp/memcached.pid

2.用unix域socket方式启动

/usr/bin/memcached -d -u nginx -s /run/memcached/memcached.sock

七、在php中使用

php中自带了两个命名很相似的扩展memcache和memcached.

这两者的不同之处在于memcache是基于php自身编写的一个memcache客户端,unix和windows都可以找到相应版本。而memcached则是基于一个开源memcached客户端项目libmemcached.它是仅限于unix中的一个项目。

1.memcache

此扩展在PHP官方手册里就有详细的安装指南,在PECL中下载该扩展的最新版本。

2.memcached

在安装此扩展之前需要安装libmemcached客户端,此后再安装php扩展,在PECL中下载该扩展的最新版本。

安装libmemcached过程:

cd /usr/local/src
wget https://launchpad.net/libmemcached/1.0/1.0.18/+download/libmemcached-1.0.18.tar.gz
tar zxvf libmemcached-1.0..tar.gz
cd libmemcached-1.0.
./configure --prefix=/usr/local/libmemcached
make && make install

安装memcached扩展过程:

cd /usr/local/src
wget http://pecl.php.net/get/memcached-3.1.5.tgz
tar zxvf memcached-3.1..tgz
cd memcached-3.1.
/usr/local/php/bin/phpize --with-php-config=/usr/local/php/bin/php-config
./configure --with-php-config=/usr/local/php/bin/php-config --with-libmemcached-dir=/usr/local/libmemcached --disable-memcached-sasl
make && make install

在安装此扩展的过程当中需要注意的是它的配置项:

配置项 作用
--with-libmemcached-dir
指明libmemcached的安装路径
--disable-memcached-sasl
带上该配置时禁用sasl功能

[Linux]centos下安装memcached的更多相关文章

  1. NoSql1 在Linux(CentOS)上安装memcached及使用

    前言:       今天是初五,生活基本要从过年的节奏中回归到正常的生活了,所以想想也该想想与工作有关的事情了.我之前在工作中会经常使用memcached和redis,但是自己一直没有时间系统的好好看 ...

  2. Linux(CentOs)下安装Phantomjs + Casperjs

    Linux(CentOs)下安装Phantomjs + Casperjs 是参照cnMiss's Blog http://ju.outofmemory.cn/entry/70691的博客进行安装的 1 ...

  3. linux/centos下安装nginx(rpm安装和源码安装)详细步骤

    Centos下安装nginx rpm包                                                                                 ...

  4. Linux CentOS下安装Tomcat9

    本文讲解在Linux CentOS下安装Tomcat9,以及Web项目的部署发布. 环境:阿里云ECS 云服务器Linux CentOS 使用XShell客户端连接服务器,进行操作实践. 1.下载To ...

  5. [Linux]CentOS下安装和使用tmux

    前天随意点开博客园,看到了一篇关于tmux的文章 Tmux - Linux从业者必备利器,特意还点进去看了.毕竟Linux对于做游戏服务端开发的我来说,太熟悉不过了.不过我就粗略地看了一眼,就关掉了. ...

  6. Linux(CentOS)下安装git

    上个月把VPS迁到budgetVM,终于不用再受digitalOcean的气了,入手很方便,重点是支持支付宝付款——paypal的界面真是不习惯,开通速度挺快的,1G的内存够我折腾一段时间了~,额外送 ...

  7. Linux CentOS下安装、配置mysql数据库

    假设要在Linux上做j2ee开发.首先得搭建好j2ee的开发环境.包含了jdk.tomcat.eclipse的安装(这个在之前的一篇随笔中已经有具体解说了Linux学习之CentOS(七)--Cen ...

  8. Linux(CentOS)下安装docker

    Linux(CentOS)安装Docker 查看当前内核版本 [docker@localhost ~]$ uname -r 确保yum包更新到最新 [docker@localhost ~]$ sudo ...

  9. linux/centOS 下安装 ngnix

    Nginx 是一款轻量级的 Web 服务器/反向代理服务器,比较流行,建议在 Linux 下安装运行. Nginx 需要的依赖 它们包括:gcc,openssl,zlib,pcre(可通过rpm -q ...

随机推荐

  1. Vue - 组件通信之$attrs、$listeners

    前言 vue通信手段有很多种,props/emit.vuex.event bus.provide/inject 等.还有一种通信方式,那就是 $attrs 和 $listeners,之前早就听说这两个 ...

  2. [golang] nats的消息传递模型介绍

    目录 nats的消息传递模型 What is NATS 主题式消息(Subject-Based Messaging) 发布订阅(Publish-Subscribe) 请求应答(Request-Repl ...

  3. tensorflow常用函数解释

    从二维数组中选一个矩形 import tensorflow as tf data = [[1,2,3,4,5,6,7,8],[11,12,13,14,15,16,17,18]] x = tf.stri ...

  4. art-template与swiper发生冲突导致swiper的一些样式不起作用

    我们在实际中的前后端分离开发中,在进行渲染后端返回来的数据时我们有时会用到模板来进行渲染数据,而在渲染数据中我们可能用到一些组件来进行一些样式显示.而在页面中数据显示了导致组件的一些样式没有显示,一些 ...

  5. 【Java Web开发学习】Spring MVC添加自定义Servlet、Filter、Listener

    [Java Web开发学习]Spring MVC添加自定义Servlet.Filter.Listener 转载:https://www.cnblogs.com/yangchongxing/p/9968 ...

  6. Rar5.20 key

    key如下,使用方法自行百度,^_^ RAR registration dataState Grid Corporation Of China50000 PC usage licenseUID=582 ...

  7. SQLHelper.cs类 微软C#版

    using System; using System.Data; using System.Xml; using System.Data.SqlClient; using System.Collect ...

  8. 《Java基础知识》Java 泛型详解

    JDK 1.5 之后,Java 通过泛型解决了容器类型安全这一问题,而几乎所有人接触泛型也是通过Java的容器.那么泛型究竟是什么? 泛型的本质是参数化类型:也就是说,泛型就是将所操作的数据类型作为参 ...

  9. jQuery模仿ToDoList实现简单的待办事项列表

    功能:在文本框中输入待办事项按下回车后,事项会出现在未完成列表中:点击未完成事项前边的复选框后,该事项会出现在已完成列表中,反之亦然:点击删除按钮会删除该事项:双击事项可以修改事项的内容.待办事项的数 ...

  10. 1.Redux学习1,Redux

    Redux流程图如上: Action就是一条命令 Store顾名思义就是存储数据的, Reducers是一个回调函数用于处理数据,它处理完数据会返回给Store存储起来 基本流程就是:组件中用Stor ...