>  기사  >  백엔드 개발  >  Linux에서 Redis를 설치하고 PHP에서 Redis를 확장하는 방법

Linux에서 Redis를 설치하고 PHP에서 Redis를 확장하는 방법

墨辰丷
墨辰丷원래의
2018-05-15 17:32:291598검색

本篇文章主要介绍如何在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 # Unzip

cd phpredis-2.2.4 # 설치 디렉토리를 입력하세요

/usr/local/php/bin/phpize # phpize를 사용하여 구성 구성 파일을 생성하세요. 디렉토리는 다를 수 있습니다. phpize는 php의 bin 디렉터리에 있는 실행 파일이므로 먼저 해당 디렉터리를 찾아야 합니다.

./configure --with-php-config=/usr/local/php/bin/php-config #구성, /usr/local/php/bin/php-config가 먼저 존재하는지 확인하세요. php

make의 bin 디렉토리에 있는 php-config에 해당 #Compile

make install #Installation

설치가 완료되면 다음과 같은 설치 경로가 나옵니다

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

도 나타날 수 있습니다
공유 확장 설치: /usr/lib64/php/modules/

이것은 정상입니다. 아래에서 계속하세요.

2. PHP 지원 구성

vi /usr/local/php/etc/php.ini # 구성 파일을 편집하고 마지막 줄에 다음 내용을 추가합니다

Add

extension="redis.so"

:wq! #저장종료

httpd 다시 시작------------->ok


관련 권장사항:

php 처리 redis

nodejs에서 redis의 자세한 적용 사례

php 상세 redis와 결합된 플래시 세일 상품 설명

위 내용은 Linux에서 Redis를 설치하고 PHP에서 Redis를 확장하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.