【Redis系列】Redis安装与使用

???欢迎来到我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。
img

  • 推荐:kwan 的首页,持续学习,不断总结,共同进步,活到老学到老
  • 导航
    • 檀越剑指大厂系列:全面总结 java 核心技术点,如集合,jvm,并发编程 redis,kafka,Spring,微服务,Netty 等
    • 常用开发工具系列:罗列常用的开发工具,如 IDEA,Mac,Alfred,electerm,Git,typora,apifox 等
    • 数据库系列:详细总结了常用数据库 mysql 技术点,以及工作中遇到的 mysql 问题等
    • 懒人运维系列:总结好用的命令,解放双手不香吗能用一个命令完成绝不用两个操作
    • 数据结构与算法系列:总结数据结构和算法,不同类型针对性训练,提升编程思维,剑指大厂

非常期待和您一起在这个小小的网络世界里共同探索、学习和成长。??? 欢迎订阅本专栏

博客目录
    • 一.Redis 介绍
      • 1.什么是 Redis?
      • 2.Redis 的特性?
      • 3.Redis 的优点有哪些?
      • 4.Redis 客户端工具
    • 二.安装使用
      • 1.安装 redis
      • 2.配置文件
      • 3.bin 目录
      • 4.启动 redis
      • 5.停掉服务
      • 6.卸载 redis

一.Redis 介绍

1.什么是 Redis

Redis(Remote Dictionary Server)是一个开源的内存数据库,它提供了高性能和持久化存储。Redis 支持多种数据结构,包括字符串、哈希表、列表、集合和有序集合,使其成为一个强大的数据存储和缓存解决方案。

image-20240404113237071

2.Redis 的特性
  1. 内存存储:Redis 将数据存储在内存中,因此具有非常高的读写性能。它使用了自己的键值存储引擎,可以在内存中高效地操作各种数据结构。
  2. 数据持久化:Redis 提供了数据持久化的功能,可以将数据保存到磁盘上,以便在重启后恢复数据。Redis 支持两种持久化方式:快照(snapshotting)和日志(append-only log)。
  3. 多种数据结构:Redis 支持多种数据结构,包括字符串(String)、哈希表(Hash)、列表(List)、集合(Set)和有序集合(Sorted Set)。这些数据结构使得 Redis 非常灵活,可以适用于各种应用场景。
  4. 发布订阅:Redis 支持发布订阅模式,允许多个客户端订阅一个或多个频道,并接收发布到这些频道的消息。这在构建实时消息系统和事件驱动的应用程序时非常有用。
  5. 分布式:Redis 提供了分布式功能,可以将数据分布在多个节点上。通过 Redis 的集群模式,可以实现数据的水平扩展和高可用性。
  6. 事务支持:Redis 支持事务,可以将多个命令打包成一个原子操作。这意味着要么所有命令都执行成功,要么全部失败,保证了数据的一致性。
  7. Lua 脚本:Redis 支持使用 Lua 脚本执行复杂的操作。通过编写 Lua 脚本,可以在服务端执行多个命令,减少了网络传输的开销,并提高了性能。
3.Redis 的优点有哪些
  1. 高性能:Redis 将数据存储在内存中,并使用异步的方式将数据写入磁盘,因此具有非常高的读写性能。它还支持数据分片和集群,可以实现水平扩展,处理大规模数据。
  2. 简单易用:Redis 的 API 简单易用,提供了丰富的命令和数据结构操作,使开发人员可以快速地构建应用程序和解决问题。
  3. 数据类型丰富:Redis 支持多种数据类型,例如字符串、列表、哈希表等,使得开发人员能够更灵活地处理不同类型的数据。
  4. 高可用性:Redis 支持主从复制和哨兵机制,可以实现数据的备份和故障转移。当主节点发生故障时,从节点可以自动接管主节点的工作,保证了系统的高可用性。
  5. 数据持久化:Redis 提供了数据持久化的功能,可以将数据保存到磁盘上,以便在重启后恢复数据。这使得 Redis 既具备了高性能的特点,又能保证数据的安全性。
  6. 生态系统和社区支持:Redis 拥有活跃的社区和庞大的生态系统,有许多第三方工具和库可以与 Redis 集成,提供更丰富的功能和解决方案。
4.Redis 客户端工具
  • QuickRedis 是一款 永久免费 的 Redis 可视化管理工具。比较稳定简洁的 redis UI 工具。
  • idea 的 redis 插件
  • AnotherRedisDesktopManager 一款比较稳定简洁的 redis UI 工具。
  • Redis Desktop Manager 一款基于 Qt5 的跨平台 Redis 桌面管理软件,目前已开始收费。
  • Redis Client 是 Redis 客户端的 GUI 工具,使用 Java swt 和 jedis 编写,可以方便开发者浏览 Redis 数据库。该软件支持简体中文,非常适合国内用户使用,不需要汉化就可以直接使用

二.安装使用

image-20240404113248291

