【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.mzph.cn/news/791431.shtml

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

相关文章

保研线性代数复习3

一.基底(Basis) 1.什么是生成集(Generating Set)?什么是张成空间(Span)? 存在向量空间V(V,,*),和向量集(xi是所说的列向量&#xff…

大模型prompt技巧——思维链(Chain-of-Thought)

1、Zero-shot、One-shot、Few-shot 与fintune prompt的时候给出例子答案,然后再让模型回答。 2、zero-shot-CoT “Let’s think step by step”有奇迹效果 3、多数投票提高CoT性能——自洽性(Self-consistency) 多个思维链,然后取…

WordPress 6.5 “里贾纳”已经发布

WordPress 6.5 “里贾纳”已经发布,其灵感来自著名爵士小提琴家Regina Carter的多才多艺。雷吉娜是一位屡获殊荣的艺术家和著名的爵士乐教育家,以超越流派而闻名,她在古典音乐方面的技术基础和对爵士乐的深刻理解为她赢得了大胆超越小提琴所能…

修改element-ui table组件展开/收起图标、支持点击行展开/收起、隐藏不可展开行得图标

Element中table默认支持的,展开和收起功能,如下: 针对表格的展开收起,本文改造的主要有3点: 1、修改展开/收起的图标; 2、对于不支持展开/收起的行,隐藏图标; 3、点击行&#xff0…

windows10 上安装 docker

windows 10 上安装 docker 官方目前给的方案是利用 Docker Desktop 来安装 docker 环境 一、安装前准备工作 1.1 检查系统要求 Windows 10 64 位:Home 或 Pro 2004(内部版本 19041)或更高版本,或者 Enterprise 或 Education 1…

Redis中的复制功能(四)

复制功能 步骤2:建立套接字连接 在SLAVEOF命令执行之后,从服务器将根据命令所设置的IP地址和端口,创建连向主服务器的套接字连接,如图所示。如果从服务器创建的套接字能成功连接(connect)到主服务器,那么从服务器将为这个套接字…

软考109-上午题-【计算机网络】-网络设备

一、网络设备 1-1、物理层的互联设备 物理层的设备:中继器、集线器 1、中继器 中继器,可以使得两个链路在物理层上互联。 可以使得信号再生,信号增强。因此,中继器使得接受用户,收到衰减很小的原始信号 2、集线器&a…

【Java EE】关于Maven

文章目录 🎍什么是Maven🌴为什么要学Maven🌲创建⼀个Maven项目🌳Maven核心功能🌸项目构建🌸依赖管理 🍀Maven Help插件🎄Maven 仓库🌸本地仓库🌸私服 ⭕总结 …

Whisper对于中文语音识别与转写中文文本优化的实践(Python3.10)

原文:Whisper对于中文语音识别与转写中文文本优化的实践(Python3.10) - 知乎 阿里的FunAsr对Whisper中文领域的转写能力造成了一定的挑战,但实际上,Whisper的使用者完全可以针对中文的语音做一些优化的措施,换句话说,…

前端:登录界面

效果 代码 index.html <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8"><meta http-equiv"X-UA-Compatible" content"IEedge"><meta name"viewport" content"widthde…

SpringBoot整合ELK8.1.x实现日志中心教程

目录 背景 环境准备 环境安装 1.JDK安装 2.安装Elasticsearch 3.安装zookeeper 4.安装Kafka 5.安装logstash 6.安装file beat 解决方案场景 1.日志采集 1.1 应用日志配置 1.1.1 创建logback-spring.xml文件 1.1.2 创建LoggerFactory 1.1.3 trace日志的记录用法 …

Linux上管理文件系统

Linux上管理文件系统 机械硬盘 机械硬盘由多块盘片组成&#xff0c;它们都绕着主轴旋转。每块盘片上下方都有读写磁头悬浮在盘片上下方&#xff0c;它们与盘片的距离极小。在每次读写数据时盘片旋转&#xff0c;读写磁头被磁臂控制着不断的移动来读取其中的数据。 所有的盘片…

实操:Dropzone.js实现文件上传

&#x1f3e0;官网 点我前往 &#x1f953;依赖 <script src"https://unpkg.com/dropzone5/dist/min/dropzone.min.js"></script> <link rel"stylesheet" href"https://unpkg.com/dropzone5/dist/min/dropzone.min.css" type&…

手搓链表(java)(不完整)

手搓链表&#xff08;java&#xff09;&#xff08;不完整&#xff09; 文章目录 手搓链表&#xff08;java&#xff09;&#xff08;不完整&#xff09;前言一、代码1.MyLinkedList类&#xff1a;2.测试类&#xff1a; 总结 前言 提示&#xff1a;以下是本篇文章正文内容&…

LeetCode_876(链表的中间结点)

//双指针//时间复杂度O(n) 空间复杂度O(1)public ListNode middleNode(ListNode head) {ListNode slowhead,fast head;while (fast!null && fast.next!null){slow slow.next;fast fast.next.next;}return slow;} 1->2->3->4->5->null 快指针移动两个…

Linux中的shell脚本之流程控制循环遍历

3 条件判断 4 流程控制语句 1&#xff09;if 语句 案例&#xff0c;用户输入用户名和密码&#xff0c;判断用户名是否是admin,密码是否是123,如果正确&#xff0c;则显示登录成功 首先我创建了shell文件&#xff0c;touch getpawer 其中getpawer 是我自己命的名 #!/bin/bas…

Linux-4 gcc和makefile

Linux编译器-gcc/g使用 1.设计样例 c语言&#xff1a;linux中用的stdc99版本--可能会出现其他问题 c&#xff1a;Linux中用的stdc11--使用c11版本 Linux没有文件格式的区分&#xff0c;但是编译器区分 gcc编译器的文件格式是filename.c g编译器的文件格式是filename.cc或者fil…

蓝桥杯练习笔记(十七)

蓝桥杯练习笔记&#xff08;十七&#xff09; 一、 输入样例 7 7 1000001 0100010 0010100 0001AAA 00010A0 00010A0 00010A0蓝桥官网题解&#xff1a; 该题解是用了三个循环分别对三个方向的相同字符的长度进行统计&#xff0c;找出最大长度&#xff0c;最后对找出的最长Y进…

做好产品定位的3个重点

产品定位对于项目而言至关重要&#xff0c;正确的产品定位有助于项目锁定目标市场&#xff0c;精准满足客户需求。通过差异化产品策略&#xff0c;让产品在众多竞品中脱颖而出&#xff0c;形成独特竞争优势&#xff0c;从而有助于产品价值的实现。 因此做好产品定位迫在眉睫&am…