Redis的安装配置及IDEA中使用
目录
一、安装redis,配置redis.conf
1.安装gcc
2.将redis的压缩包放到指定位置解压 [如下面放在 /opt 目录下]
3.编译安装
4.配置redis.conf文件
5.开机自启
二、解决虚拟机本地可以连接redis但是主机不能连接redis
1.虚拟机网络适配器网络连接设置为桥接模式
2.控制面板查看主机的网络连接信息
3.手动配置虚拟机网络连接,输入与主机同一网络段地址
三、配置远程连接
1.设置防火墙端口
2.使用windows图形化界面
四、IDEA连接redis
1.新建项目
2.引入redis依赖和连接池依赖
3.配置文件
4.注入redisTemplate
5.编写测试(所以代码)
6.查看winsows GUI 界面
一、安装redis,配置redis.conf
1.安装gcc

# Redis是基于C语言编写的,因此首先需要安装Redis所需要的gcc依赖:
yum install -y gcc tcl
gcc -v # 查看gcc版本
2.将redis的压缩包放到指定位置解压 [如下面放在 /opt 目录下]
# 安装reids
ll # 查看目录内容
cd /opt # 进入 /opt 目录,将redis压缩包放在该目录下
tar xzf redis-7.0.0.tar.gz # 解压
cd redis-7.0.0 # 进入redis文件夹
make && make install # 编译安装redis# 出现以下语句则安装成功
# Hint: It's a good idea to run 'make test' ;)
# - redis-cli:是redis提供的命令行客户端
# - redis-server:是redis的服务端启动脚本
# - redis-sentinel:是redis的哨兵启动脚本redis-server # 启动redis

3.编译安装


4.配置redis.conf文件
# 更改配置 redis.conf
pwd # 查看当前所在路劲信息
mkdir /myredis # 创建一个鑫目录文件夹用来存放副本reids.conf配置文件
cp redis.conf /myredis # 将redis.conf复制到/myredis 文件目录下
vim redis.conf # 编辑redis.conf配置文件# redis.conf 的配置更改,使用 /bind 回车找到位置
# 允许访问的地址,默认是127.0.0.1,会导致只能在本地访问。修改为0.0.0.0则可以在任意IP访问,生产环境不要设置为0.0.0.0
bind 0.0.0.0
# 守护进程,修改为yes后即可后台运行
daemonize yes
# 密码,设置后访问Redis必须输入密码
requirepass 123456



5.开机自启
# 开机自启
vi /etc/systemd/system/redis.service
# 内容如下
[Unit]
Description=redis-server
After=network.target[Service]
Type=forking
ExecStart=/usr/local/bin/redis-server /usr/local/src/redis-6.2.6/redis.conf
PrivateTmp=true[Install]
WantedBy=multi-user.target# 然后重载系统服务
systemctl daemon-reload# 启动
systemctl start redis
# 停止
systemctl stop redis
# 重启
systemctl restart redis
# 查看状态
systemctl status redis# 运行命令实现开机自启
systemctl enable redis
# 其他配置(可选)
# 监听的端口
port 6379
# 工作目录,默认是当前目录,也就是运行redis-server时的命令,日志、持久化等文件会保存在这个目录
dir .
# 数据库数量,设置为1,代表只使用1个库,默认有16个库,编号0~15
databases 1
# 设置redis能够使用的最大内存
maxmemory 512mb
# 日志文件,默认为空,不记录日志,可以指定日志文件名
logfile "redis.log"
二、解决虚拟机本地可以连接redis但是主机不能连接redis

(先关闭虚拟机再进行以下配置:)
1.虚拟机网络适配器网络连接设置为桥接模式

2.控制面板查看主机的网络连接信息

3.手动配置虚拟机网络连接,输入与主机同一网络段地址

4.主机与虚拟机网络地址对应

ifconfig # 查看网络地址 192.168.43.180
redis-cli -h 192.168.43.180 -p 6379 -a 123456 # 使用网络地址连接服务器


三、配置远程连接
1.设置防火墙端口
sudo firewall-cmd --add-port=6379/tcp --permanent
sudo firewall-cmd --reload
redis-cli -h c -p 6379 -a 123456
ps aux | grep redis
2.使用windows图形化界面


四、IDEA连接redis

1.新建项目