1.安装 redis
#进入安装目录
cd /usr/local/#获取 redis 资源
wget http://download.redis.io/releases/redis-4.0.8.tar.gz#解压
tar xzvf redis-4.0.8.tar.gz#进入redis目录
cd redis-4.0.8#编译
make#进入目录
cd src#编译安装
make install PREFIX=/usr/local/redis
2.配置文件
#移动配置文件到安装目录下
mkdir /usr/local/redis/etc#移动配置文件
mv /usr/local/redis-4.0.8/redis.conf /usr/local/redis/etc#修改配置文件
vim /usr/local/redis/etc/redis.conf#以守护进程的模式运行
daemonize no  -->  daemonize yes#redis.conf配置文件里的bind 127.0.0.1注释掉#protected-mode 设置为no,关闭远程访问保护
#设置密码
requirepass 123456
protected-mode no#将redis加入到开机启动
vim /etc/rc.local
#在里面添加内容:(意思就是开机调用这段开启redis的命令)
/usr/local/redis/bin/redis-server /usr/local/redis/etc/redis.conf
3.bin 目录
#将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/#设置redis密码
redis-cli
config get requirepass
config set requirepass xxx
4.启动 redis
#原路径启动
/usr/local/redis/bin/redis-server /usr/local/redis/etc/redis.conf#启动redis
redis-server#加上`&`号使redis以后台程序方式运行
cd /usr/local/redis/bin/
redis-server /usr/local/redis/etc/redis.conf &#客户端连接redis
redis-cli -h 127.0.0.1 -p 6379
redis-cli -h 127.0.0.1 -p 6379 -a 123456#退出
ctrl+c
5.停掉服务
#查询停掉
ps -ef |grep redis#根据端口号查询
netstat -lntp | grep 6379
ss -nltp#停掉redis
kill -9 pid
6.卸载 redis
#删除安装目录
rm -rf /usr/local/redis#删除所有redis相关命令脚本
rm -rf /usr/bin/redis-*#删除redis解压文件夹
rm -rf /root/download/redis-4.0.4

觉得有用的话点个赞 ???? 呗。
本人水平有限,如有纰漏,欢迎各位大佬评论批评指正!???

???如果觉得这篇文对你有帮助的话,也请给个点赞、收藏下吧,非常感谢!?? ?? ??

???Stay Hungry Stay Foolish 道阻且长,行则将至,让我们一起加油吧!???

img

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/18757.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Spring Boot中如何自定义Starter

文章目录 Spring Boot中如何自定义Starter概念和作用1. 概念介绍2. 作用和优势2.1 简化依赖管理2.2 提供开箱即用的自动配置2.3 标准化和模块化开发2.4 提高开发效率2.5 提供灵活的配置覆盖3. 应用场景创建核心依赖1. 确定核心依赖的作用2. 创建 starter-core 模块2.1 依赖管理…

【触想智能】工业显示器和普通显示器的区别以及工业显示器的主要应用领域分析

在现代工业中,工业显示器被广泛应用于各种场景,从监控系统到生产控制,它们在实时数据显示、操作界面和信息传递方面发挥着重要作用。与普通显示器相比,工业显示器在耐用性、可靠性和适应特殊环境的能力上有着显著的差异。 触想工业…

Deepseek R1模型本地化部署+API接口调用详细教程:释放AI生产力

文章目录 前言一、deepseek R1模型与chatGPT o1系列模型对比二、本地部署步骤1.安装ollama2部署DeepSeek R1模型删除已存在模型,以7b模型为例 三、DeepSeek API接口调用Cline配置 前言 随着最近人工智能 DeepSeek 的爆火,越来越多的技术大佬们开始关注如…

ML.Net二元分类

ML.Net二元分类 文章目录 ML.Net二元分类前言项目的创建机器学习模型的创建添加模型选择方案训练环境的选择训练数据的添加训练数据的选择训练数据的格式要预测列的选择模型评估模型的使用总结前言 ‌ML.NET‌是由Microsoft为.NET开发者平台创建的免费、开源、跨平台的机器学习…

Seaweedfs(master volume filer) docker run参数帮助文档

文章目录 进入容器后执行获取weed -h英文中文 weed server -h英文中文 weed volume -h英文中文 关键点测试了一下,这个-volume.minFreeSpace string有点狠,比如设置值为10(10%),它直接给系统只留下10%的空间&#xff0…

【系统架构设计师】虚拟机体系结构风格

目录 1. 说明2. 解释器体系结构风格3. 规则系统体系结构风格4. 例题4.1 例题1 1. 说明 1.p263。2.虚拟机体系结构风格的基本思想是人为构建一个运行环境,在这个环境之上,可以解析与运行自定义的一些语言,这样来增加架构的灵活性。3.虚拟机体…

ROS学习

1.ROS工作空间 存放项目开发相关文件的文件夹; src:代码空间(Source Space)install:安装空间(Install Space)build:编译空间(Build Space)log:日志空间(Log Space) 2.c…

【vue3】实现pdf在线预览的几种方式

