服务端

# rpm -qa | grep sasl

# cyrus-sasl-plain-2.1.23-8.el6.i686

# cyrus-sasl-devel-2.1.23-8.el6.i686

# cyrus-sasl-2.1.23-8.el6.i686

# cyrus-sasl-lib-2.1.23-8.el6.i686

# cyrus-sasl-gssapi-2.1.23-8.el6.i686

# cyrus-sasl-md5-2.1.23-8.el6.i686

# saslauthd -v

saslauthd 2.1.23

authentication mechanisms: getpwent kerberos5 pam rimap shadow ldap

# vi /etc/sysconfig/saslauthd

MECH=shadow

# /etc/init.d/saslauthd restart

停止 saslauthd:[确定]

启动 saslauthd:[确定]

# ps aux | grep saslauthd

# /etc/init.d/saslauthd start

# chkconfig saslauthd on

# /usr/sbin/testsaslauthd -u root -p 123

0: OK "Success."

testsaslauthd出现0: NO "authentication failed"的解决方法

# setsebool -P allow_saslauthd_read_shadow 1

/usr/sbin/saslpasswd2 -a memcached -c root

Password:

Again (for verification):

4. 2 安装libevent

# tar -zxvf libevent-2.0.12-stable.tar.gz

# cd libevent-2.0.12-stable

# ./configure --prefix=/usr/local/libevent

# make

# make install

4. 3 安装memcached Server

# tar -zxvf memcached-1.4.6.tar.gz

# cd memcached-1.4.6

# ./configure --enable-sasl --prefix=/usr/local/memcached --with-libevent=/usr/local/libevent

make

make install

# cd /etc/init.d

# vi memcached

#!/bin/sh

#

# Startup script for the server of memcached

#http://blog.rekfan.com/?p=172

# processname: memcached

# pidfile: /usr/local/memcached/memcached.pid

# logfile: /usr/local/memcached/memcached_log.txt

# memcached_home: /etc/memcached

# chkconfig: 35 21 79

# description: Start and stop memcached Service

# Source function library

. /etc/rc.d/init.d/functions

RETVAL=0

prog="memcached"

basedir=/usr/local/memcached

cmd=${basedir}/bin/memcached

pidfile="$basedir/${prog}.pid"

#logfile="$basedir/memcached_log.txt"

# 设置memcached启动参数

ipaddr="192.168.1.101"          # 绑定侦听的IP地址

port="11211"                    # 服务端口

username="root"                 # 运行程序的用户身份

max_memory=64                   # default: 64M | 最大使用内存

max_simul_conn=1024             # default: 1024 | 最大同时连接数

#maxcon=51200

#growth_factor=1.3              # default: 1.25 | 块大小增长因子

#thread_num=6                   # default: 4

#verbose="-vv"                  # 查看详细启动信息

#bind_protocol=binary           # ascii, binary, or auto (default)

start() {

echo -n $"Starting service: $prog"

$cmd -d -m $max_memory -u $username -l $ipaddr -p $port -c $max_simul_conn -P $pidfile

RETVAL=$?

echo

[ $RETVAL -eq 0 ] && touch /var/lock/subsys/$prog

}

stop() {

echo -n $"Stopping service: $prog  "

run_user=`whoami`

pidlist=`ps -ef | grep $run_user | grep memcached | grep -v grep | awk '{print($2)}'`

for pid in $pidlist

do

#           echo "pid=$pid"

kill -9 $pid

if [ $? -ne 0 ]; then

return 1

fi

done

RETVAL=$?

echo

[ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/$prog

}

# See how we were called.

case "$1" in

start)

start

;;

stop)

stop

;;

#reload)

#    reload

#    ;;

restart)

stop

start

;;

#condrestart)

#    if [ -f /var/lock/subsys/$prog ]; then

#        stop

#        start

#    fi

#    ;;

status)

status memcached

;;

*)

echo "Usage: $0 {start|stop|restart|status}"

exit 1

esac

exit $RETVAL

# chmod +x memcached

# chkconfig --add memcached

# chkconfig memcached on

启动memcached服务器,启用SASL验证功能,在启动时需要加-S(大写S)参数

# service memcached start

或者

# /usr/local/memcached/bin/memcached -d -S -m 64 -u root -l 192.168.1.10 -p 11211 -c 1024 -P /usr/local/memcached/memcached.pid

# ps –ef|grep memcached

启动命令参数如下表

启动方式

-d

以守护程序(daemon)方式运行

-u root

指定用户,如果当前为 root,需要使用此参数指定用户

-P /tmp/a.pid

保存PID到指定文件

内存设置

-m 1024

数据内存数量,不包含memcached本身占用,单位为MB

-M

内存不够时禁止LRU,报错

-n 48

初始chunk=key+suffix+value+32结构体,默认48字节

-f 1.25

增长因子,默认1.25

-L

启用大内存页,可以降低内存浪费,改进性能

安全设置

-S

启用sasl安全验证功能,开启后,客户端需要提供用户名密码方能访问memcached

连接设置

-l 127.0.0.1

监听的 IP地址,本机可以不设置此参数

-p 11211

TCP端口,默认为11211,可以不设置

-U 11211

UDP端口,默认为11211,0为关闭

并发设置

-c 1024

最大并发连接数,默认1024,最好是200

-t 4

线程数,默认4。由于memcached采用NIO,所以更多线程没有太多作用

-R 20

每个event连接最大并发数,默认20

-C

禁用CAS命令(可以禁止版本计数,减少开销)

客户端

