第十七章:第42节Linux(ubuntu)php安装memcached拓展

更新于:2019-01-16 17:05:00

通过PHPinfo查看:


1.png


目前PHP还不支持memcached,我们来开启下PHP的memcached拓展。


1)登陆http://pecl.php.net,搜索memcached,如下图所示,注意版本的选择要根据php的版本来选择。


PECL是PHP扩展的存储库。


1.png


获得下载地址:http://pecl.php.net/get/memcached-3.1.3.tgz


2)下载解压并生成configure文件


cd /usr/local/src
wget http://pecl.php.net/get/memcached-3.1.3.tgz 下载 
tar -zxvf memcached-3.1.3.tgz 解压
cd memcached-3.1.3 进入目录


运行phpize命令生成configure文件,要写全phpize的路径,phpize在哪?


1.png


phpize的作用


执行phpize文件,注意当前的目录一定要在刚解压后的目录里。

/usr/local/php/bin/phpize

1.png


缺少东西了,使用apt安装下autoconf


1.png


再次执行

/usr/local/php/bin/phpize

此时文件夹里会有configure文件


3)安装


运行configure命令,配置时要将php-config的路径附上

./configure --with-php-config=/usr/local/php/bin/php-config


缺少pkg-config了,安装上,重新configure命令。


1.png


缺少libmemcached库,安装上,重新configure命令。


1.png


make && make install 编译安装


这样在PHP的扩展目录里

1.png


多了一个memcached.so文件


1.png


4)修改PHP配置文件


1.png


在php.ini中添加memcached扩展

extension=memcached.so


重启下PHP

kill -USR2 `cat /usr/local/php/var/run/php-fpm.pid`


1.png


memcached扩展安装成功。


附:


对于这个内存缓存系统,PHP有两个扩展,分别是memcache和memcached扩展。貌似 PECL 还不支持在 PHP7 下安装 memcache 扩展,楠神尝试在Linux上安装了几个,可能我当前下载的最新版本PHP吧,始终都不成功,我也懒得搞了,memcached扩展现在更流行,性能更好。


Memcache和Memcached 其实是一个东西,只是php中用的扩展不一样。2009年左右有人丰富memcache的用法和性能,编写了一个libmemcached是独立第三方client library,PHP才有了memcached扩展,用法也有了很大的改进,比如添加了 getMulti() 批量获取键值。


windows下只能安装php_memcache.dll 扩展,并不存在 php_memcached.dll, 所以windows 中只能使用$mcd = new Memcache(),不能使用new Memcached()。


memcache与memcached的区别