Linux 安装 Redis 教程
优质博文:IT-BLOG-CN
一、准备工作
配置gcc
:安装Redis
前需要配置gcc
:
yum install gcc
如果配置gcc
出现依赖包问题,在安装时提示需要的依赖包版本和本地版本不一致,本地版本过高,出现如下问题:
[root@localhost ~] yum install gcc
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile* base: mirrors.aliyun.com* epel: mirrors.bfsu.edu.cn* extras: mirros.aliyun.com* updates: mirros.aliyun.comNo package gcc available.Error: Nothing to do
使用--skip--broken
命令尝试绕过依赖包时,直接把gcc
安装包也绕过了
卸载依赖包重装版本的方法过于繁琐,可能扯出来一堆版本问题。这种问题原因是之前配置yum
源时配置的阿里源所以下载的大多数依赖包版本都比较高,在安装很多较低版本软件时都会遇到这个问题。
所以,如果是因为配置yum
源问题,这里建议直接将yum
源更换为Centos
官方源。这里我的Centos
版本是7.9
到官方找了镜像地址为:http://mirror.centos.org/centos-7/7.9.2009/os/x86_64/Packages/centos-release-7-9.2009.0.el7.centos.x86_64.rpm
操作步骤:
1、进入repo
目录
cd /etc/yum.repos.d/
2、备份系统原来的repo
文件
mv CentOS-Base.repo CentOS-Base.repo.backup
3、用wget
下载repo
文件
wget http://mirrors.163.com/.help/CentOS6-Base-163.repo
4、替换系统原理的repo
文件
mv CentOS6-Base-163.repo CentOS-Base.repo
5、清理缓存
yum clean all
6、缓存文件
yum makecache
7、重新更新yum
源
yum update -y
二、Redis 安装包
Redis
官网链接
获取redis
资源:或者手动下载后进行上传即可。
wget http://download.redis.io/releases/redis-5.0.7.tar.gz
Redis 6.2.11
官网下载链接
解压redis
安装包到/usr/local
路径下:
tar -zxvf redis-5.0.7.tar.gz -C /usr/local
解压成功后将文件夹名修改为redis
mv redis-5.0.7 redis
三、安装 Redis
编译: 进入到/usr/local/redis
目录,输入命令make
执行编译命令,接下来控制台会输出各种编译过程中输出的内容。
cd redis-5.0.7
make
安装: 输入以下命令
make install PREFIX=/usr/local/redis
这里多了一个关键字PREFIX=
这个关键字的作用是编译的时候用于指定程序存放的路径。比如我们现在就是指定了redis
必须存放在/usr/local/redis
目录。假设不添加该关键字Linux
会将可执行文件存放在/usr/local/bin
目录,库文件会存放在/usr/local/lib
目录。配置文件会存放在/usr/local/etc
目录。其他的资源文件会存放在usr/local/share
目录。这里指定号目录也方便后续的卸载,后续直接rm -rf /usr/local/redis
即可删除redis
。
启动Redis: 进入redis
安装目录,执行下面命令启动redis
服务
./bin/redis-server redis.conf
四、配置 Redis服务
【1】如上启动redis
不能退出控制台,如果退出控制台redis
服务也会停止。如果想要让redis
以后台的方式运行,需要修改redis
的配置文件:redis.conf
。将该配置文件中的daemonize no
改为 daemonize yes
即可:
daemonize yes
修改完配置文件后,重新启动一下redis
服务
./bin/redis-server redis.conf
【2】查看redis
服务器运行情况:端口号6379
netstat -tunlp | grep redis
【3】如果需要在其他主机连接redis
,记得要修改redis.conf
配置文件,增加一行bind * -::*
,即配置了允许所有主机连接。
修改完后记得重启redis
服务使配置文件生效。
【4】进入redis
客户端模式:
./bin/redis-cli
关闭redis
客户端模式
shutdown
【5】通过CONFIG GET *
的方式读取所有配置项。这里列举下比较重要的配置项
配置项名称 | 配置项值范围 | 说明 |
---|---|---|
daemonize | yes、no | yes 表示启用守护进程,默认是no 即不以守护进程方式运行。其中Windows 系统下不支持启用守护进程方式运行 |
port | 指定Redis 监听端口,默认端口为6379 | |
bind | 绑定的主机地址,如果需要设置远程访问则直接将这个属性备注下或者改为bind * 即可,这个属性和下面的protected-mode控制了是否可以远程访问 。 | |
protected-mode | yes 、no | 保护模式,该模式控制外部网是否可以连接redis 服务,默认是yes ,所以默认我们外网是无法访问的,如需外网连接rendis 服务则需要将此属性改为no 。 |
timeout | 300 | 当客户端闲置多长时间后关闭连接,如果指定为0 ,表示关闭该功能 |
loglevel | debug、verbose、notice、warning | 日志级别,默认为notice |
databases | 16 | 设置数据库的数量,默认的数据库是0 。整个通过客户端工具可以看得到 |
rdbcompression | yes、no | 指定存储至本地数据库时是否压缩数据,默认为yes ,Redis 采用LZF 压缩,如果为了节省CPU 时间,可以关闭该选项,但会导致数据库文件变的巨大。 |
dbfilename | dump.rdb | 指定本地数据库文件名,默认值为dump.rdb |
dir | 指定本地数据库存放目录 | |
requirepass | 设置 Redis 连接密码,如果配置了连接密码,客户端在连接Redis 时需要通过AUTH <password> 命令提供密码,默认关闭 | |
maxclients | 0 | 设置同一时间最大客户端连接数,默认无限制,Redis 可以同时打开的客户端连接数为Redis 进程可以打开的最大文件描述符数,如果设置maxclients 0 ,表示不作限制。当客户端连接数到达限制时,Redis 会关闭新的连接并向客户端返回max number of clients reached 错误信息。 |
maxmemory | XXX | 指定Redis 最大内存限制,Redis 在启动时会把数据加载到内存中,达到最大内存后,Redis 会先尝试清除已到期或即将到期的Key ,当此方法处理 后,仍然到达最大内存设置,将无法再进行写入操作,但仍然可以进行读取操作。Redis 新的vm 机制,会把 Key 存放内存,Value 会存放在swap 区。配置项值范围列里XXX 为数值。 |
【6】将redis
加入到开机启动
vi /etc/rc.local //在里面添加内容:/usr/local/redis/bin/redis-server /usr/local/redis/etc/redis.conf (意思就是开机调用这段开启redis的命令)
【7】将redis-cli
,redis-server
拷贝到bin
下,让redis-cli
指令可以在任意目录下直接使用
cp /usr/local/redis/bin/redis-server /usr/local/bin/
cp /usr/local/redis/bin/redis-cli /usr/local/bin/
【8】设置redis
密码
a.运行命令:redis-cli
b.查看现有的redis密码(可选操作,可以没有)运行命令:config get requirepass 如果没有设置过密码的话运行结果会如下图所示
c.设置redis密码运行命令:config set requirepass ****(****为你要设置的密码),设置成功的话会返回‘OK’字样
d.测试连接重启redis服务//(redis-cli -h 127.0.0.1 -p 6379 -a ****(****为你设置的密码))输入 redis-cli 进入命令模式,使用 auth '*****' (****为你设置的密码)登陆
【9】让外网能够访问redis
a.配置防火墙: **firewall-cmd --zone=public --add-port=6379/tcp --permanent**(开放**6379**端口)**systemctl restart firewalld**(重启防火墙以使配置即时生效)查看系统所有开放的端口:firewall-cmd --zone=public --list-portsb.此时 虽然防火墙开放了6379端口,但是外网还是无法访问的,因为redis监听的是127.0.0.1:6379,并不监听外网的请求。(一)把文件夹目录里的redis.conf配置文件里的bind 127.0.0.1前面加#注释掉(二)命令:redis-cli连接到redis后,通过 config get daemonize和config get protected-mode 是不是都为no,如果不是,就用config set 配置名 属性 改为no。
【10】Linux
系统下设置redis
的密码:
1、进入redis
操作的命令行:
redis-cli
2、查看现有的redis
密码(可选操作,可以没有)
config get requirepass
3、设置redis
密码
config set requirepass ****(****为你要设置的密码),设置成功的话会返回‘OK’字样
4、重启redis
服务:ctrl+C
退出当前的命令行模式后运行命令:
redis-cli -h 127.0.0.1 -p 6379 -a ****(****为你心设置的密码)
相关文章:

