首頁 >後端開發 >php教程 >如何在linux下安裝redis以及PHP中擴充redis

如何在linux下安裝redis以及PHP中擴充redis

墨辰丷
墨辰丷原創
2018-05-15 17:32:291627瀏覽

本篇文章主要介绍如何在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中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn