当前位置: 首页 > news >正文

openEuler 22.03 安装 Redis 6.2.9,支持离线安装

目录

    • 一、环境检查
      • 1.1 必要环境检查
      • 1.2 在线安装(有网络)
      • 1.3 离线安装(无网络)
    • 二、下载Redis
      • 2.1 在线下载
      • 2.2 离线下载
    • 三、安装Redis
    • 四、配置Redis服务
    • 五、开机自启服务
    • 六、开放防火墙端口
    • 七、常用命令

一、环境检查

1.1 必要环境检查

# 查看 gcc 版本
[root@openeuler ~]# gcc --version
# 查看 make 版本
[root@openeuler ~]# make --version
# 查看 tcl 版本
[root@openeuler ~]# tclsh
% info patchlevel
# 查看 gcc make tcl 位置
[root@openeuler ~]# readlink -f $(which gcc make tclsh)

1.2 在线安装(有网络)

[root@openeuler ~]# sudo dnf install -y gcc* make tcl tcl-devel

1.3 离线安装(无网络)

1.3.1 软件包下载
openEuler软件中心:https://easysoftware.openeuler.org/zh/rpm
华为开源镜像站:http://mirrors.huaweicloud.com/openeuler/openEuler-22.03-LTS-SP4/everything/x86_64/Packages/
华中科技大学镜像站:https://mirrors.hust.edu.cn/openeuler/openEuler-22.03-LTS-SP4/everything/x86_64/Packages/

序号RPM包
1gcc-10.3.1-62.oe2203sp4.x86_64.rpm
2gcc-c+±10.3.1-62.oe2203sp4.x86_64.rpm
3gcc-gdb-plugin-10.3.1-62.oe2203sp4.x86_64.rpm
4gcc-gfortran-10.3.1-62.oe2203sp4.x86_64.rpm
5gcc-objc+±10.3.1-62.oe2203sp4.x86_64.rpm
6gcc-objc-10.3.1-62.oe2203sp4.x86_64.rpm
7gcc-plugin-devel-10.3.1-62.oe2203sp4.x86_64.rpm
8gcc_secure-1.0-0.13.oe2203sp4.x86_64.rpm
9make-4.3-4.oe2203sp4.x86_64.rpm
10make-devel-4.3-4.oe2203sp4.x86_64.rpm
11tcl-8.6.12-4.oe2203sp4.x86_64.rpm
12tcl-devel-8.6.12-4.oe2203sp4.x86_64.rpm

1.3.1 软件包安装

# 切换到 RPM 包所在目录,假设 RPM 包存放在 /home/rpm_packages 目录下
[root@openeuler ~]# cd /home/rpm_packages
# 正常安装命令
[root@openeuler rpm_packages]# sudo rpm -ivh *.rpm --nodeps
# 强制安装命令
# 重要事项:没把握的话,千万不要用下面这个命令,这个命令会忽略依赖和兼容性,可能会导致基础组件被卸载掉。
[root@openeuler rpm_packages]# sudo rpm -Uvh *.rpm --nodeps --force

二、下载Redis

2.1 在线下载

# 创建安装目录
[root@openeuler ~]# mkdir /mnt/redis
[root@openeuler ~]# cd /mnt/redis/
# 在线下载安装包
[root@openeuler redis]# wget https://download.redis.io/releases/redis-6.2.9.tar.gz

2.2 离线下载

下载地址:https://download.redis.io/releases/
上传到 /mnt/redis 目录下
在这里插入图片描述

三、安装Redis

# 进入安装目录
[root@openeuler ~]# cd /mnt/redis/
# 解压安装包
[root@openeuler redis]# tar -zxvf redis-6.2.9.tar.gz
# 进入解压目录
[root@openeuler redis]# cd /mnt/redis/redis-6.2.9/
# 编译
[root@openeuler redis-6.2.9]# make
# 执行安装并指定安装目录
[root@openeuler redis-6.2.9]# sudo make install PREFIX=/mnt/redis/redis6.2.9
# 进入安装目录
[root@openeuler redis-6.2.9]# cd /mnt/redis/redis6.2.9/
[root@openeuler redis6.2.9]# 