1. 确认是否安装gcc-c++等组件

# yum install gcc+ gcc-c++

2. 安装SASL相关环境

# yum install cyrus-sasl-plain cyrus-sasl  cyrus-sasl-devel  cyrus-sasl-lib

3. 安装源码包libmemcached

# wget https://launchpad.net/libmemcached/1.0/1.0.16/+download/libmemcached-1.0.16.tar.gz

# tar zxvf libmemcached-1.0.16.tar.gz

# cd libmemcached-1.0.16

# ./configure --prefix=/usr/local/libmemcached --enable-sasl

# make

# make install

4. 安装源码包memcached

安装MEMCACHED前需要确认是否有zlib-devel

# yum install zlib-devel

# wget http://pecl.php.net/get/memcached-2.1.0.tgz

# tar zxvf memcached-2.1.0.tgz

# cd memcached-2.1.0

# /usr/local/php/bin/phpize

# ./configure --with-php-config=/usr/local/php/bin/php-config --with-config-file-path=/usr/local/php/etc -with-libmemcached-dir=/usr/local/libmemcached --enable-memcached-sasl

# make

# make install

5. 修改php.ini文件

/usr/local/php/etc/php.ini

增加

extension=memcached.so

memcached.use_sasl = 1

6. 设置帐号密码进行鉴权

memcached setSaslAuthData('root', '123'); //设置帐号密码进行鉴权

php7 memcached sasl,memcached sasl相关推荐

  1. php7 memcached sasl,Mac安装memcached扩展支持sasl

    Mac安装memcached扩展支持sasl Memcached在服务以及扩展中,默认都是不支持用户名和密码,但是如果需要可以通过打开sasl来提供用户名和密码服务.所以在memcached的扩展与服 ...

  2. 安装Memcached及Memcached配置

    一.安装Memcached及Memcached配置和状态查询            要想使用Memcached做缓存首先需要安装Memcached服务,安装方法如下:       1. 下载Memca ...

  3. php memcached mysql_php memcached+Mysql(主从)

    /* index.php   程序入口,用来构造sql(如查询,更新) config.php  配置参数(memcache,mysql) init.php    封装memcached操作(memca ...

  4. Memcached(四)Memcached的CAS协议

    1. 什么是CAS协议 很多中文的资料都不会告诉大家CAS的全称是什么,不过一定不要把CAS当作中国科学院(China Academy of Sciences)的缩写.Google.com一下,CAS ...

  5. sasl java_kafka sasl java api

    第一种 Properties props = new Properties(); props.put(ProducerConfig.BOOTSTRAP_SERVERS_CONFIG, "no ...

  6. kafka sasl java_Kafka SASL 安全认证

    java client 中添加 SASL 设置信息: Java client consumer properties配置.png 注意 sasl.jaas.config 配置中的分号必不可少. pac ...

  7. 启动Memcached报错:/usr/local/memcached/bin/memcached: error while loading shared libraries: libevent-2.1

    1.查找文件放在哪里 sudo find / -name libevent-2.1.so.6 发现放在/usr/local/lib/libevent-2.1.so.6下. 2.创建软链接 sudo l ...

  8. php memcached mysql_PHP Memcached使用详解

    翻译烂到家了,看不顺眼轻喷... 1.为什么要使用PDO? mysql_函数已经过时,相当一段时间以来,mysql_函数在其他SQL数据库编程接口方面已经有所差别:它不支持预处理,存储过程,事务等一些 ...

  9. Centos 7.2 及php7环境下升级memcache未果,改安装 memcached

    由于前文"Centos 7.2 yum安装php7"中升级了php到php7,导致之前可以正常使用的phpmyadmin.memcache等无法继续使用,需要重新编译安装,memc ...

最新文章

  1. 开发日记-20190914 关键词 汇编语言王爽版 第四章
  2. Java Script 之 Promise
  3. java面试题001
  4. java reference详解_Java Reference详解
  5. 解决margin-top塌陷问题的六种方法
  6. JavaScript文本收缩展开 showdetail
  7. java 利用Scanner解析逗号字符串
  8. 轴承过盈量程序matlab,轴承matlab处置程序.doc
  9. arcgis属性字段fid修改 修改出现bad value
  10. 摄氏——华氏温度转换表
  11. Mongodb-WeAdmin基于SpringBoot实现的Mongodb管理工具
  12. ECE与计算机相关吗,ECE(电子和计算机工程)相关专业的申请经验分享
  13. Golang + Gin + cytocsape.js + neo4j
  14. TPO Official 53 Independent Writing Task
  15. 足球队巡礼 - 英超西汉姆联
  16. tushare pro的token凭证码设置教程详解
  17. python实现火车票查询_Python3 实现火车票查询工具
  18. ArcGIS基础:实现 xian1980转换为CGCS2000
  19. 抓取在线书店信息:从在线书店获取图书信息及价格
  20. FPGA接MIPI接口sensor

热门文章

  1. 《云边有个小卖部》的优秀读后感作文2100字
  2. java三次指数平滑_时间序列挖掘-预测算法-三次指数平滑法(Holt-Winters)
  3. C语言词法分析程序的设计与实现
  4. echart地图飞线图
  5. 微服务踩坑记之Zuul注册到Eureka
  6. js获取当前时间的前几天时间
  7. python+pyautogui+pyperclip实现QQ自动加好友功能
  8. 精读《图解密码技术》--第一章 环游密码世界
  9. 邓俊辉数据结构与算法学习笔记-第四章
  10. SQL SERVER数据库置疑后恢复步骤