Linux 安装 Redis 教程
优质博文:IT-BLOG-CN 一、准备工作 配置gcc:安装Redis前需要配置gcc: yum install gcc如果配置gcc出现依赖包问题,在安装时提示需要的依赖包版本和本地版本不一致,本地版本过高,出现如下问题:…...
【高考志愿】建筑学
目录 一、专业介绍 1.1 专业定义 1.2 专业培养目标 1.3 核心课程 二、就业方向和前景 2.1 就业方向 2.2 专业前景 三、报考注意 四、行业趋势与未来展望 五、建筑学专业排名 一、专业介绍 1.1 专业定义 建筑学,这一充满艺术与科技魅力的学科,…...

Kubernetes的发展历程:从Google内部项目到云原生计算的基石
目录 一、起源与背景 1.1 Google的内部项目 1.2 Omega的出现 二、Kubernetes的诞生 2.1 开源的决策 2.2 初期发布 三、Kubernetes的发展历程 3.1 社区的成长 3.2 生态系统的壮大 3.3 重大版本和功能 3.4 多云和混合云的支持 四、Kubernetes的核心概念 4.1 Pod 4.…...
/proc/config.gz
前言 有时候,我们想知道一个运行着的内核都打开了哪些编译选项,当然,查看编译环境的 .config 文件是一个不错的选择,除此之外,还有没有别的办法呢?当然有,那就是 /proc/config.gz。 一睹风采 …...

