如何在linux下安装redis以及PHP中扩展redis

墨辰丷
发布: 2023-03-25 19:42:01
原创
1586 人浏览过

本篇文章主要介绍如何在linux下安装redis以及PHP中扩展redis,感兴趣的朋友参考下,希望对大家有所帮助。

第一部分:安装redis 
希望将redis安装到此目录 

/usr/local/redis
登录后复制

希望将安装包下载到此目录

/usr/local/src
登录后复制

那么安装过程指令如下:

$ mkdir /usr/local/redis  
$ cd /usr/local/src  
$ wget http://redis.googlecode.com/files/redis-2.6.14.tar.gz  
$ tar xzf redis-2.6.14.tar.gz   
$ ln -s redis-2.6.14 redis #建立一个链接  
$ cd redis  
$ make PREFIX=/usr/local/redis install #安装到指定目录中
登录后复制

注意上面的最后一行,我们通过PREFIX指定了安装的目录。如果make失败,一般是你们系统中还未安装gcc,那么可以通过yum安装:

yum install gcc
登录后复制

安装完成后,继续执行make.

在安装redis成功后,你将可以在/usr/local/redis看到一个bin的目录,里面包括了以下文件:

redis-benchmark  redis-check-aof  redis-check-dump  redis-cli  redis-server
登录后复制

1.复制脚本到/etc/rc.d/init.d目录
第二部分:将redis做成一个服务

ps: /etc/rc.d/init.d/目录下的脚本就类似与windows中的注册表,在系统启动的时候某些指定脚本将被执行
按以上步骤安装Redis时,其服务脚本位于:

/usr/local/src/redis/utils/redis_init_script
登录后复制

必须将其复制到/etc/rc.d/init.d的目录下:

cp /usr/local/src/redis/utils/redis_init_script /etc/rc.d/init.d/redis
登录后复制

如果这时添加注册服务:
将redis_init_script复制到/etc/rc.d/init.d/,同时易名为redis。

chkconfig --add redis
登录后复制

将报以下错误:

redis服务不支持chkconfig
登录后复制

2.更改redis脚本
为此,我们需要更改redis脚本。

打开使用vi打开脚本,查看脚本信息:

vim /etc/rc.d/init.d/redis
登录后复制

看到的内容如下(下内容是更改好的信息):

#!/bin/sh 
#chkconfig: 2345 80 90 
# Simple Redis init.d script conceived to work on Linux systems 
# as it does use of the /proc filesystem. 
   
REDISPORT=6379 
EXEC=/usr/local/redis/bin/redis-server 
CLIEXEC=/usr/local/redis/bin/redis-cli 
   
PIDFILE=/var/run/redis_${REDISPORT}.pid 
CONF="/etc/redis/${REDISPORT}.conf" 
   
case "$1" in 
    start) 
        if [ -f $PIDFILE ] 
        then 
                echo "$PIDFILE exists, process is already running or crashed" 
        else 
                echo "Starting Redis server..." 
                $EXEC $CONF & 
        fi 
        ;; 
    stop) 
        if [ ! -f $PIDFILE ] 
        then 
                echo "$PIDFILE does not exist, process is not running" 
        else 
                PID=$(cat $PIDFILE) 
                echo "Stopping ..." 
                $CLIEXEC -p $REDISPORT shutdown 
                while [ -x /proc/${PID} ] 
                do 
                    echo "Waiting for Redis to shutdown ..." 
                    sleep 1 
                done 
                echo "Redis stopped" 
        fi 
        ;; 
    *) 
        echo "Please use start or stop as first argument" 
        ;; 
esac
登录后复制

1.原文件是没有以下第2行的内容的,
和原配置文件相比:

#chkconfig: 2345 80 90
EXEC=/usr/local/redis/bin/redis-server   
CLIEXEC=/usr/local/redis/bin/redis-cli
登录后复制

2.原文件EXEC、CLIEXEC参数,也是有所更改。


3.redis开启的命令,以后台运行的方式执行。

$EXEC $CONF &
登录后复制

占据在前台,占用了主用户界面,造成其它的命令执行不了。
ps:注意后面的那个“&”,即是将服务转到后面运行的意思,否则启动服务时,Redis服务将

4.将redis配置文件拷贝到/etc/redis/${REDISPORT}.conf


这样,redis服务脚本指定的CONF就存在了。默认情况下,Redis未启用认证,可以通过开启6379.conf的requirepass 指定一个验证密码。

以上操作完成后,即可注册yedis服务:

chkconfig --add redis
登录后复制
service redis start
登录后复制

3.启动redis服务

第三,将Redis的命令所在目录添加到系统参数PATH中

修改profile文件:

vi /etc/profile
登录后复制

在最后行追加:

export PATH="$PATH:/usr/local/redis/bin"
登录后复制

然后马上应用这个文件:

. /etc/profile
登录后复制

这样就可以直接调用redis-cli的命令了,如下所示:
执行上一步的时候遇到权限不够:chmod 777 /etc/profile

$ redis-cli   
redis 127.0.0.1:6379> auth superman   
OK   
redis 127.0.0.1:6379> ping   
PONG   
redis 127.0.0.1:6379>
登录后复制

至此,redis 就成功安装了。

 

下载:https://github.com/nicolasff/phpredis/archive/2.2.4.tar.gz

上传phpredis-2.2.4.tar.gz到/usr/local/src目录

cd /usr/local/src #进入软件包存放目录

tar zxvf phpredis-2.2.4.tar.gz #解压

cd phpredis-2.2.4 #进入安装目录

/usr/local/php/bin/phpize #用phpize生成configure配置文件,目录可能不同。phpize是php中bin目录下的一个可执行文件,所有要先找到对应的目录。

./configure --with-php-config=/usr/local/php/bin/php-config  #配置,注意要先确保/usr/local/php/bin/php-config存在。对应php的bin目录下的php-config

make  #编译

make install  #安装

安装完成之后,出现下面的安装路径

/usr/local/php/lib/php/extensions/no-debug-non-zts-20090626/

也可能出现
Installing shared extensions:     /usr/lib64/php/modules/

这个是的正常,继续下面的。

2、配置php支持

vi /usr/local/php/etc/php.ini  #编辑配置文件,在最后一行添加以下内容

添加

extension="redis.so"

:wq! #保存退出

重新启动httpd------------->ok


相关推荐:

php处理redis

redis在nodejs中应用案例详解

php结合redis 秒杀商品的详解

以上是如何在linux下安装redis以及PHP中扩展redis的详细内容。更多信息请关注PHP中文网其他相关文章!

相关标签:
来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责声明 Sitemap
PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!