linux centos7 lnmp 安装redis及php开启redis扩展 自测

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_39131177/article/details/84134641

最近项目需要把memcache换成redis,所以就安装redis,大概费了三四个小时把,才把各种坑填满,现在来了解一下:

首先,你的linux环境能用,php也可以正常访问,就是说lnmp环境没问题,那么我们来一起看一下,由于是昨天安装的,所以图片之类的,就是找的别人跟我出一样错误的博客上找的,但内容是自己的。

一、服务器安装redis

1.先去网址下载redis

wget http://download.redis.io/releases/redis-2.8.13.tar.gz

然后解压

tar zxvf redis-2.8.13.tar.gz
cd redis-2.8.13

然后

make PREFIX=/usr/local/redis install
#PREFIX=/usr/local/redis可以省略,省略情况下redis会默认安装到/usr/local/bin目录下

可能会报错如下图:

cd src && make install
make[1]: Entering directory `/usr/export/software/redis-2.8.13/src'
Hint: To run 'make test' is a good idea ;) 

        INSTALL install 
        INSTALL install 
        INSTALL install 
        INSTALL install 
        INSTALL install 
make[1]: Leaving directory `/usr/export/software/redis-2.8.13/src'

根据提示执行:cd src && make install

[root@localhost redis-2.8.13]# cd src && make install

Hint: To run 'make test' is a good idea ;) 

        INSTALL install 
        INSTALL install 
        INSTALL install 
        INSTALL install 
        INSTALL install 


[root@localhost src]#

ok没有报错,当然你也可以测试一下,回到上个目录,执行 make test

[root@localhost redis-2.8.13]# make test
Cleanup: may take some time... OK
Starting test server at port 11111

底下会显示很多ok,然后等会就可以了,我测试的是到36

然后,再次执行   make install

执行完之后,算是安装了一大半,接着改一下配置文件

--- 创建redis日志目录,和数据文件目录

[root@localhost src]#cd /usr/local/redis-2.8.13
[root@localhost redis-2.8.13]# cp redis.conf  /usr/local/redis/
[root@localhost redis-2.8.13]# mkdir -p /usr/local/redis/log
[root@localhost redis-2.8.13]# mkdir -p /usr/local/redis/db

修改redis.conf配置项

[root@localhost redis-2.8.13]# cd /usr/local/redis/
[root@localhost redis]# vi redis.conf
#修改下面内容

daemonize yes  #确保守护进程开启 
pidfile /usr/local/redis/redis.pid 
logfile /usr/local/redis/log
dir /usr/local/redis/db

#解释一下 
#pidfile 当redis作为守护进程运行的时候,它会把 pid 默认写到 /var/run/redis.pid 文件里面,
# logfile  就是redis日志   

# dir   工作目录
# 例如上面的 dbfilename 只指定了文件名,
# 但是它会写入到这个目录下。这个配置项一定是个目录,而不能是文件名。

# daemonize redis采用的是单进程多线程的模式。当redis.conf中选项daemonize设置成yes时,代表开启
# 守护进程模式。在该模式下,redis会在后台运行,并将进程pid号写入至redis.conf选项pidfile设置的文件中,
# 此时redis将一直运行,除非手动kill该进程。

启动redis

[root@localhost redis]#cd /usr/local/redis/bin/
[root@localhost bin]# ./redis-server

 

OK,开启成功,当然有种错误是这个

表示redis已经启用,关闭重新开启就是了

然后就是设置开机自启

vi /etc/init.d/redis
#!/bin/sh
# chkconfig: 2345 10 90
# description: Start and Stop redis
PATH=/usr/local/redis/bin:/sbin:/usr/bin:/bin

REDISPORT=6379
EXEC=/usr/local/redis/bin/redis-server
CLIEXEC=/usr/local/redis/bin/redis-cli

PIDFILE=/var/run/redis.pid
CONF="/etc/redis/redis.conf"

case "$1" in
    start)
        if [ -f $PIDFILE ]
        then
                echo "$PIDFILE exists, process is already running or crashed"
        else
                echo "Starting Redis server..."
                echo "start SUCCESS"
                $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

 添加权限

chmod 777 /etc/init.d/redis

 开机自启

chkconfig redis on

下面你就可以用命令测试了

service redis start  
service redis stop

好的,linux安装redis已经完成,现在要做的是,php开启redis扩展,让php可以操作redis

二、php开启redis扩展

在上面redis已经安装成功,并且php没有问题情况下,可以让php开启redis扩展

1.下载资源

 [root@localhost local]# wget https://github.com/phpredis/phpredis/archive/2.2.8.tar.gz

2.解压安装,并进入redis目录
[root@localhost local]#tar -zxvf 2.2.8.tar.gz
[root@localhost local]#cd phpredis-2.2.8/

3.查看你的phpize在哪个目录下面,找到它,下面是我php的路径
[root@
localhost phpredis-2.2.8]#/usr/local/php/bin/phpize
  Configuring for:
   PHP Api Version:         20100412
   Zend Module Api No:      20100525
   Zend Extension Api No:   220100525
记得用root用户
[root@localhost phpredis-2.2.8]# ./configure --with-php-config=/usr/local/php/bin/php-config
[root@localhost phpredis-2.2.8]# make
[root@localhost phpredis-2.2.8]# make install
4.修改你的php.ini文件,添加redis扩展

extension=redis.so

重启php-fpm

然后

php -m

命令可以看到redis扩展已经开启,当然了我安装的也没那么顺利,不过关机之后再次开机,没问题的话就都好了,所以强烈建议,当所有东西都设置完毕之后,关机,重启是万能的

猜你喜欢

转载自blog.csdn.net/qq_39131177/article/details/84134641