论坛万能粘贴手(可将任意文件转为文本)
该软件可将任意文件转为文本。 还原为原文件的方法:将得到的文本粘贴到记事本,另存为UUE格式,再用压缩软件如winrar解压即可得到原文件。建议用于小软件。 下载地址:https://download.csdn.net/download/wgxds/89505015 使用演示…...

学习笔记——动态路由——OSPF(OSPF协议的工作原理)
八、OSPF协议的工作原理 1、原理概要 (1)相邻路由器之间周期性发送HELLO报文,以便建立和维护邻居关系 (2)建立邻居关系后,给邻居路由器发送数据库描述报文(DBD),也就是将自己链路状态数据库中的所有链路状态项目的摘要信息发送给邻居路由器…...

Mybatis1(JDBC编程和ORM模型 MyBatis简介 实现增删改查 MyBatis生命周期)
目录 一、JDBC编程和ORM模型 1. JDBC回顾 2. JDBC的弊端 3. ORM模型 Mybatis和hibernate 区别: 4. mybatis 解决了jdbc 的问题 二、MyBatis简介 1. MyBatis快速开始 1.1 导入jar包 1.2 引入 mybatis-config.xml 配置文件 1.3 引入 Mapper 映射文件 1.3 测试 …...

论文阅读YOLO-World: Real-Time Open-Vocabulary Object Detection
核心: 开放词汇的实时的yolo检测器。重参数化的视觉语言聚合路径模块Re-parameterizable VisionLanguage Path Aggregation Network (RepVL-PAN)实时核心:轻量化的检测器离线词汇推理过程重参数化 方法 预训练方案:将实例注释重新定义为区域…...
SM2的签名值byte数组与ASN.1互转
ASN.1抽象语言标记(Abstract Syntax Notation One) ASN.1是一种 ISO/ITU-T 标准,描述了一种对数据进行表示、编码、传输和解码的数据格式,它提供了一整套正规的格式用于描述对象的结构。 一、该结构的应用场景 例如在做待签名的数字信封时,数字信封使用ASN.1封装,这个时…...

