文章目录
一、概述
- Redis(Remote Dictionary Server)是一种高性能的开源内存数据库,它具有多种用途和功能,可以充当缓存、消息队列、数据库、实时分析和数据处理平台等多种角色。
- Redis 的另一个作用是实现分布式锁,原理是使用“SETNX”加锁,但是这种方式要自己实现过期守护技术。但是Redis 实现分布式锁并不是最好的方式,一般分布式锁使用 zookeeper 。
- 官方地址:https://redis.io/
- 国内地址:http://redis.cn/
- 源码下载地址:http://download.redis.io/releases/redis-6.0.6.tar.gz
二、准备工作
- 安装编译环境
yum install gcc -y
- 注意,安装6.0以前就这样就可以编译了,但是6.0及以上版本会报错,还需将 gcc 升级到5.0及以上
gcc -v
yum -y install centos-release-scl
yum -y install devtoolset-9-gcc devtoolset-9-gcc-c++ devtoolset-9-binutils
scl enable devtoolset-9 bash
- 以上命令详细解释
yum -y install centos-release-scl
安装CentOS Software Collections (SCL) 仓库,它包含了一些额外的软件包,其中就包括了DevToolset。yum -y install devtoolset-9-gcc devtoolset-9-gcc-c++ devtoolset-9-binutils
安装了DevToolset-9中的GCC编译器、C++编译器和Binutils(二进制工具集)等组件。scl enable devtoolset-9 bash
启用了DevToolset-9。这意味着你在当前终端会话中将使用DevToolset-9中的工具,而不是系统默认的工具。
- 下面是我没有安装 gcc 5的错误情况
三、编译及安装
3.1 下载Redis源码
- 依次执行以下命令(若已经安装 wget 可以直接下载)
yum install wget -y
wget http://download.redis.io/releases/redis-6.0.6.tar.gz
3.2 编译Redis源码
- 依次执行以下命令
# 解压redis源码
tar -zxvf redis-6.0.6.tar.gz
# 进行 redis 源码目录
cd redis-6.0.6
# 编译 redis 源码
make
- 编译过程中有几点注意
- 如果执行 make 命令出错,可以先执行“ make distclean ”
- make 完成后会在 src 目录下生成对应的可执行文件,如执行 ./src/redis-server 就可以启动 redis 服务了
3.3 安装Redis
- 编译成功后,在redis源码目录中执行以下命令进行安装
make install
- 安装过和中有几点注意
- 在执行 make install 的时候还可以指定安装路径,如:“ make install PREFIX=/opt/redis6 ”
四、将Redis安装到系统服务
4.1 配置Redis环境变量
- 修改配置文件/etc/profile
vi /etc/profile
- 在文件最后添加以下内容
export REDIS_HOME=/opt/redis6
export PATH=$PATH:$REDIS_HOME/bin
- 使用配置生效
source /etc/profile
4.2 准备Redis配置文件
mkdir -p /opt/redis6/conf
cp redis-6.0.6/redis.conf /opt/redis6/conf/
cp redis-6.0.6/sentinel.conf /opt/redis6/conf/
4.2 安装Redis服务
- 将redis服务拷贝到系统目录
cp redis-6.0.6/utils/systemd-redis_server.service /usr/lib/systemd/system/redis6.service
- 修改服务配置路径,将redis路径修改为您安装的路径保存即可
vi /usr/lib/systemd/system/redis6.service
# 根据情况修改内容,如下图
# ExecStart=/opt/redis6/bin/redis-server /opt/redis6/conf/redis.conf --supervised systemd --daemonize no
# ExecStop=/opt/redis6/bin/redis-cli 127.0.0.1 -p 6379 shutdown
systemctl daemon-reload
如果centos7以下系统直接使用命令注意,安装过程中直接回车确定即,也可手动指定端口号、日志文件保存位置、数据文件保存位置。
五、启动/停止 Redis 服务
5.1 启动 Redis 服务
systemctl start redis6
5.2 停止 Redis 服务
systemctl stop redis6
5.3 查看 Redis 服务状态
systemctl status redis6
- 也可通过进程查看 Redis是否在运行
ps -ef | grep redis
5.4 设置 Redis 开机启动
systemctl enable redis6
六、使用Redis命令行客户端测试
- 使用 Redis 自的客户端 redis-cli 连接 Redis 服务器测试,如下:
redis-cli
- 在 redis-cli 后可以指定一些参数 ,如下:
# 指定主机
redis-cli -h 127.0.0.1
# 指定端口
redis-cli -p 7379
# 指定库(在Redis中有默认有8个库,对应数据1~8)
redis-cli -n 8