【深入学习Redis丨第一篇】Redis服务器部署详解

前言

小伙伴们大家好,我是陈橘又青,今天起 《深入学习Redis》 专栏开始更新。本专栏将专为希望深入了解Redis的开发者、系统架构师以及数据库爱好者而写的免费专栏。从Redis的基本概念入手,逐步深入到其内部实现和高级用法。希望能帮助你更好地利用Redis来构建高效、可靠的应用程序。点此免费订阅,一起探索Redis的奥秘,提升您的开发能力!

注:本专栏部分素材来源于互联网,版权归属于作者,如介意使用,告知后立即删除。

在这里插入图片描述

文章目录

  • 前言
    • 一、Redis概述
      • 1.1、NoSQL
      • 1.2、什么是Redis
      • 1.3、Redis特点
      • 1.4、Redis优缺点
    • 二、Redis下载与安装
      • 2.1、Redis下载
      • 2.2、Redis安装
        • 2.2.1、指定redis存放位置
        • 2.2.2、解压
        • 2.2.3、改名
        • 2.2.3、安装
        • 2.2.4、启动服务
        • 2.2.5、使用客户端程序
    • 三、服务器操作
      • 3.1、服务器端
        • 3.1.1、查看是否启动
        • 3.1.2、启动
        • 3.1.3、关闭
      • 3.2、客户端
        • 3.2.1、启动
        • 3.2.2、关闭
      • 3.3、设置远程访问
    • 四、Redis客户端
      • 4.1、Redis客户端下载
      • 4.2、安装
    • 五、Redis客户端应用
      • 5.1、连接Redis服务端
      • 5.2、客户端操作

一、Redis概述

Redis(全称:Remote Dictionary Server 远程字典服务)是一个开源的使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。从2010年3月15日起,Redis的开发工作由VMware主持。从2013年5月开始,Redis的开发由Pivotal赞助。

Redis是一个开源的使用ANSI C语言编写、遵守BSD协议、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。它通常被称为数据结构服务器,因为值(value)可以是 字符串(String), 哈希(Map), 列表(list), 集合(sets)和有序集合(sorted sets)等类型。

1.1、NoSQL

NoSQL,泛指非关系型的数据库,是不同于传统的关系型数据库的数据库管理系统的统称。

NoSQL用于超大规模数据的存储,收集万亿比特的数据。这些类型的数据存储没有固定的形式,没有多余操作就可以横向扩展。

1.2、什么是Redis

Redis是NoSQL中的一种存储工具,他是一个key-value存储系统。默认有16个数据库从0到15来进行表示。Redis的存储类型:包括string(字符串)、list(链表)、set(集合)、zset(sorted set --有序集合)和hash(哈希类型)。在此基础上,Redis支持各种不同方式的排序。

Redis 被广泛应用在缓存方向,与传统数据库不同的是 Redis 的数据是存在内存中的,因此读写速度非常快。

Redis为分布式缓存,在多客户端的情况下,共用一份缓存数据,缓存具有一致性。

Redis会周期性的把更新的数据写入磁盘或者把修改操作写入追加的记录文件,并且在此基础上实现了master-slave(主从)同步,为了可靠性。

1.3、Redis特点

性能极高 – Redis读的速度是11W次/s,写的速度是81K次/s

支持数据的持久化,可以将内存中的数据保存在磁盘中,重启的时候可以再次加载进行使用。

丰富的数据类型,Redis不仅仅支持简单的key-value类型的数据,同时还提供Strings, Lists, Hashes, Sets 及 Ordered Sets 等数据结构的存储。

支持数据的备份,即master-slave模式的数据备份。

1.4、Redis优缺点

优点:

  • 对数据高并发读写
  • 对海量数据的高效率存储和访问
  • 对数据具有的可扩展性和高可用性

缺点:

  • redis(ACID)处理非常简单
  • 无法做到太复杂的关系数据库模型

二、Redis下载与安装

2.1、Redis下载

下载地址: http://www.redis.cn/download.html

在这里插入图片描述

2.2、Redis安装

2.2.1、指定redis存放位置

/usr/local/目录下

在这里插入图片描述

2.2.2、解压
[root@localhost local]# tar xzf redis-5.0.5.tar.gz 
2.2.3、改名
[root@localhost local]# mv redis-5.0.5 redis
2.2.3、安装

进入redis目录,输入make

[root@localhost /]# cd /usr/local/redis
[root@localhost redis]# make
2.2.4、启动服务

进入src目录,输入./redis-server

[root@localhost redis]# cd src
[root@localhost src]# ./redis-server

在这里插入图片描述

2.2.5、使用客户端程序

进入src目录,输入./redis-cli

[root@localhost ~]# cd /usr/local/redis/src
[root@localhost src]# ./redis-cli

