linux 下安装redis以及php Redis扩展
环境配置: centos6.0 nginx/1.0.0 php/5.3.8 mysql/5.5.17
步骤一、下载redis
可以去http://redis.io/去下载最新版本
我用的是 redis 2.8.11
进入软件安装包存放目录: cd /var/install/software/
wget http://download.redis.io/redis-stable.tar.gz
步骤二、编译源程序
tar xvzf redis-stable.tar.gz
cd redis-stable
make
make install
如果make出现了异常:
1)make[2]: cc: Command not found
异常原因:没有安装gcc
解决方案:yum install gcc-c++
2)zmalloc.h:51:31: error: jemalloc/jemalloc.h: No such file or directory
异常原因:一些编译依赖或原来编译遗留出现的问题
解决方案:make distclean。清理一下,然后再make。
在make成功之后,需要make test 在make test 出现异常
1) couldn't execute "tclsh8.5": no such file or directory
异常原因:没有安装tcl
解决方案:yum install -y tcl。
make命令执行完成后,会在src目录下生成5个可执行文件,分别是redis-server、redis-cli、redis-benchmark、redis-check-aof、redis-check-dump,它们的作用如下:
redis-server:Redis服务器的daemon启动程序
redis-cli:Redis命令行操作工具。当然,你也可以用telnet根据其纯文本协议来操作
redis-benchmark:Redis性能测试工具,测试Redis在你的系统及你的配置下的读写性能
redis-check-aof:更新日志检查
redis-check-dump:用于本地数据库检查
步骤三、配置
cp redis-server /usr/local/bin/
cp redis-cli /usr/local/bin/
然后新建目录,存放配置文件
mkdir /etc/redis
mkdir /var/redis
mkdir /var/redis/log
mkdir /var/redis/run
mkdir /var/redis/6379
在redis解压根目录中找到配置文件模板,复制到如下位置。
cp redis.conf /etc/redis/6379.conf通过vim命令修改
daemonize yes
pidfile /var/redis/run/redis_6379.pid
logfile /var/redis/log/redis_6379.log
dir /var/redis/6379
最后运行redis:
$ redis-server /etc/redis/6379.conf
可用netstat –atln 查看端口是启动安装成功
步聚四、操作Redis数据库
# ./redis-cli
"http://img.blog.csdn.net/20140617150954812?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvaV9icnVjZQ==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="" />
下面我们来简单的操作一下数据库。在实例开启的情况下:
1、插入数据
redis 127.0.0.1:6379> set name wwl
OK
设置一个key-value对。
2、查询数据
redis 127.0.0.1:6379> get name
"wwl"
取出key所对应的value。
3、删除键值
redis 127.0.0.1:6379> del name
删除这个key及对应的value。
4、验证键是否存在
redis 127.0.0.1:6379> exists name
(integer) 0
其中0,代表此key不存在;1代表存在。
步骤五、下载phpredis扩展
先去下载https://github.com/nicolasff/phpredis/downloads
#wget https://github.com/nicolasff/phpredis/downloads
# tar -zxvf nicolasff-phpredis-2.1.3-124-gd4ad907.tar.gz
# mv nicolasff-phpredis-d4ad907 php-5.3.8/ext/phpredis/
# cd php-5.3.8/ext/phpredis/
# /usr/local/php/bin/phpize
# ./configure --with-php-config=/usr/local/php/bin/php-config
# make && make install
配置php.ini
vi /usr/local/php/lib/php.ini
(加入:
extension=redis.so
)
先要看看有没有extension_dir=/…….
重启apache或者nginx (reload php---> /etc/init.d/php-fpm restart)
到正常情况到此可以用phpinfo看到redis扩展
如果phpinfo没有redis扩展信息请添加/etc/php.d/redis.ini (路径是我本地的)
redis.ini 内容如下:
; Enable mysql extension module
extension=redis.so
重启apache或者nginx (reload php---> /etc/init.d/php-fpm restart)