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
在其中添加如下内容:

  1. extension=memcache.so               #在php.ini中引入扩展,如果提示扩展路径不对,检查phpinfo()中的extension_dir路径中是否有该文件。
  2. 执行  systemctl restart php-fpm     重启php-fpm, 此时phpinfo出现memcache

 配置memcached服务器

  1. 启动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

原文地址:https://www.cnblogs.com/lz0925/p/9482109.html