2.引入redis依赖和连接池依赖
<!--redis依赖-->
<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-data-redis</artifactId>
</dependency>
<!--common-pool-->
<dependency><groupId>org.apache.commons</groupId><artifactId>commons-pool2</artifactId>
</dependency>
3.配置文件
spring:redis:host: 192.168.43.180 # 更换成自己的地址port: 6379password: 123456lettuce:pool:max-active: 8max-idle: 8min-idle: 0max-wait: 100ms
4.注入redisTemplate
@Autowired
private RedisTemplate<String, Object> redisTemplate;
5.编写测试(所以代码)
import com.heima.redis.pojo.User;
import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.data.redis.core.RedisTemplate;@SpringBootTest
class RedisDemoApplicationTests {@Autowiredprivate RedisTemplate<String,Object> redisTemplate;@Testvoid testString() {// 写入一条String数据redisTemplate.opsForValue().set("name", "柯迪耐");// 获取string数据Object name = redisTemplate.opsForValue().get("name");System.out.println("name = " + name);}@Testvoid testSaveUser() {// 写入数据redisTemplate.opsForValue().set("user:100", new User("虎哥", 21));// 获取数据User o = (User) redisTemplate.opsForValue().get("user:100");System.out.println("o = " + o);}
}
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.data.redis.connection.RedisConnectionFactory;
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.data.redis.serializer.GenericJackson2JsonRedisSerializer;
import org.springframework.data.redis.serializer.RedisSerializer;@Configuration
public class RedisConfig {@Beanpublic RedisTemplate<String, Object> redisTemplate(RedisConnectionFactory connectionFactory){// 创建RedisTemplate对象RedisTemplate<String, Object> template = new RedisTemplate<>();// 设置连接工厂template.setConnectionFactory(connectionFactory);// 创建JSON序列化工具GenericJackson2JsonRedisSerializer jsonRedisSerializer = new GenericJackson2JsonRedisSerializer();// 设置Key的序列化template.setKeySerializer(RedisSerializer.string());template.setHashKeySerializer(RedisSerializer.string());// 设置Value的序列化template.setValueSerializer(jsonRedisSerializer);template.setHashValueSerializer(jsonRedisSerializer);// 返回return template;}
}
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;@Data
@NoArgsConstructor
@AllArgsConstructor
public class User {private String name;private Integer age;
}
6.查看winsows GUI 界面

相关文章:
Redis的安装配置及IDEA中使用
目录 一、安装redis,配置redis.conf 1.安装gcc 2.将redis的压缩包放到指定位置解压 [如下面放在 /opt 目录下] 3.编译安装 4.配置redis.conf文件 5.开机自启 二、解决虚拟机本地可以连接redis但是主机不能连接redis 1.虚拟机网络适配器网络连接设置为桥接模式…...
ubuntu 物理内存爆炸而不使用虚拟内存的问题
ubuntu 物理内存不足时有时候会不去使用虚拟内存,让虚拟内存空闲,而直接关闭占用内存的进程,如果在进行模型测试或训练时,就会导致训练或测试进程被杀死。 1. 修改 swappiness: cat /proc/sys/vm/swappiness sudo sysc…...
Python实现音频均衡和降噪
使用librosa库来读取音频文件,音频处理是一个复杂过程,这里只是简单的进行降噪和均衡。 import librosa import soundfile as sf def improve_audio_quality(input_file, output_file): # 读取音频文件 audio, sample_rate librosa.load(input_…...
【JavaScript 算法】贪心算法:局部最优解的构建
🔥 个人主页:空白诗 文章目录 一、贪心算法的基本概念贪心算法的适用场景 二、经典问题及其 JavaScript 实现1. 零钱兑换问题2. 活动选择问题3. 分配问题 三、贪心算法的应用四、总结 贪心算法(Greedy Algorithm)是一种逐步构建解…...
Azcopy Sync同步Azure文件共享
文章目录 Azcopy Sync同步文件共享一、工作原理二、安装 AzCopy在 Windows 上在 Linux 上 三、资源准备1. 创建源和目标 Azure 存储账户2. 创建源和目标文件共享3. 确定路径4. 生成源和目的存储账户的共享访问签名(SAS)令牌配置权限示例生成的 URL 四、A…...
单例模式 饿汉式和懒汉式的区别
单例模式(Singleton Pattern)是设计模式中最简单、最常见、最容易实现的一种模式。它确保一个类仅有一个实例,并提供一个全局访问点。单例模式主要有两种实现方式:饿汉式(Eager Initialization)和懒汉式&am…...
Python中的模块和包的定义以及如何在Python中导入和使用它们
在Python中,模块(Module)和包(Package)是组织代码以便重用和共享的基本单元。它们使得Python代码更加模块化,易于管理和维护。 模块(Module) 模块是一个包含Python代码的文件&…...
设计模式使用场景实现示例及优缺点(结构型模式——组合模式)
结构型模式 组合模式(Composite Pattern) 组合模式使得用户对单个对象和组合对象的使用具有一致性。 有时候又叫做部分-整体模式,它使我们树型结构的问题中,模糊了简单元素和复杂元素的概念,客户程序可以像处理简单元…...
《系统架构设计师教程(第2版)》第11章-未来信息综合技术-06-云计算(Cloud Computing) 技术概述
文章目录 1. 相关概念2. 云计算的服务方式2.1 软件即服务 (SaaS)2.2 平台即服务 (PaaS)2.3 基础设施即服务 (IaaS)2.4 三种服务方式的分析2.4.1 在灵活性2.4.2 方便性方 3. 云计算的部署模式3.1 公有云3.2 社区云3.3 私有云3.4 混合云 4. 云计算的发展历程4.1 虚拟化技术4.2 分…...
网络安全工作者如何解决网络拥堵
网络如同现代社会的血管,承载着信息的血液流动。然而,随着数据流量的激增,网络拥堵已成为不容忽视的问题,它像是一场数字世界的交通堵塞,减缓了信息传递的速度,扰乱了网络空间的秩序。作为网络安全的守护者…...
电脑显示mfc140u.dll丢失的修复方法,总结7种有效的方法
mfc140u.dll是什么?为什么电脑会出现mfc140u.dll丢失?那么mfc140u.dll丢失会给电脑带来什么影响?mfc140u.dll丢失怎么办?今天详细给大家一一探讨一下mfc140u.dll文件与mfc140u.dll丢失的多种不同解决方法分享! 一、mfc…...
ospf的MGRE实验
第一步:配IP [R1-GigabitEthernet0/0/0]ip address 12.0.0.1 24 [R1-GigabitEthernet0/0/1]ip address 21.0.0.1 24 [R1-LoopBack0]ip address 192.168.1.1 24 [ISP-GigabitEthernet0/0/0]ip address 12.0.0.2 24 [ISP-GigabitEthernet0/0/1]ip address 21.0.0.2 24…...
开发指南047-前端模块版本
平台前端框架内置了一个文件version.vue <template> <div> <br> 应用名称: {{name}} <br> 当前版本:{{version}} <br> 服务网关: {{gateway}} </div> </template> <scrip…...
c#中的字符串方法
Concat() String.Concat(字符串1 字符串n) 字符串拼接 Contains () 字符串1.Contains(字符串2) 字符串1是否包含字符串2返回布尔值 CopyTo() 字符串1.CopyTo(0,空数组,0,5); 从哪开始 复制到哪里 从哪开始存 存储的个数 tartsWith 字符串1.StartsWith("字符串") 以…...
成像光谱遥感技术中的AI革命:ChatGPT
遥感技术主要通过卫星和飞机从远处观察和测量我们的环境,是理解和监测地球物理、化学和生物系统的基石。ChatGPT是由OpenAI开发的最先进的语言模型,在理解和生成人类语言方面表现出了非凡的能力,ChatGPT在遥感中的应用,人工智能在…...
学习分布式事务遇到的小bug
一、介绍Seata 在处理分布式事务时我用到是Seata,Seata的事务管理中有三个重要的角色: TC (Transaction Coordinator) - 事务协调者:维护全局和分支事务的状态,协调全局事务提交或回滚。 TM (Transaction Manager) - 事务管理器…...
ElasticSearch学习之路
前言 为什么学ElasticSearch? 数据一般有如下三种类型: 结构化数据,如:MySQL的表,一般通过索引提高查询效率非结构化数据,如:图片、音频等不能用表结构表示的数据,一般保存到mong…...
(C++二叉树02) 翻转二叉树 对称二叉树 二叉树的深度
226、翻转二叉树 递归法: 交换两个结点可以用swap()方法 class Solution { public:TreeNode* invertTree(TreeNode* root) {if(root NULL) return NULL;TreeNode* tem root->left;root->left root->right;root->right tem;invertTree(root->l…...
高阶面试-mongodb
mongodb的特点,为什么使用他 nosql数据库,前端到后端到数据库,都是json,无模式,数据模型发生变更,不需要强制更新表结构,可以快速实现需求迭代。 天生分布式,高可用,处…...
MySQL数据库慢查询日志、SQL分析、数据库诊断
1 数据库调优维度 业务需求:勇敢地对不合理的需求说不系统架构:做架构设计的时候,应充分考虑业务的实际情况,考虑好数据库的各种选择(读写分离?高可用?实例个数?分库分表?用什么数据库?)SQL及索引:根据需求编写良…...
HDLbits奇偶校验坑点复盘:我如何被Fsm serialdp“折磨”到发邮件问作者?
HDLbits奇偶校验坑点复盘:从状态机类型差异到调试方法论 凌晨三点,显示器上的波形依然和预期不符。这是我第七次重写Fsm serialdp的状态机代码,仿真结果中done信号始终在错误的时间点跳变。作为HDLbits的终极挑战之一,这道串口接收…...
Ubuntu 22.04下编译安装Realtek RTL8852BE驱动,内核版本大于5.18和小于5.18的区别操作
Ubuntu 22.04下Realtek RTL8852BE驱动编译指南:内核版本差异全解析 当你兴奋地在新买的RedmiBook上安装Ubuntu 22.04,却发现WiFi图标神秘消失时,别慌——这很可能是因为Realtek RTL8852BE这块WiFi 6网卡在Linux下的驱动支持问题。作为一块性能…...
别再死记命令了!用ENSP模拟企业网,手把手教你配置VRRP+MSTP实现网关和链路双备份
企业网络高可用实战:用ENSP构建VRRPMSTP双冗余架构 刚接触企业网络设计的工程师常陷入一个误区:把网络设备配置等同于命令记忆。我曾见过一位学员能完整背诵VRRP的配置指令,却在真实网络故障时手足无措——因为他从未理解这些命令背后的网络逻…...
政务许可场景钓鱼邮件攻击机理与防御体系研究 —— 基于美国克恩县预警事件
摘要 2026 年 5 月,美国加利福尼亚州克恩县(Kern County)官方发布安全预警,披露针对Accela 政务许可申报平台用户的定向钓鱼邮件攻击。攻击者伪装成县政务部门,以 “许可审核费”“紧急支付” 等名义发送伪造账单邮件&…...
从飞思卡尔智能车竞赛视频拆解嵌入式系统设计:感知、控制与工程实践
1. 项目概述:从一场竞赛视频看智能车设计的核心逻辑最近在整理资料时,翻到了当年飞思卡尔智能车竞赛(现为全国大学生智能汽车竞赛)中湖南大学参赛队伍的一些视频资料。这些视频,无论是官方发布的比赛实录,还…...
使用openclaw配置taotoken实现自动化agent工作流的实践指南
🚀 告别海外账号与网络限制!稳定直连全球优质大模型,限时半价接入中。 👉 点击领取海量免费额度 使用OpenClaw配置Taotoken实现自动化Agent工作流的实践指南 1. 概述:OpenClaw与Taotoken的集成价值 OpenClaw是一个用…...
FreeRTOS互斥锁的‘坑’与‘宝’:优先级翻转那些事儿,用ESP32实测给你看
FreeRTOS互斥锁的‘坑’与‘宝’:优先级翻转那些事儿,用ESP32实测给你看 在嵌入式实时系统中,任务调度和资源管理是核心挑战。当你开始设计多任务系统时,很快会遇到一个经典问题:多个任务需要访问共享资源(…...
C语言assert断言:从核心原理到工程实践的全方位指南
1. 项目概述:为什么assert是C程序员的“随身听诊器” 在C语言的世界里摸爬滚打久了,你肯定遇到过这种场景:程序在开发环境里跑得好好的,一到测试环境就莫名其妙崩溃;或者某个函数昨天还能用,今天加了几行代…...
NumPy 2.4.6 快速版发布:修复 2.4.5 回归问题,支持 Python 3.11 - 3.14
NumPy 2.4.6 快速版本现已发布,修复了 2.4.5 版本中的回归问题,支持 Python 3.11 - 3.14 版本,本次共合并 4 个拉取请求。版本发布背景 在 NumPy 2.4.5 版本使用过程中发现了回归问题,为了及时解决这些问题,开发团队迅…...
告别命令行!用Offset Explorer(原Kafka Tool)图形化管理Kafka集群,5分钟上手
告别命令行恐惧:用Offset Explorer实现Kafka集群的可视化高效管理 对于许多开发者和运维人员来说,Kafka的命令行操作就像一道难以逾越的门槛。那些复杂的参数、冗长的命令和难以直观理解的输出,常常让人望而却步。而Offset Explorerÿ…...
