linux下安装PHP扩展memcache
windows安装memcached服务以及扩展,移步 https://www.cnblogs.com/w1618/p/10796377.html
公司的服务器 CentOS 7.5,PHP 5.6 下面都是最新的版本(支持到PHP5.6)
如需php7 下支持memcache扩展,请移步 https://www.cnblogs.com/hejun695/p/5369610.html
PS:Memcached 是缓存服务器,类似于mysqld 是mysql的服务器 这种关系
memcache 是php的一个早期版本的memcache扩展, 官网更新到2013年,所以官网是不支持PHP7的,需要PHP7支持的,请移步上边的网址,使用 githup 的分支
memcached 是php中一个新的memcached扩展,支持PHP7,但是更memcache在使用上有区别, 但是更好用,加了很多新功能
准备工作:先下载三个安装包到 /tmp 文件夹 memcached(缓存服务器),memcache(php扩展),libevent(一个依赖软件)
cd /tmp
下载libevent2.1.8
命令: wget https://github.com/libevent/libevent/releases/download/release-2.1.8-stable/libevent-2.1.8-stable.tar.gz
下载memcached1.5.10
命令:wget http://www.memcached.org/files/memcached-1.5.10.tar.gz
下载php扩展memcache3.0.8
命令: wget http://pecl.php.net/get/memcache-3.0.8.tgz (如服务器上无法下载,可以下载到本地,然后FTP传上去)
安装步骤:
1. 安装libevent
cd /tmp #首先进入到该下载包的目录
tar zxvf libevent-2.1.8-stable.tar.gz #解压包
cd libevent-2.1.8-stable #进入到解压的目录
./configure --prefix=/usr/local #编译前配置,生成Makefile文件,路径可自行更改(注意prefix前面和with前面都是两个 - )
make; #编译
make install #安装
#测试是否安装成功执行 ls -al /usr/local/lib | grep libevent出现类似下图说明成功

2. 安装memcached
cd /tmp #首先进入到该下载包的目录
tar zxvf memcached-1.5.10.tar.gz #解压包
cd memcached-1.5.10 #进入到解压的目录
./configure --with-libevent=/usr/local #编译前配置,生成Makefile文件,路径必须与libevent中一致
make;#编译
make install #安装
#测试是否安装成功
执行 ls -al /usr/local/bin/memcached 出现下图则说明成功

通过以上操作,就完成了memcached服务器的安装。现在来完成memcache的php扩展安装
3. 安装扩展
cd /tmp #首先进入到该下载包的目录
tar zxvf memcache-3.0.8.tgz #解压包
cd memcache-3.0.8 #进入到解压的目录
/usr/bin/phpize #动态为php添加扩展。phpize路径可能不一致,请根据自己的实际情况配置 不知道的话可以执行 whereis phpize查看
./configure –enable-memcache –with-php-config=/usr/local/php/bin/php-config –with-zlib-dir #php-config的路径请根据自己安装PHP的位置填写
make; #编译
make install #编译
到这里软件安装就完成了,如果提示你缺少什么软件,比如zlib.h,就继续安装这个软件就行了, 我就一次成功
然后是配置php.ini文件,
配置php.ini文件
首先通过phpinfo函数,找到php.ini的路径,我的是:/usr/local/php/etc/php.ini,
命令: vim /usr/local/php/etc/php.ini
在其中添加如下内容:
- extension=memcache.so #在php.ini中引入扩展,如果提示扩展路径不对,检查phpinfo()中的extension_dir路径中是否有该文件。
- 执行 systemctl restart php-fpm 重启php-fpm, 此时phpinfo出现memcache