四、配置Redis服务

4.1 创建安装文件夹

# 配置文件路径
[root@openeuler redis6.2.9]# mkdir -p /mnt/redis/redis6.2.9/conf
# 日志存放路径
[root@openeuler redis6.2.9]# mkdir -p /mnt/redis/redis6.2.9/log
# 数据持久化路径
[root@openeuler redis6.2.9]# mkdir -p /mnt/redis/redis6.2.9/redis_data
# Pid存放路径
[root@openeuler redis6.2.9]# mkdir -p /mnt/redis/redis6.2.9/pidfile

4.2 修改redis.conf配置文件

# 复制redis.conf配置文件
[root@openeuler redis6.2.9]# cp -a /mnt/redis/redis-6.2.9/redis.conf /mnt/redis/redis6.2.9/conf/
# 编辑redis.conf配置文件
[root@openeuler redis6.2.9]# vi /mnt/redis/redis6.2.9/conf/redis.conf# 不限制IP访问,将127.0.0.1修改成0.0.0.0
# 为了安全,生产环境建议绑定固定IP
# bind 127.0.0.1 -::1
bind 0.0.0.0 -::1
# 修改端口号,生产环境建议修改
# port 6379
port 6399
# 开启后台运行
daemonize yes
# 修改pidfile存放路径
# pidfile /mnt/redis/redis6.2.9/pidfile/redis_6379.pid
pidfile /mnt/redis/redis6.2.9/pidfile/redis_6399.pid
# 修改日志存放路径,生产环境建议修改
logfile "/mnt/redis/redis6.2.9/log/redis.log"
# 持久化文件名,可以默认
dbfilename dump.rdb
# 修改数据持久化路径,生产环境建议修改
dir /mnt/redis/redis6.2.9/redis_data
# 设置密码,生产环境建议修改
requirepass 123456

4.3 启动服务,客户端访问

# 进入bin目录
[root@openeuler redis6.2.9]# cd /mnt/redis/redis6.2.9/bin/# 启动后台服务
[root@openeuler bin]# ./redis-server /mnt/redis/redis6.2.9/conf/redis.conf# 客户端访问验证
# 未指定端口
[root@openeuler bin]# ./redis-cli
127.0.0.1:6379> auth 123456           ## 输入前面设置的密码
OK
127.0.0.1:6379> ping
PONG
127.0.0.1:6379> quit                  ## 退出客户端
127.0.0.1:6379> shutdown              ## 停止redis后台服务
# 指定端口6399
[root@openeuler bin]# ./redis-cli -p 6399
127.0.0.1:6399> auth 123456
OK
127.0.0.1:6399> ping
PONG
127.0.0.1:6399> # 查看redis进程
[root@openeuler bin]# ps -ef|grep redis
[root@openeuler bin]# netstat -tlnp | grep 6379
[root@openeuler bin]# netstat -tlnp | grep 6399
# 杀掉进程
[root@openeuler bin]# kill -9 进程号

五、开机自启服务

5.1 配置SELinux安全上下文
注意:如果不配置SELinux安全上下文,后续启动系统脚本时报错【code=exited, status=203/EXEC】

# 恢复默认上下文(针对自定义路径)
[root@openeuler bin]# sudo semanage fcontext -a -t bin_t "/mnt/redis/redis6.2.9/bin(/.*)?"
[root@openeuler bin]# sudo semanage fcontext -a -t etc_t "/mnt/redis/redis6.2.9/conf(/.*)?"
[root@openeuler bin]# sudo restorecon -Rv /mnt/redis/
# 验证标签
[root@openeuler bin]# ls -Zd /mnt/redis/redis6.2.9/bin/redis-server
# 应显示类似:system_u:object_r:bin_t:s0

