http://www.cnblogs.com/ryanlamp/p/6385452.html
一.下载软件包
下载redis wget http://download.redis.io/releases/redis-3.0.7.tar.gz
下载redis的php扩展 wget http://pecl.php.net/get/redis-3.1.1.tgz
二.安装redis服务
cd redis-3.0.7
make
执行make命令,最后几行的输出结果
Hint: To run 'make test' is a good idea ;)
执行安装命令
make install
提示:
根据提示,执行:cd src && make install
提示:
按照提示执行:make test
解决方法参考:http://www.linuxfromscratch.org/blfs/view/cvs/general/tcl.html
也可以使用:yum install tcl 命令安装
后来经搜索发现不需要安装,直接到src目录下执行 ./redis-server 就可以
在make成功以后,会在src目录下多出一些可执行文件:redis-server,redis-cli等等。
方便期间用cp命令复制到usr目录下运行。
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:
$ /usr/local/bin/redis-server /etc/redis/6379.conf
执行 /usr/local/bin/redis-cli成功即可
期间有可能出现的异常:
异常一:
make[2]: cc: Command not found
异常原因:没有安装gcc
解决方案:yum install gcc-c++
异常二:
zmalloc.h:51:31: error: jemalloc/jemalloc.h: No such file or directory
异常原因:一些编译依赖或原来编译遗留出现的问题
解决方案:make distclean。清理一下,然后再make。
在make成功以后,需要make test。在make test出现异常。
异常一:
couldn't execute "tclsh8.5": no such file or directory
异常原因:没有安装tcl
解决方案:yum install -y tcl。
三.安装phpredis扩展
解压redis-3.1.1.tgz文件后进入到目录
找到本环境的phpize位置(locate phpize)
执行sudo /usr/bin/phpize (生成configure等文件)
找到php-config的位置
执行 sudo ./configure --with-php-config=/usr/bin/php-config 最终会看到如下结果
执行sudo make
若出现如下错误
说明有可能是phpredis的版本有点低,可以去http://pecl.php.net/package/redis上面下载最新的试试
若出现如下结果
说明安装是正常的
按照指示 执行 sudo make test
sudo make install
修改php.ini
找到本环境所用到的php.ini文件
我的环境是/etc/php.ini
添加 extension = redis.so
重启http
sudo service httpd restart
通过phpinfo()确认redis扩展已安装成功