配置memcached服务器
- 启动memcached服务器
memcached -d -m 10 -u root -l 127.0.0.1 -p 11211 -c 256 -P /tmp/memcached.pid
到此结束
参数说明:
-d选项是启动一个守护进程,
-m是分配给Memcache使用的内存数量,单位是MB,我这里是10MB,
-u是运行Memcache的用户,我这里是root,
-l是监听的服务器IP地址,如果有多个地址的话,我这里指定了服务器的IP地址127.0.0.1,
-p是设置Memcache监听的端口,我这里设置了11211,最好是1024以上的端口,
-c选项是最大运行的并发连接数,默认是1024,我这里设置了256,按照你服务器的负载量来设定,
-P是设置保存Memcache的pid文件,我这里是保存在 /tmp/memcached.pid
2. 结束memcached进行
kill cat /tmp/memcached.pid
3. 执行netstat -ant 检查memcached是否已经启动
测试php的memcache扩展
<?php
$mem = new Memcache;
$mem->connect("192.168.12.201", 13001);
$mem->set('key','This is a test!', 0, 60);
$val = $mem->get('key');
echo $val;
?>
写在后面:大家有兴趣可以将session改为使用memcache来保存。php自身使用文件的方式,不太好,动不动文件大小总和就上G了。
Memcached 安装及启动脚本 http://www.linuxidc.com/Linux/2013-07/87641.htm
PHP中使用Memcached的性能问题 http://www.linuxidc.com/Linux/2013-06/85883.htm
Ubuntu下安装Memcached及命令解释 http://www.linuxidc.com/Linux/2013-06/85832.htm
Memcached的安装和应用 http://www.linuxidc.com/Linux/2013-08/89165.htm
使用Nginx+Memcached的小图片存储方案 http://www.linuxidc.com/Linux/2013-11/92390.htm
Memcached使用入门 http://www.linuxidc.com/Linux/2011-12/49516p2.htm
Memcached 的详细介绍:请点这里
Memcached 的下载地址:请点这里
更多CentOS相关信息见CentOS 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=14
参考原文地址 https://www.linuxidc.com/Linux/2015-05/117170.htm
linux下安装PHP扩展memcache的更多相关文章
- linux下安装opcache扩展
linux下安装opcache扩展 参考:http://www.php.net/manual/zh/opcache.installation.php 1 2 3 4 5 6 7 wget http ...
- 总结 Linux 下安装 PHP 扩展步骤
总结一下 Linux 下安装 PHP 扩展步骤,这里以安装 PHP 的 redis 扩展为例. 一.拿到扩展包下载地址,下载扩展包 pecl 上搜索 redis wget http://pecl.ph ...
- linux 下安装php扩展
linux下安装php扩展 步骤: 1.在扩展解压包目录执行 phpize 2.执行 ./configure --with-php-config=/usr/local/php/bin/php-conf ...
- Linux 下安装Yaf扩展
1.在官网下载了yaf扩展包 yaf-3.0.3.tgz 2.开始安装yaf扩展 tar zxvf yaf-3.0.3.tgz cd yaf-3.0.3 phpize ./configure --wi ...
- Linux下安装php 扩展fileinfo
在项目初始部署环境的时候,可能考虑的并不全面,就会少装一些扩展,这里讲解如何添加fileinfo扩展 1.找到php安装的压缩包 2.将压缩包cp到 /data目录下,并解压 cp php-7.0.3 ...
- linux下安装swoole扩展
一.下载swoole 地址:https://github.com/swoole/swoole-src二.将下载好的压缩包放在linux服务器下三.解压压缩包到任意目录 # unzip swoole-s ...
- redis在linux下安装以及扩展
安装过redis后发现回头忘了,今天重新安装记录下 首先 我是在home下创建redis文件 mkdir redis 然后直接用wget安装 wget http://download.redis ...
- Redis linux 下安装 及扩展配置
1.首先在/usr/local/ 创建文件夹 reids Cd /usr/local/ mkdir redis 2.把redis安装包放在redis目录下面进行解压phpredis-2.2.4.tar ...
- linux下安装phpredis扩展--update20141127
***今天又装了phpredis,更新一下phpredis的下在地址**** 1.下载php所需的模块owlient-phpredis-90ecd17.tar.gz(tar.gz文件下载:owlien ...
随机推荐
- 【转载】C#工具类:人民币金额转换为中文大写
在涉及到金融业务这一块的系统设计中,时常能够遇到的情况是需要将阿拉伯数字的人民币金额自动转换为中文的大写金额.现在互联网上也有很多网站提供此类服务,只要你输入人民币的阿拉伯数字金额,输入后自动给你转换 ...
- .NET LINQ 实现跨数据库数据的整合
如果要在不同的数据库之间,要把数据整合到一起,或者对数据进行统计分析的话,实现起来比较麻烦. 一般情况下我们第一时间想到的方法是通过前置机实现,在前置机上安装一个数据库和同步数据程序,定时的把数据同步 ...
- 【微服务No.2】polly微服务故障处理库
熔断.降级: 熔断:熔断就是我们常说的“保险丝”,意为当服务出现某些状况时,切断服务,从而防止应用程序不断地常识执行可能会失败的操作造成系统的“雪崩”,或者大量的超时等待导致系统卡死等情况,很多地方也 ...
- struct的匿名用法详解
Go只提供类型而不用写字段名的方式,也就是匿名字段,也称为嵌入字段. 当匿名字段是一个struct的时候,那么这个struct所拥有的全部字段都被隐式地引入了当前定义的这个struct. 举个例子,看 ...
- python学习笔记(十 二)、操作数据库
每一种语言都少不了多数据库进行各种操作. python支持多种数据库.有关python支持的数据库清单,请参阅:https://wiki.python.org/moin/DatabaseInterfa ...
- 多线程(5)async&await
.net 4.0的Task已经让我们可以非常简单地使用多线程,并且可以有返回值,也可以支持线程的取消等操作,可谓已经很强大了.但.net 4.5为我们带来了async&await,使得实现多线 ...
- AJAX跨站处理解决方案
//直接使用ajax会提示跨站失败 $.ajax({ type : 'POST', url : 'http://www.abc.com/api', data : '', dataType : 'tex ...
- 如何在vue单页应用中使用百度地图
作为一名开发人员,每次接到开发任务,我们首先应该先分析需求,然后再思考技术方案和解决方案.三思而后行,这是一个好的习惯. 需求:本项目是采用vue组件化开发的单页应用项目,现需要在项目中引入百度的地图 ...
- 2018年IOS/Android UI设计规范
更多参考: 2017最新设计尺寸及规范 UI : 2018年IOS/Android UI设计规范 转载:https://www.jianshu.com/p/03e5cdd4ffd6
- Android 图片Bitmap,drawable,res资源图片之间转换
一.知识介绍 ①res资源图片是放在项目res文件下的资源图片 ②BitMap位图,一般文件后缀为BMP,需要编码器编码,如RGB565,RGB8888等.一种逐像素的显示对象,其执行效率高,但缺点也 ...