5.2 配置开机自启脚本

# 创建自启动脚本
[root@openeuler bin]# sudo vi /etc/systemd/system/redis.service# =============================================================================
# 复制粘贴以下内容:
# /mnt/redis/redis6.2.9/bin需要按照实际情况修改成自己的地址
[Unit]
Description=Redis Server
After=network.target[Service]
ExecStart=/mnt/redis/redis6.2.9/bin/redis-server /mnt/redis/redis6.2.9/conf/redis.conf
Restart=always
PrivateTmp=true
Type=forking[Install]
WantedBy=multi-user.target
# =============================================================================# 注意:要保证redis后台服务未启动
# 设置开机自启
[root@openeuler bin]# systemctl daemon-reload
[root@openeuler bin]# systemctl enable redis
# 启动Redis服务
[root@openeuler bin]# systemctl start redis
# 查看服务状态
[root@openeuler bin]# systemctl status redis

六、开放防火墙端口

# 查询端口是否开放
[root@openeuler ~]# sudo firewall-cmd --query-port=6379/tcp
[root@openeuler ~]# sudo firewall-cmd --query-port=6399/tcp
# 开放端口(TCP协议)
[root@openeuler ~]# sudo firewall-cmd --zone=public --add-port=6379/tcp --permanent
[root@openeuler ~]# sudo firewall-cmd --zone=public --add-port=6399/tcp --permanent
# 重新加载防火墙规则
[root@openeuler ~]# sudo firewall-cmd --reload
# 验证端口是否开放
[root@openeuler ~]# sudo firewall-cmd --zone=public --list-ports
# 查看所有端口
[root@centosServer ~]# sudo netstat -nlpt

七、常用命令

# 启动redis服务
systemctl start redis.service
# 查看服务状态
systemctl status redis.service
# 重启服务
systemctl restart redis.service
# 停止服务
systemctl stop redis.service
# 开机自动启动
systemctl enable redis.service
# 取消开机自动启动
systemctl disabled redis.service
# 查看进程
ps -ef | grep redis

相关文章:

  • 微前端框架选型指南
  • [原创](现代Delphi 12指南):[macOS 64bit App开发]: [1]如何使用原生NSAlert消息框 (runModal模式)
  • M1 Mac pip3 install错误记录
  • 罗技K580蓝牙键盘连接mac pro
  • 【Java面试笔记:进阶】30.Java程序运行在Docker等容器环境有哪些新问题?
  • 网络安全之浅析Java反序列化题目
  • webrtc ICE 打洞总结
  • Kafka Producer的acks参数对消息可靠性有何影响?
  • Windows 中的 bat(批处理)文件处理使用教程典型实例和实战技巧
  • Chrome 136 H265 WebRTC 支持 正式版本已包含
  • JESD204B 探究
  • [FPGA VIDEO IP] VCU
  • SQL Server 数据库重命名
  • 数据转储(go)
  • 麒麟、UOS系统在线打开word文件并提取修订痕迹
  • SpringBoot多工程项目微服务install时如何不安装到本地仓库
  • word模板填充导出-(支持word导出、pdf导出)
  • Langchain+文本摘要-refine
  • 芯片软错误概率探究:基于汽车芯片安全设计视角
  • 理解数据库存储以及查询(集合)
  • 购车补贴、“谷子”消费、特色产品,这些活动亮相五五购物节
  • 当农民跨进流动的世界|劳动者的书信①
  • 剑指3000亿产业规模,机器人“武林大会”背后的无锡“野望”
  • 司法服务保障西部陆海新通道建设,最高法专门发文
  • 解放日报社论:只争朝夕、不负重托,加快建成具有全球影响力的科技创新高地
  • “光荣之城”2025上海红色文化季启动,红色主题市集亮相