CentOS7安装Memcached

2019-05-15

Memcached是一个自由开源的,高性能,分布式内存对象缓存系统。

Memcached是以LiveJournal旗下Danga Interactive公司的Brad Fitzpatric为首开发的一款软件。现在已成为mixi、hatena、Facebook、Vox、LiveJournal等众多服务中提高Web应用扩展性的重要因素。

Memcached是一种基于内存的key-value存储,用来存储小块的任意数据(字符串、对象)。这些数据可以是数据库调用、API调用或者是页面渲染的结果。

Memcached简洁而强大。它的简洁设计便于快速开发,减轻开发难度,解决了大数据量缓存的很多问题。它的API兼容大部分流行的开发语言。

本质上,它是一个简洁的key-value存储系统。

一般的使用目的是,通过缓存数据库查询结果,减少数据库访问次数,以提高动态Web应用的速度、提高可扩展性。

######################安装libevent函数库
libevent各版本地址:http://libevent.org/old-releases.html
在此我安装当前最稳定版本:libevent-2.0.21
1.下载:#wget https://github.com/downloads/libevent/libevent/libevent-2.0.21-stable.tar.gz
2.解压:#tar -zxvf libevent-2.0.21-stable.tar.gz
3 配置及编译安装:
#cd libevent-2.0.21-stable
#./configure --prefix=/usr/local/libevent-2.0.21-stable
#make
#make install

######################memcached各版本下载地址:https://github.com/memcached/memcached/wiki/ReleaseNotes
######################安装memcached数据库
yum -y update
yum -y install memcached
或者
在此我安装当前最稳定版本: memcache-1.5.9
1.下载:#wget http://memcached.org/files/memcached-1.5.9.tar.gz
2.解压:#tar -zxvf memcached-1.5.9.tar.gz
cd memcached-1.5.9
#./configure -with-libevent=/usr/local/libevent-2.0.21-stable/ --prefix=/usr/local/memcached
#make
#make install

启动
/usr/local/memcached-1.5.9/bin/memcached -d -m 1028 -p 11211 -u root -l 127.0.0.1
或者systemctl restart memcached
vi /etc/sysconfig/memcached
OPTIONS='-l 127.0.0.1'
找到值CACHESIZE并将其更改为至少1GB。
CACHESIZE="1GB"

memcached-tool 127.0.0.1:11211 stats

说明memcached已经成功安装。
接下来是配置php的memcached扩展了。
php的memcached扩展是基于libmemcached,所以要先安装libmemcached.

yum -y install php-pecl-memcache
/etc/init.d/php-fpm restart
检查Phpinfo()是否包含memcached

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

安装libmemcached
找到我们刚才下载的libmemcached-1.0.18.tar.gz
解压:
#tar zxcf libmemcached-1.0.18.tar.gz1
cd libmemcached-1.0.181
3然后配置路径并安装:
# ./configure --prefix=/usr/local/libmemcached --with-memcached
#make
#make install

##################安装php-memcached扩展
然后需要下载php-memcached扩展:
#wget http://pecl.php.net/get/memcache-3.0.8.tgz
#tar zxvf memcached-3.0.8.tgz
然后进入该目录:
#cd memcached-3.0.8

找到自己的phpize路径:
# find / -name “phpize”
/usr/bin/phpize
# ./configure --enable-memcached --with-php-config=/usr/bin/php-config --with-libmemcached-dir=/usr/local/libmemcached --disable-memcached
#make
#make install
##########################在编译的时候出现“php-smart_str.h”没有找到的错误!
我们可以在github里面找到pecl-memcache支持PHP7的分支,请按以下操作即可完成memcache中扩展安装

cd /opt/LNMP/php-7.3.5/ext
git clone https://github.com/websupport-sk/pecl-memcache memcache

cd memcache
# yum install autoconf
# /usr/local/php/bin/phpize
# ./configure --with-php-config=/usr/local/php/bin/php-config
# make && make install
ls -l /usr/local/php/lib/php/extensions/no-debug-non-zts-20180731/

vi /usr/local/php/etc/php.ini

# 在 Dynamic Extensions 代码块中添加如下扩展

extension=/usr/local/php/lib/php/extensions/no-debug-non-zts-20180731/memcache.so

phpinfo()检查
memcache
memcache support
enabled
Version 4.0.3
Revision $Revision$

###############
测试memcached

安装成功后,我们通过代码测试memcached是否正常工作:
addServer('127.0.0.1',11211))
{
die('连接失败!');
}
$mem->set('name','lf');
var_dump($mem->get('name'));12345678

页面输出结果为:
string(2) "lf"1

说明memcached已经安装成功并且正常工作。

分类:Linux | 标签: |

相关日志

评论被关闭!