CentOS7安装Redis

安装Redis,并使用PHP连接Redis

一、准备工作

1、安装LNMP

参考:搭建LNMP服务器-CSDN博客文章浏览阅读876次,点赞14次,收藏4次。LNMP 架构通常用于构建高性能、可扩展的 Web 应用程序。Nginx 作为前端 Web 服务器,负责处理 HTTP 请求和响应,并将请求代理到后端 PHP 应用程序(通过 FastCGI、PHP-FPM 等)。PHP 应用程序与 MySQL数据库进行交互,以存储和检索数据。https://blog.csdn.net/weixin_44295677/article/details/138958399?spm=1001.2014.3001.5501

二、安装Redis

1、下载Redis二进制包
bash 复制代码
wget https://download.redis.io/releases/redis-5.0.12.tar.gz
2、解压
bash 复制代码
tar -zxvf redis-5.0.12.tar.gz
mv redis-5.0.12 /opt/redis
3、编译安装

3.1 编译

bash 复制代码
cd /opt/redis
make

3.2 安装

bash 复制代码
make install

3.3 初始化redis

bash 复制代码
# cd utils/

# ./install-server.sh
Welcome to the redis service installer
This script will help you easily set up a running redis server

Please select the redis port for this instance: [6379] 
Selecting default: 6379
Please select the redis config file name [/opt/redis/6379.conf] 
Selected default - /etc/redis/6379.conf
Please select the redis log file name [/var/log/redis_6379.log] 
Selected default - /var/log/redis_6379.log
Please select the data directory for this instance [/var/lib/redis/6379] 
Selected default - /var/lib/redis/6379
Please select the redis executable path [/usr/local/bin/redis-server] 
Selected config:
Port           : 6379
Config file    : /opt/redis/6379.conf
Log file       : /var/log/redis_6379.log
Data dir       : /var/lib/redis/6379
Executable     : /usr/local/bin/redis-server
Cli Executable : /usr/local/bin/redis-cli
4、修改配置文件

1、修改配置

bash 复制代码
vi /opt/redis/redis.conf

# 修改如下内容
# bind 127.0.0.1
bind 0.0.0.0
# 配置密码
requirepass your_password

2、修改启动脚本

bash 复制代码
vi /etc/init.d/redis_6379


EXEC=/usr/local/bin/redis-server
CLIEXEC=/usr/local/bin/redis-cli
PIDFILE=/var/run/redis_6379.pid
CONF="/etc/redis/6379.conf"
REDISPORT="6379"
# 添加密码变量,密码需要和配置文件中设置的一致
PASSWORD="final123"

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 -a $PASSWORD shutdown
            while [ -x /proc/${PID} ]
            do
                echo "Waiting for Redis to shutdown ..."
                sleep 1
            done
            echo "Redis stopped"
        fi
        ;;
    status)
        PID=$(cat $PIDFILE)
        if [ ! -x /proc/${PID} ]
        then
            echo 'Redis is not running'
        else
            echo "Redis is running ($PID)"
        fi
        ;;
    restart)
        $0 stop
        $0 start
        ;;
    *)
        echo "Please use start, stop, restart or status as first argument"
        ;;
esac
5、启动服务
bash 复制代码
/etc/init.d/redis_6379 start
# 支持stop、restart、status
6、测试
bash 复制代码
# 登录redis服务
[root@localhost opt]# redis-cli 
127.0.0.1:6379> auth password
OK

三、安装PHP-Redis

1、安装依赖包
bash 复制代码
yum -y install php-devel
2、下载二进制安装包
bash 复制代码
下载地址:
https://github.com/phpredis/phpredis/releases/tag/6.0.2
3、解压
bash 复制代码
tar -zxvf phpredis-6.0.2.tar.gz
4、执行phpize
bash 复制代码
cd phpredis-6.0.2/
mkdir -p /opt/php-redis/

phpize
5、编译三部曲

5.1 执行编译脚本

bash 复制代码
# --with-php-config 获取php配置信息,以方便正确编译和链接到PHP
./configure --prefix=/opt/php-redis/ --with-php-config=/opt/php/bin/php-config

5.2 编译

bash 复制代码
make

5.3 安装

bash 复制代码
make install
6、修改php配置文件
bash 复制代码
vi /opt/php/lib/php.ini

# 添加如下内容
## 可以通过 find / -name "redis.so" 查找到所在路径
extension_dir="/opt/php/lib/php/extensions/no-debug-non-zts-20180731/"
extension=redis.so
7、重启php服务
bash 复制代码
systemctl restart php-frm.service

四、测试

1、编写测试脚本
bash 复制代码
vi /opt/www/php/redis.php

<?php
$redis = new redis();
$redis->connect("REDIS_IP","6379");
$redis->auth("YOUR_PASSWORD");
$redis->set("TEST","TEST-REDIS");
echo $redis->get("TEST");
?>
2、浏览器访问测试
相关推荐
丑八怪大丑1 天前
SQL数据类型
java·数据库·sql
m0_624578591 天前
CSS定位如何实现多行文字垂直居中_通过绝对定位模拟表格
jvm·数据库·python
李温候1 天前
互联网大厂Java求职者面试全攻略
java·数据库·面试·orm·构建工具·web框架·互联网大厂
dfdfadffa1 天前
mysql如何排查网络延迟引起的数据库连接问题_使用ping测试
jvm·数据库·python
2303_821287381 天前
JavaScript中Redux-Thunk处理异步Action的任务流
jvm·数据库·python
月落归舟1 天前
数据库必学的五大核心约束
数据库
2301_782040451 天前
JavaScript中类 Class 语法的可读性与维护性优势
jvm·数据库·python
2401_871492851 天前
HTML函数在旧版Windows跑得动吗_系统版本与硬件协同影响【指南】
jvm·数据库·python
kexnjdcncnxjs1 天前
如何利用宝塔面板进行数据迁移_使用宝塔整机备份功能
jvm·数据库·python
人道领域1 天前
【黑马点评日记】RedisGEO实战:黑马点评附近商铺功能
java·数据库·redis·adb