博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Centos 安装Memcache + phpmemcached
阅读量:7117 次
发布时间:2019-06-28

本文共 4542 字,大约阅读时间需要 15 分钟。

1.memcache服务端安装:

1)下载包libevent-1.4.14b-stable.tar.gz和memcached-1.4.5.ta.gz

tar zvxf libevent-1.4.14b-stable.tar.gz 
cd libevent-1.4.14b-stable 
./configure --prefix=/usr   
//默认路径安装,默认目录/usr/local/lib
make && make install
 
检查是否安装成功:
 ls -al /usr/local/libevent-2.0.21-stable/lib | grep libevent
 
 

3) memcached服务端安装  下载地址(https://memcached.org/)

1
2
3
4
tar zxvf memcached-1.4.5.tar.gz
cd memcached-1.4.5
./configure --prefix=/usr/local/memcache/ --with-libevent=/usr
make & make install

启动:/usr/local/bin/memcached  -d  -m 512  -p  11211 -u root

 -d  选项是启动一个守护进程。
-m  分配给Memcache使用的内存数量,单位是MB,默认64MB。
-l  监听的IP地址。(默认:INADDR_ANY,所有地址)
-p  设置Memcache的TCP监听的端口,最好是1024以上的端口。
-u  运行Memcache的用户,如果当前为root的话,需要使用此参数指定用户。
-c  选项是最大运行的并发连接数,默认是1024。
-P  设置保存Memcache的pid文件。
 

配置开机自启动

#  vim /etc/init.d/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=11211USER=nobodyMAXCONN=1024CACHESIZE=64OPTIONS="" if [ -f /etc/sysconfig/memcached ];then    . /etc/sysconfig/memcachedfi # Check that networking is up.if [ "$NETWORKING" = "no" ]then    exit 0fi RETVAL=0prog="memcached" start () {    echo -n $"Starting $prog: "    # insure that /var/run/memcached has proper permissions    chown $USER /usr/local/java/memcached-1.5.9    daemon /usr/local/java/memcached-1.5.9/bin/memcached -d -p $PORT -u $USER  -m $CACHESIZE -c $MAXCONN -P /usr/local/java/memcached-1.5.9/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/java/memcached-1.5.9/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/java/memcached-1.5.9 ] && restart || :    ;;    *)    echo $"Usage: $0 {start|stop|status|restart|reload|condrestart}"    exit 1esac exit $?

并通过chmod命令赋予权限执行命令:chmod 755 /etc/init.d/memcached 

将memcached加入系统服务

执行命令:

# chkconfig --add memcached

# chkconfig memcached on

启动memcached服务

执行命令:

# service memcached start

通过命令  ps -ef|grep memcached  查看memcached服务是否启动成功,如果没有成功,检查脚本里的memcached目录是否正确,或者memcached是否安装完整。

 
 
4)php 扩展 memcached(下载地址http://pecl.php.net/package/memcached)
  php7 安装只能安装memcache
  下载地址( https://github.com/websupport-sk/pecl-memcache/archive/php7.zip   )
  php7 memcached安装地址
  下载地址(     )
yum install gcc-c++ -y
yum install cyrus-sasl-devel
 
 

下载libmemcached源码

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

 
 
客户端需安装libmemcached库
1 cd /usr/local/src2 wget https://launchpad.net/libmemcached/1.0/1.0.18/+download/libmemcached-1.0.18.tar.gz3 tar zxvf libmemcached-1.0.18.tar.gz4 cd libmemcached-1.0.185 ./configure --prefix=/usr/local/libmemcached6 make && make install

安装php-fpm的memcached扩展

1 cd /usr/local/src2 wget http://pecl.php.net/get/memcached-2.2.0.tgz3 tar zxvf memcached-2.2.0.tgz4 cd memcached-2.2.0

到了这一步,我们要使用安装php时生成的 phpize 来生成 configure 配置文件

1 /usr/local/php/bin/phpize \2 --with-php-config=/usr/local/php/bin/php-config3 ./configure --with-php-config=/usr/local/php/bin/php-config \4 --with-libmemcached-dir=/usr/local/libmemcached --disable-memcached-sasl5 make && make install

--with-php-config 指定 php-config,该文件与 phpize 所在目录相同, 

--with-libmemcached-dir 指定 libmemcached 安装目录,就刚才我们 --prefix 那个目录 ,

--disable-memcached-sasl 说明我们系统不支持sasl.h

如果安装成功,会提示:Installing shared extension:/usr/local/php/lib/extensions/no-debug-non-zts-20160524/ 等类信息

接下来,我们编辑php配置文件php.ini,把 php-memcached 扩展加到配置文件。

在 php.ini 中添加以下内容:

1 extension=memcached.so

最后重启nginx和php-fpm

重启完之后,检查是否安装完成php-memcached扩展

在nginx的web根目录下创建一个test.php文件

1 

在浏览器中输入服务器ip地址

以上说明memcached的php扩展安装成功以。

php其他扩展均可根据此方法安装。

 使用php简单操作memcached

其实 memcached 和 redis 、 是没什么两样,同是数据库,(redis是非关系数据库,mysql是关系数据库),因此使用也是差不多的,同样具有命令行使用和php操作使用,关于memcached的更多命令大家可以自行百度。

1 
addServers($server); 8 9 $mem->set('name','zhangsan',15); ////设置缓存值,有效时间3600秒,如果有效时间设置为0,则表示该缓存值永久存在的(系统重启前)10 echo $mem->get('name');11 12 ?>

参考:

 
 
 
 
 

 

1 
addServers($server); 8 9 $mem->set('name','zhangsan',15); ////设置缓存值,有效时间3600秒,如果有效时间设置为0,则表示该缓存值永久存在的(系统重启前)10 echo $mem->get('name');11 12 ?>

参考:

转载于:https://www.cnblogs.com/jasonLiu2018/articles/10622657.html

你可能感兴趣的文章
linux 下用python 遍历文件夹
查看>>
chmod和permission
查看>>
一个奇怪的问题的解决方法
查看>>
组策略应用之二:重定向文件夹
查看>>
Linux下建立静态库的实例讲解
查看>>
mac显示隐藏文件
查看>>
4-2 ADO.NET-查询和检索数据7
查看>>
组策略设置IE 11的Compatible View
查看>>
调研分享:Flipboard的使用特点和页面信息抽取机制
查看>>
TextMate Footnotes
查看>>
sizeof那道笔试题的秘密
查看>>
WCF简单教程(11) REST调用
查看>>
(Abstract Factory)抽象工厂模式的Java实现
查看>>
链表基础以及约瑟夫环的实现
查看>>
【iOS开发必备指南合集一】申请IDP/真机调试/GameCenter 指南/OpenFeint指南
查看>>
JavaScript的方法和技巧
查看>>
Android系统默认Home应用程序(Launcher)的启动过程源代码分析(4)
查看>>
Exchange Server2010系列之七:多邮箱搜索找出神秘邮件的幕后黑手
查看>>
《Pro ASP.NET MVC 3 Framework》学习笔记目录
查看>>
/dev/null Read-only file system 系统无法启动
查看>>