在这里插入图片描述

三、服务器操作

3.1、服务器端

3.1.1、查看是否启动
[root@localhost redis]# ps -ef|grep redis

[root@localhost redis]# ./src/redis-cli ping
3.1.2、启动

前台启动

[root@localhost redis]# ./src/redis-server

后台启动

修改/usr/local/redis/redis.conf文件

daemonize yes  #前台启动,改后台启动

指定配置文件,启动

[root@localhost redis]# ./src/redis-server ./redis.conf
3.1.3、关闭
[root@localhost redis]# ./src/redis-cli shutdown

3.2、客户端

3.2.1、启动
[root@localhost redis]# ./src/redis-cli
127.0.0.1:6379> 
3.2.2、关闭

方式一:指令ctrl+c

方式二:执行指令quit

方式三:执行指令exit

3.3、设置远程访问

修改/usr/local/redis/redis.conf文件

#bind 127.0.0.1  #注释掉允许本地连接 
protected-mode no  #允许远程访问

四、Redis客户端

4.1、Redis客户端下载

下载地址: https://redisdesktop.com/pricing

在这里插入图片描述

4.2、安装

双击打开程序,选择“下一步”

在这里插入图片描述

继续选择“我同意”

在这里插入图片描述

选择安装路径,点击“安装”
在这里插入图片描述

安装中。。。。。。。

在这里插入图片描述

安装完成,点击“下一步”

在这里插入图片描述

选择“桌面快捷”,点击“完成”

在这里插入图片描述

五、Redis客户端应用

5.1、连接Redis服务端

打开客户端

在这里插入图片描述

点击“Connect to Redis Server”,创建连接

在这里插入图片描述

5.2、客户端操作

在这里插入图片描述


在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【Python】 深入理解 Python 包管理器:pip vs conda

基本原理 在Python编程世界中,包管理器是一个不可或缺的工具。它帮助开发者安装、更新和管理Python库。目前,最流行的两个包管理器是pip和conda。了解它们之间的区别,对于Python开发者来说至关重要。 pip pip是Python的官方包管理器&#…

Excel计算两个日期之间差额天数及DATEDIF使用

一.计算两个日期之间的差额天数 1.两个日期直接相减就可以得到两个日期间隔的天数,这里需要注意日期格式哦 日期格式需要为XXXX/XX/XX,不能为XXXX.XX.XX,否则显示Value错误如下。 二.使用DATEDIF函数计算差额天数 该函数只能手写,好像不能自…

Java集合—Set(Collection子接口)及其子类(HashSet、LinkedHashSet)包括HashMap源码分析

Set接口是 Collection接口的子接口。 1、无序,即添加元素和去除元素的顺序不一致。 但是每次取出的顺序是一致的。 2、不允许重复元素,可以有null,但只能有一个。 3、实现类很多,主要介绍HashSet、LinkedHashSet 和 TreeSet。 常用…

使用Ollama和Open WebUI管理本地开源大模型的完整指南

🏡作者主页:点击! 🤖AI大模型部署与应用专栏:点击! ⏰️创作时间:2024年5月27日12点20分 🀄️文章质量:96分 目录 ✨️Open-WebUI介绍 优点 💥部署教程…

Reddit是什么?跨境独立站卖家如何用Reddit营销?

在互联网时代,社交媒体营销已成为品牌推广的重要手段。Reddit,作为一个充满活力的社区平台,正逐渐受到越来越多跨境独立站卖家的关注。如果你在独立站引流方面遇到瓶颈,不妨了解一下Reddit这个平台。本文将介绍Reddit是什么&#…

天诚公租房/人才公寓WiFi人脸识别物联网智能门锁解决方案

人才是引领城市高质量发展的重要因素,城市要想吸纳人才的保障便是人才公寓。近年来,全国各地一二三线城市都在大力建设人才公寓,集聚菁英人才,倾力打造人才高地。 一、人才公寓如火如荼建设 2023年底,山东德州提出三年…

排序进阶----插入排序,希尔排序

各位看官们好,接下来鄙人想与大家分享的实现被称为六大排序之一的插入排序。其实关于这六大排序在我们最开始就已经接触过了。我们在最开始学习c语言的时候,我们要学习到其中之一的冒泡排序。虽然现在看起来冒泡排序确实是没有太大的实际效果&#xff0c…

【第一节】从C语言到C++