云计算与生成式AI的技术盛宴!亚马逊云科技深圳 Community Day 社区活动流程抢先知道!
小李哥最近要给大家分享7月7日在深圳的即将举办的亚马逊云科技生成式AI社区活动Community Day ,干货很多内容非常硬核,不仅有技术分享学习前沿AI技术,大家在现场还可以动手实践沉浸式体验大模型,另外参与现场活动还可以领取诸多精…...

【鸿蒙学习笔记】基础组件Progress:进度条组件
官方文档:Progress 目录标题 作用最全属性迭代追加进度赋值风格样式 作用 进度条组件 最全属性迭代追加 Progress({ value: 20, total: 100, type: ProgressType.Linear }).color(Color.Green)// 颜色.width(200)// 大小.height(50)// 高度.value(50)// 进度可更…...

前程无忧滑块
声明(lianxi a15018601872) 本文章中所有内容仅供学习交流使用,不用于其他任何目的,抓包内容、敏感网址、数据接口等均已做脱敏处理,严禁用于商业用途和非法用途,否则由此产生的一切后果均与作者无关! 前言(lianxi …...

一站式uniapp优质源码项目模版交易平台的崛起与影响
一、引言 随着信息技术的飞速发展,软件源码已成为推动行业进步的重要力量。源码的获取、交易和流通,对于开发者、企业以及项目团队而言,具有极其重要的意义。为满足市场对高质量源码资源的迫切需求,一站式uniapp优质源码项目模版…...
Python中vars用法
在 Python 中,vars() 函数返回对象的 __dict__ 属性的字典。这个字典包含了对象的所有属性和它们的值。vars() 函数可以用于模块、类、实例,或者拥有 __dict__ 属性的任何其它对象。这里有几个使用 vars() 的例子: 一.模块 如果对一个模块使…...

【机器学习】基于Transformer的迁移学习:理论与实践
引言 在机器学习领域,迁移学习已成为提升模型训练效率和性能的重要策略,特别是在标注数据稀缺的场景下。Transformer模型自2017年由Google提出以来,在自然语言处理(NLP)领域取得了突破性进展,并逐渐扩展到…...
如何应对情绪和培养理性的书
以下是几本关于如何应对情绪和培养理性的书籍推荐: 《情绪智商》(Emotional Intelligence) - 丹尼尔戈尔曼(Daniel Goleman) 这本书探讨了情绪智商(EQ)的重要性以及如何通过提高EQ来改善个人和职…...

[数据集][目标检测]电缆钢丝绳线缆缺陷检测数据集VOC+YOLO格式1800张3类别
数据集格式:Pascal VOC格式YOLO格式(不包含分割路径的txt文件,仅仅包含jpg图片以及对应的VOC格式xml文件和yolo格式txt文件) 图片数量(jpg文件个数):1800 标注数量(xml文件个数):1800 标注数量(txt文件个数):1800 标注…...

【Git 学习笔记】Ch1.1 Git 简介 + Ch1.2 Git 对象
还是绪个言吧 今天整理 GitHub 仓库,无意间翻到了几年前自学 Git 的笔记。要论知识的稳定性,Git 应该能挤进前三——只要仓库还在,理论上当时的所有开发细节都可以追溯出来。正好过段时间会用到 Git,现在整理出来就当温故知新了。…...
Python 中别再用 ‘+‘ 拼接字符串了!
目录 引言 为什么不推荐使用 "" 示例代码 更高效的替代方法 使用 join 方法 示例代码 使用格式化字符串(f-strings) 示例代码 引言 大家好,在 Python 编程中,我们常常需要对字符串进行拼接。你可能会自然地想到…...

六西格玛绿带培训的证书有什么用处?
近年来,六西格玛作为一套严谨而系统的质量管理方法,被广泛运用于各行各业。而六西格玛绿带培训证书,作为这一方法论中基础且重要的认证,对于个人和企业而言,都具有不可忽视的价值。本文将从多个角度深入探讨六西格玛绿…...

【Axure高保真原型】引导弹窗
今天和大家中分享引导弹窗的原型模板,载入页面后,会显示引导弹窗,适用于引导用户使用页面,点击完成后,会显示下一个引导弹窗,直至最后一个引导弹窗完成后进入首页。具体效果可以点击下方视频观看或打开下方…...

现代密码学 | 椭圆曲线密码学—附py代码
Elliptic Curve Cryptography 椭圆曲线密码学(ECC)是一种基于有限域上椭圆曲线数学特性的公钥加密技术。其核心原理涉及椭圆曲线的代数性质、离散对数问题以及有限域上的运算。 椭圆曲线密码学是多种数字签名算法的基础,例如椭圆曲线数字签…...

第 86 场周赛:矩阵中的幻方、钥匙和房间、将数组拆分成斐波那契序列、猜猜这个单词
Q1、[中等] 矩阵中的幻方 1、题目描述 3 x 3 的幻方是一个填充有 从 1 到 9 的不同数字的 3 x 3 矩阵,其中每行,每列以及两条对角线上的各数之和都相等。 给定一个由整数组成的row x col 的 grid,其中有多少个 3 3 的 “幻方” 子矩阵&am…...

HashMap中的put方法执行流程(流程图)
1 put操作整体流程 HashMap 的 put 操作是其最核心的功能之一。在 JDK 1.8 及以后版本中,其主要逻辑封装在 putVal 这个内部方法中。整个过程大致如下: 初始判断与哈希计算: 首先,putVal 方法会检查当前的 table(也就…...
代码随想录刷题day30
1、零钱兑换II 给你一个整数数组 coins 表示不同面额的硬币,另给一个整数 amount 表示总金额。 请你计算并返回可以凑成总金额的硬币组合数。如果任何硬币组合都无法凑出总金额,返回 0 。 假设每一种面额的硬币有无限个。 题目数据保证结果符合 32 位带…...

uniapp手机号一键登录保姆级教程(包含前端和后端)
目录 前置条件创建uniapp项目并关联uniClound云空间开启一键登录模块并开通一键登录服务编写云函数并上传部署获取手机号流程(第一种) 前端直接调用云函数获取手机号(第三种)后台调用云函数获取手机号 错误码常见问题 前置条件 手机安装有sim卡手机开启…...

给网站添加live2d看板娘
给网站添加live2d看板娘 参考文献: stevenjoezhang/live2d-widget: 把萌萌哒的看板娘抱回家 (ノ≧∇≦)ノ | Live2D widget for web platformEikanya/Live2d-model: Live2d model collectionzenghongtu/live2d-model-assets 前言 网站环境如下,文章也主…...

篇章二 论坛系统——系统设计
目录 2.系统设计 2.1 技术选型 2.2 设计数据库结构 2.2.1 数据库实体 1. 数据库设计 1.1 数据库名: forum db 1.2 表的设计 1.3 编写SQL 2.系统设计 2.1 技术选型 2.2 设计数据库结构 2.2.1 数据库实体 通过需求分析获得概念类并结合业务实现过程中的技术需要&#x…...
Java详解LeetCode 热题 100(26):LeetCode 142. 环形链表 II(Linked List Cycle II)详解
文章目录 1. 题目描述1.1 链表节点定义 2. 理解题目2.1 问题可视化2.2 核心挑战 3. 解法一:HashSet 标记访问法3.1 算法思路3.2 Java代码实现3.3 详细执行过程演示3.4 执行结果示例3.5 复杂度分析3.6 优缺点分析 4. 解法二:Floyd 快慢指针法(…...

针对药品仓库的效期管理问题,如何利用WMS系统“破局”
案例: 某医药分销企业,主要经营各类药品的批发与零售。由于药品的特殊性,效期管理至关重要,但该企业一直面临效期问题的困扰。在未使用WMS系统之前,其药品入库、存储、出库等环节的效期管理主要依赖人工记录与检查。库…...