今天一天对当前可用的pdf预览插件做了测试,主要需求是只能预览不能下载,但对于前端来说,没有绝对的禁止,这里只罗列实现方式。 目前采用vue3版本为:3.2.37 iframevue-officepdfjs-dist iframe 先说最简单的&#xf…

Springboot中使用Elasticsearch(部署+使用+讲解 最完整)

目录 引言 一、docker中安装Elasticsearch 1、创建es专有的网络 2、开放端口 3、在es-net网络上安装es和kibana 4、可能出现的问题 5、测试 6、安装IK分词器 7、测试IK分词器 二、结合业务实战 1、准备依赖 2、配置yml 3、读取yml配置 4、准备es配置类 5、编写测…

文件夹上传到github分支最后github上面还是没有文件和文件夹

环境: github 问题描述: 文件夹上传到github分支最后github上面还是没有文件和文件夹, 和这样一样 解决方案: 从 git ls-tree -r HEAD 的输出中可以看到,metahuman-stream 文件夹显示为如下内容: 160000 commi…

基于Go语言 XTA AI聊天界面实现

项目开源地址: XTA-AI-SDK 人工智能技术的迅速发展,AI聊天应用变得越来越流行。本文将介绍如何使用Go语言和LCL库( Lazarus Component Library)创建一个功能丰富的AI聊天界面。项目主要包含以下模块: 项目背景 本项目旨在为开发…

C++入门小清单

在上一篇文章中我向大家介绍了关于C的命名空间的用处以及一些,这篇内容主要是讲解有关C入门的一些小知识,大家可以通过此文章初步进行一个了解,这些东西在之后的C学习中都会有更多的妙用,如果有小伙伴感兴趣C的命名空间&#xff0…

【kafka系列】日志存储设计 消息写入、读取

目录 日志存储设计 1. 日志存储的目录结构 2. 日志内容格式设计 3. 日志索引设计 4. 设计优势 消息写入流程 示例 流程图 消息读取流程 示例 关键设计细节 流程图 日志存储设计 Kafka的日志存储是其高吞吐、持久化能力的核心设计,其结构包含目录组织、…

复杂电磁环境下无人机自主导航增强技术研究报告——地磁匹配与多源数据融合方法,附matlab代码

本文给出介绍和matlab程序,来实现地磁辅助惯性导航仿真验证,包含地磁基准图构建、飞行轨迹生成、INS误差建模、地磁匹配定位及多源数据融合等模块。通过对比分析验证地磁匹配修正惯性导航累积误差的有效性,可视化显示卫星拒止环境下的航迹修正…

springboot项目读取 resources 目录下的文件的9种方式

1. 使用 ClassLoader.getResourceAsStream() 方法 InputStream inputStream getClass().getClassLoader().getResourceAsStream(“file.txt”); 2.使用 Class.getResourceAsStream() 方法 InputStream inputStream getClass().getResourceAsStream(“/file.txt”); 3.使用 Re…

基于SSM+uniapp的鲜花销售小程序+LW示例参考

1.项目介绍 系统角色:管理员、商户功能模块:用户管理、商户管理、鲜花分类管理、鲜花管理、订单管理、收藏管理、购物车、充值、下单等技术选型:SSM,Vue(后端管理web),uniapp等测试环境&#x…

硕成C语言22【一些算法和数组的概念】

1.求水仙花数 #include <stdio.h>int main() {//求水仙花数&#xff1a;1.三位数 2.个位的立方十位的立方百位的立方该数int unit, tens, hundreds;for (int i 100; i < 1000; i)//i表示该水仙花数{unit i / 1 % 10;tens i / 10 % 10;hundreds i / 100 % 10;if (…

游戏引擎学习第101天

回顾当前情况 昨天的进度基本上完成了所有内容&#xff0c;但我们还没有进行调试。虽然我们在运行时做的事情大致上是对的&#xff0c;但还是存在一些可能或者确定的bug。正如昨天最后提到的&#xff0c;既然现在时间晚了&#xff0c;就不太适合开始调试&#xff0c;所以今天我…

无人机航迹规划:互联银行系统优化(Connected Banking System Optimizer,CBSO)求解无人机路径规划MATLAB

一、互联银行系统优化算法 互联银行系统优化&#xff08;Connected Banking System Optimizer&#xff0c;CBSO&#xff09;算法是2024年由Mehrdad Nemati等人提出的一种智能优化算法&#xff0c;其灵感来源于银行系统之间的连接和交易过程。在银行系统中&#xff0c;核心银行…

【清晰教程】通过Docker为本地DeepSeek-r1部署WebUI界面

【清晰教程】本地部署DeepSeek-r1模型-CSDN博客 目录 安装Docker 配置&检查 Open WebUI 部署Open WebUI 安装Docker 完成本地DeepSeek-r1的部署后【清晰教程】本地部署DeepSeek-r1模型-CSDN博客&#xff0c;通过Docker为本地DeepSeek-r1部署WebUI界面。 访问Docker官…