Linux系统下安装Redis非关系型数据库,并添加进php扩展

2019年6月25日 1 条评论 5.77k 次阅读 4 人点赞

本文是在安装完lamp环境的情况下进行的,如果没有安装lamp或者lnmp,请先行安装~

一、安装redis

1.1 安装redis

在http://redis.io/download页面查看redis版本,并下载安装,这里我们选择安装redis-3.2.0.tar.gz版本的压缩包

进入/usr/local/src这个临时目录下,我们开始对redis进行安装

命令:cd /usr/local/src

安装命令:wget http://download.redis.io/releases/redis-3.2.0.tar.gz

1.2 解压并编译文件

解压,并进入解压目录进行编译。编译成功后会在redis-3.2.0目录下生成相关文件

命令:tar xzf redis-3.2.0.tar.gz

命令:cd redis-3.2.0

开始编译:

命令:make

注:如果编译时报错没有发现gcc,那么安装gcc

命令:yum install gcc gcc-c++ kernel-devel

(如果有gcc且编译时没有报错请跳过这一步)

1.3 启动redis服务并测试是否安装成功

这时请启动redis服务

命令:(启动reids……命令有点长,输入完后按下回车)

命令:/usr/local/src/redis-3.2.0/src/redis-server /usr/local/src/redis-3.2.0/redis.conf &

当看到如下界面时,算是启动成功了

检测后台进程是否存在

命令:ps -ef |grep redis

进程如下所示

使用redis-cli客户端检测连接是否正常

命令:/usr/local/src/redis-3.2.0/src/redis-cli

如下所示:

我们测试一下是否可以写入值并且取出,如图所示

输入:exit退出客户端界面

1.4 关闭redis服务

关闭redis服务方法如下

命令:/usr/local/src/redis-3.2.0/src/redis-cli shutdown

总结:如此一来,我们在服务器上就已经安装完redis服务了,但是安装完成不代表就可以直接结合php使用,我们需要给php相应的redis扩展,才能通过php操纵redis数据库

二:安装redis的php扩展

2.1 安装phpize (安装前,请检查自己是否之前安装过这个工具)

命令:yum install php-devel

注:由于我一开始安装lamp环境时就有这个工具了,所以我就不装了,如果不知道自己有没有这个工具,请看如下操作

检查是否安装过phpize

命令:find / -name "phpize"

如果有结果,就代表已经安装过了(例如命令执行结果为:/usr/bin/phpize)

2.2 下载扩展源码包,直接用wget方式下载

先返回之前的临时目录下(/usr/local/src)

命令:cd /usr/local/src

命令:wget https://github.com/nicolasff/phpredis/archive/master.zip

2.3 解压

命令:unzip master.zip

进入解压完的目录(解压完的目录名为:phpredis-master)

命令:cd phpredis-master

2.4 使用phpize配置

进入该文件夹后,开始编译php扩展

命令:phpize

如图所示:

2.5 配置并且编译环境

命令: ./configure --with-php-config=/usr/bin/php-config

这里请注意 with-php-config=/usr/bin/php-config 这句话

请把/usr/bin/php-config修改为自己的php配置路径地址

(如果不知道自己的路径在哪的同学请看如下操作)

命令:find / -name "php-config"

我的命令执行结果为:/usr/bin/php-config (把这句话替换上去就可以了)

这里开始编译安装

命令:make && make install

编译完成后显示如下结果就代表编译成功了

进入/usr/lib64/php/modules/文件夹,我们就会发现有redis.so的扩展

2.6 修改php.ini文件,在文件最底部附近添加下面的扩展内容

extension=redis.so

如图所示:

2.7 重启服务器

命令:service httpd restart

最后查看phpinfo,显示如有redis则代表扩展安装成功:

PHP代码测试redis数据库

如果遇到以下问题,给出了以下方法可以尝试解决

问题1:空白页,未发现php有报错信息

解决方案如下: 请修改php.ini文件

找到error_reporting与display_errors这一段并且修改为如下

将 display_errors = Off 修改为

display_errors = On

将error_reporting = E_ALL & ~E_DEPRECATED & ~E_STRICT修改为如下

重启服务器即可看到错误

问题2:遇到权限不足问题

例如报错:Fatal error: Uncaught RedisException: Permission denied

解决方案如下:

命令:setsebool -P httpd_can_network_connect=1

问题3:遇到连接失败(解决方案很简单,开启redis服务即可)

例如报错:Fatal error: Uncaught RedisException: Connection refused in…..

解决方案如下:

命令:/usr/local/src/redis-3.2.0/src/redis-server /usr/local/src/redis-3.2.0/redis.conf &

兰陵美酒郁金香

大道至简 Simplicity is the ultimate form of sophistication.

文章评论(1)

你必须 登录 才能发表评论