设为首页 收藏本站
查看: 936|回复: 0

[经验分享] php扩展memcache和memcached安装

[复制链接]

尚未签到

发表于 2018-12-25 11:01:20 | 显示全部楼层 |阅读模式
  
  首先简单介绍下memcache和memcached的区别
  两个不同版本的php的memcached的客户端
  new memcache是pecl扩展库版本
  new memcached是libmemcached版本
  memcache最早是在2004年2月开发的,最后更新是在2013年4月,而memcached最早是在2009年1月开发的,最后更新是在2014年1月更新的。所以memcache的历史比memcached早。
  在安装memcache扩展的时候并不要求安装其他东东,但是在安装memcached的时候会要求你安装libmemcached,问题来了,libmemcached是memcache的C客户端,它具有的优点是低内存,线程安全等特点。
  
  安装PHP的Memcached扩展
  1.下载文件:
  https://launchpad.net/libmemcached/+download, 下载libmemcached依赖库
  http://pecl.php.net/package/memcached, 下载php memcached扩展
  2. 解压
  tar zxvf libmemcached-0.44.tar.gz
  tar zxvf memcached-1.0.2.tgz
  3. 编译libmemcached
  cd libmemcached-0.44
  ./configure --prefix=/usr/local/libmemcached
  make && make install
  4. 编译memcached扩展
  cd memcached-1.0.2
  /usr/local/php/bin/php/phpize
  ./configure -with-php-config=/usr/local/php/bin/php-config --with-libmemcached-dir=/usr/local/libmemcached --enable-memcached #与安装libmemcached时指定的prefix一致
  make && make install
  5. 安装扩展
  vim /usr/local/php/bin/php.ini
  #加入一行: extersion=memcached.so
  6. 重启php服务
  7. 验证(查看phpinfo)
  memcached
  memcached support    enabled
  Version     1.0.2
  libmemcached version     0.44
  Session support     yes
  igbinary support     no
  ###如果在添加扩展so文件时,直接修改php.ini,那么可能会出现下面的错误:
  /usr/lib/php/modules/memcached.so: undefined symbol: php_json_encode in Unknown on line 0
  这个错误是因为在 memcached.so 加载之前必须加载 json.so ,而json.so是在/etc/php.d/json.ini中加载,这样会导致json.so在memcached.so之后加载;可以删除/etc /php.d/json.ini文件,而在php.ini中直接添加extensino=json.so来解决(添加在memcached.so之前)
  安装PHP的Memcache扩展
  1.在http://pecl.php.net/package/memcache 选择相应想要下载的memcache版本。
  2.安装PHP的memcache扩展
  tar zxf memcache-3.0.6.tgz
  cd memcache-3.0.6
  /usr/local/php/bin/phpize
  ./configure --enable-memcache=/usr/local/memcache --with-php-config=/usr/local/php/bin/php-config
  make && make install
  3.上述安装完后会有类似这样的提示:
  Installing shared extensions: /usr/local/php/lib/php/extensions/no-debug-non-zts-2007xxxx/
  4.把php.ini中的extension_dir = “./”修改为
  extension_dir = “/usr/local/php/lib/php/extensions/no-debug-non-zts-2007xxxx/”
  添加一行来载入memcache扩展:extension=memcache.so
  5.重启apache,service httpd restart
  测试,用phpinfo查看


运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-655623-1-1.html 上篇帖子: InnoDB memcached插件的前提条件 下篇帖子: php扩展memcache和memcached安装
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表