目录 一、面向对象编程 1.早期概念 2.发展与普及 3. 现代发展 二、从C语言到C 1.关于堆内存的使用 2.关于函数重载 3.关于默认参数 4.引用 5.引用参数 6.作用域符号 三、C的输入输出机制 一、面向对象编程 面向对象编程(Object-Oriented Programming&am…

Midjourney进阶必看 | 垫图效果的必备技能

还在纠结Midjourney垫图效果不佳?快看看是不是这5点没有做好! 前言一、内容形式要一致二、用文本描述强调画面内容三、尝试不同的--iw参数四、用--no参数去除隐藏干扰项五、记得多生成几次 总结 前言 图像提示词,也就是垫图,是Mi…

Verilog实战学习到RiscV - 1 : Yosys 综合

Yosys 综合 实例 一般 FPGA IDE 的第一步都是RTL 综合(Synthesis)。之后就能看到数字电路图了。然后可以做RTL 级的仿真模拟。 直接上代码,这里我们看一个简单的加法器来学习。 module adder(input [7:0] a,input [7:0] b, input …

Java | Leetcode Java题解之第103题二叉树的锯齿形层序遍历

题目&#xff1a; 题解&#xff1a; class Solution {public List<List<Integer>> zigzagLevelOrder(TreeNode root) {List<List<Integer>> ans new LinkedList<List<Integer>>();if (root null) {return ans;}Queue<TreeNode> n…

el-tabs中的下拉框被覆盖解决方法

解决方法&#xff1a; ::v-deep .el-tabs__content{// overflow:hidden 会导致 分页下拉框超出部分会被.el-tabs__content隐藏overflow: visible; }

基础—SQL—DML(数据操作语言)修改和删除

一、引言 接着上次博客&#xff0c;这次讲解DML语句中的修改数据和删除数据操作。 二、DML—修改数据 UPDATE 表名 SET 字段名1值1 ,字段名2值2 , ...[ WHERE 条件]; 注意&#xff1a;修改语句的条件可以有&#xff0c;也可以没有。如果没有条件&#xff0c;则会修改整张表的…

MySQL 解决登录报错 - 错误1130- Host xxx is not allowed to connect to this server

1、原因 没有给远程连接权限 2、解决 2.1 打开命令行提示符界面输入命令cd C:\Program Files\MySQL\MySQL Server 8.0\bin\ 2.2 连接 MySQL 数据库 输入命令 mysql -u root -p &#xff0c;然后输入密码 回车登录 2.3 查看当前表中的数据库 show databases;查看当前使用的数…

每天写两道(二)LRU缓存、数组中最大的第k个元素

146.LRU 缓存 . - 力扣&#xff08;LeetCode&#xff09; 请你设计并实现一个满足 LRU (最近最少使用) 缓存 约束的数据结构。 实现 LRUCache 类&#xff1a; LRUCache(int capacity) 以 正整数 作为容量 capacity 初始化 LRU 缓存int get(int key) 如果关键字 key 存在于缓存…

在Anki中按某个字段满足的条件查找笔记

Anki中可以使用deck、tag、card、note、is、prop、added、rated、nid、cid等关键字按照牌组、标签、卡片、卡片类型、状态、属性、添加时间、回答时间、对象id等对卡片进行筛选&#xff0c;但是没有提供按卡片字段进行筛选的关键字&#xff0c;那么&#xff0c;怎么按卡片字段是…

C++ (week5):Linux系统编程3:线程

文章目录 三、线程1.线程的基本概念①线程相关概念②我的理解 2.线程的基本操作 (API)(1)获取线程的标识&#xff1a;pthread_self(2)创建线程&#xff1a;pthread_create()(3)终止线程①pthread_exit()&#xff1a;当前线程终止&#xff0c;子线程主动退出②pthread_cancel()&…

安卓ADB通过WIFI无线连接手机[通过无线安装APK]

安卓ADB通过无线连接手机 本文摘录于&#xff1a;https://www.cnblogs.com/zhuxibo/p/14261117.html只是做学习备份之用&#xff0c;绝无抄袭之意&#xff0c;有疑惑请联系本人&#xff01; 别人给的操作确实可行,我这里实操记录如下: AdministratorpiaoranPC MINGW64 /e/Wor…

大模型部署框架 FastLLM 简要解析

0x0. 前言 本文主要是对FastLLM做了一个简要介绍&#xff0c;展示了一下FastLLM的部署效果。然后以chatglm-6b为例&#xff0c;对FastLLM模型导出的流程进行了解析&#xff0c;接着解析了chatglm-6b模型部分的核心实现。最后还对FastLLM涉及到的优化技巧进行了简单的介绍。 0…

Java 阻塞队列与生产者消费者模型

一、阻塞队列 阻塞队列是⼀种特殊的队列&#xff0c;其也遵守队列 "先进先出" 的原则&#xff1b; 阻塞队列是⼀种线程安全的数据结构&#xff0c;并且具有以下特性&#xff1a; 当队列满的时候&#xff0c;继续入队列就会阻塞&#xff0c;直到有其他线程从队列中…