环境:
VM+CentOS7+Linux+Nginx1.9.9+PHP7.1.6+Mysql5.7.17+Redis3.2.9说明:在安装memcached之前要先安装libevent扩展,安装配置:./configure –prefix=/usr/local/libevent
一、下载安装包
> wget http://memcached.org/files/memcached-1.4.38.tar.gz
二、安装
1、解压
> cd /usr/local/tar
> tar -zxvf memcached-1.4.38.tar.gz
2、编译源程序
> cd memcached-1.4.38
> ./configure --prefix=/usr/local/memcached --with-libevent=/usr/local/libevent
> make && make install
3、启动memcached
> /usr/local/memcached/bin/memcached -m 64 -p 11211 -l 192.168.28.128 -u nobody -d
4、查看memcached进程
> ps -ef | grep memcached #会显示进程号
5、停止memcache
> kill -9 进程号
6、设置memcache自启动
> vi /etc/init.d/memcached # 新建memcached文件保存
> cp /usr/local/tar/memcached-1.4.38/scripts/memcached.sysv /etc/init.d/memcached #需要将脚本中的memcached目录改为自己的memcached目录即可
> chmod 755 /etc/init.d/memcached #修改文件权限
> chkconfig --add memcached #将memcache加入系统服务
> chkconfig memcached on
> service memcached start #启动,也可以用/etc/init.d/memcached start
memcached文件内容如下:
#! /bin/sh
#
# chkconfig: - 55 45
# description: The memcached daemon is a network memory cache service.
# processname: memcached
# config: /etc/sysconfig/memcached
# Source function library.
. /etc/rc.d/init.d/functions
PORT=11211
USER=nobody
MAXCONN=1024
CACHESIZE=64
OPTIONS=""
if [ -f /etc/sysconfig/memcached ];then
. /etc/sysconfig/memcached
fi
# Check that networking is up.
if [ "$NETWORKING" = "no" ]
then
exit 0
fi
RETVAL=0
prog="memcached"
start () {
echo -n $"Starting $prog: "
# insure that /var/run/memcached has proper permissions
chown $USER /usr/local/memcached # 此处有修改
daemon /usr/local/memcached/bin/memcached -d -p $PORT -u $USER -m $CACHESIZE -c $MAXCONN -P # 此处有修改 /usr/local/memcached/memcached.pid $OPTIONS
RETVAL=$? # 此处有修改
echo
[ $RETVAL -eq 0 ] && touch /var/lock/subsys/memcached
}
stop () {
echo -n $"Stopping $prog: "
killproc memcached
RETVAL=$?
echo
if [ $RETVAL -eq 0 ] ; then
rm -f /var/lock/subsys/memcached
rm -f /usr/local/memcached/memcached.pid # 此处有修改
fi
}
restart () {
stop
start
}
# See how we were called.
case "$1" in
start)
start
;;
stop)
stop
;;
status)
status memcached
;;
restart|reload)
restart
;;
condrestart)
[ -f /usr/local/memcached ] && restart || : # 此处有修改
;;
*)
echo $"Usage: $0 {start|stop|status|restart|reload|condrestart}"
exit 1
esac
exit $?
7、自启动
> systemctl memcached start 或者 /etc/init.d/memcached start
PHP安装memcached
1、安装libmemcached
> wget https://launchpad.net/libmemcached/1.0/1.0.18/+download/libmemcached-1.0.18.tar.gz
> tar -zxvf libmemcached-1.0.18.tar.gz
> cd libmemcached-1.0.18
> ./configure
> make && make install
> ldconfig # 最好执行一下,清除缓存
2、安装memcached
> yum -y install git # 安装git,没有git,就安装git
> git clone https://github.com/php-memcached-dev/php-memcached.git # 下载
> cd php-memcached # 跑到里面去
> git checkout php7 # 进入php7分支
> /usr/local/php/bin/phpize # 就是phpize是用来扩展php扩展模块的,通过phpize可以建立php的外挂模块。
> ./configure --with-php-config=/usr/local/php/bin/php-config --disable-memcached-sasl
> make && make install
3、修改php.ini
> vi /etc/php.ini # 编辑php.ini,添加下面两行
> extension_dir="/usr/local/php/lib/php/extensions/no-debug-zts-20100525/"" #(上面安装好的目录,看看有没有)
> extension=memcached.so
> /etc/init.d/php-fpm restart # 重启php-fpm