Linux下安装redis

来源:互联网 发布:电脑测温度软件 编辑:程序博客网 时间:2024/06/03 19:43
一、安装
下载redis安装包
wgethttp://download.redis.io/releases/redis-2.8.19.tar.g
解压
tar -zxvf redis-2.8.19.tar.gz
cd redis-2.8.19
 
编译安装
make PREFIX=/usr/local/redis install
其中,PREFIX=/usr/local/redis表示指定安装目录
安装成功后,cd /usr/local/redis
看到一个bin目录,里面包含了redis的启动文件
ll bin
 
cd bin
./redis-server

 
可以看到,redis已经成功启动,表示redis安装成功

二、注册为系统服务
进如redis源码目录
cd /usr/local/redis-2.8.19
 
查找文件
find -name *init*
可以看到一个./utils/redis_init_script文件,这是redis的脚本服务文件,复制一份到/etc/init.d,并命名为redis
cp ./utils/redis_init_script /etc/init.d/redis
 
cd /etc/init.d
Vi redis
看到下面一段代码,并修改为:
REDISPORT=6379EXEC=/usr/local/redis/bin/redis-serverCLIEXEC=/usr/local/redis/bin/redis-cli PIDFILE=/var/run/redis.pidCONF="/etc/redis/${REDISPORT}.conf"

其中 PIDFILE=/var/run/redis.pid表示redis的进程id对应的文件,
CONF="/etc/redis/${REDISPORT}.conf"表示配置文件
 
还有一段,修改为:
echo "Starting Redis server..."                $EXEC $CONF &

其中,&表示后台启动
 
创建新文件夹
mkdir /etc/redis
进入到redis源码目录,
cd /usr/local/redis-2.8.19
将配置文件copy一份到刚刚新建的目录,并命名为6379.conf
cp redis.conf /etc/redis/6379.conf
 
cd /etc/redis
Vi 6379.conf
找到这一行,将no改为yes,让redis支持后台启动
daemonize  no  
改为 daemonize yes
保存退出
 
接下来将redis添加到系统服务
Chkconfig --add redis
如果报以下错误:
service redis does not support chkconfig
 
vi打开redis文件
vi redis
在文件顶部的注释中,添加下面两行
# chkconfig:   2345 90 10
# description:  Redis is a persistent key-value database
表示 redis服务必须在运行级2345下被启动或关闭,启动的优先级是90,关闭的优先级是10
保存退出,重新执行命令
Chkconfig  --add redis
不报错表示成功
 
此时,只用以下命令对redis进行启动|关闭
service redis start | stop
 
三、redis命令所在目录添加到系统path
修改profile文件
vi /etc/profile
在最后行追加:
export PATH="$PATH:/usr/local/redis/bin"
马上应用此文件:
. /etc/profile
然后就可以直接使用redis命令了
先开启redis
service redis start
然后打开redis客户端:
redis-cli
出现下面的信息:
127.0.0.1:6379>
成功打开客户端
 
四、PHP添加redis扩展
下载phpredis扩展包
wgethttps://github.com/phpredis/phpredis/archive/2.2.8.tar.gz
tar -zxvf 2.2.8.tar.gz
解压后得到 phpredis-2.2.8
cd phpredis-2.2.8
 /usr/local/php/bin/phpize
如果出现:
cannot find autoconf. Please check your autoconf installation and the
$PHP_AUTOCONF environment variable. Then, rerun this script.
是以为没有安装autoconf
yum -y install autoconf
安装autoconf成功之后,重新执行
/usr/local/php/bin/phpize
 ./configure --with-php-config=/usr/local/php/bin/php-config
make
make install
编译成功,出现
Installing shared extensions:     /usr/local/php/lib/php/extensions/no-debug-non-zts-20131226/
这是redis扩展所在目录
打开php.ini
vi /usr/local/php/etc/php.ini
如果文件不存在,进入php源码目录
cd /usr/local/php-5.6.27/
cp php.ini-development /usr/local/php/etc/php.ini
cd /usr/local/php/etc
vi +100000 php.ini
在最后加上:
extension_dir = "/usr/local/php/lib/php/extensions/no-debug-non-zts-20131226/"extension = redis.so

保存退出
重启php
service php-fpm restart
浏览器打开http://192.168.152.128/phpinfo.php
看到php的安装信息
 
表示我们的phpredis扩展已安装成功
 
接下来,用实例说话
cd /usr/local/nginx/html
vi redisTest.php
内容如下
<?php    //连接本地的 Redis 服务   $redis = new Redis();   $redis->connect('127.0.0.1', 6379);   echo "Connection to server sucessfully";         //查看服务是否运行   echo "Server is running: " . $redis->ping();?>

保存退出
在浏览器输入:
http://192.168.152.128/redisTest.php
页面输出:
Connection to server sucessfullyServer is running: +PONG
Php执行redis成功!
原创粉丝点击