广告
返回顶部
首页 > 资讯 > 数据库 >Redis的概念及搭建方法
  • 504
分享到

Redis的概念及搭建方法

2024-04-02 19:04:59 504人浏览 独家记忆
摘要

这篇文章主要讲解了“Redis的概念及搭建方法”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Redis的概念及搭建方法”吧! Redis 简介什么

这篇文章主要讲解了“Redis的概念及搭建方法”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Redis的概念及搭建方法”吧!

 Redis 简介

什么是 Redis

Redis 的全称是 Remote Dictionary Server,它是一款 开源的 高性能的 NoSQL 数据库,它可以用作 数据库缓存 和  消息队列

什么是 NoSQL

Nosql 最常见的解释是 naon-relational,非关系型数据库,还有一种说法是 Not Only SQL,不仅仅是 SQL,NoSQL  仅仅是一个概念,泛指非关系型的数据库,区别于关系数据库,它们不保证关系数据的 ACID 特性。ACID 即

  • A (Atomicity) 原子性

  • C (Consistency) 一致性

  • I (Isolation) 独立性

  • D (Durability) 持久性

Redis 通过提供多种键值对的数据类型来适应不同场景下的存储需求。

NoSQL 的代表

作为 NoSQL 的代表主要有

Redis的概念及搭建方法

NoSQL 的优点

Redis 相较于关系型数据库模型,它还是具有很多优点的

  • 易扩展

NoSQL 数据库种类繁多,但是一个共同的特点就是去掉关系数据库的关系型特性,数据之间无关系,这样就非常容易扩展。

NoSQL 数据库都具有非常高的读写性能,尤其在大数据量下,同样表现很优秀。

  • 灵活的数据模型

NoSQL 无需事先建立字段,这省去了关系型数据库一旦建立字段,可扩展性非常差的不利局面。NoSQL 随时可以存储自定义的数据格式。

NoSQL 在不太影响性能的情况,就可以方便地实现高可用的架构。比如 Cassandra、HBase 模型,通过复制模型也能实现高可用。

Redis 数据类型

Redis 支持的数据类型主要有五种,它们分别是

string 字符串 是 Redis 中最简单的数据类型,它是与 Memcached 一样的类型,一个 key 对应一个 value,这种  key/value 对应的方式称为键值对。字符串对很多例子都有用,例如缓存 html 片段和网页。

set 是集合,和我们数学中的集合概念相似,对集合的操作有添加删除元素,有对多个集合求交并差等操作。操作中 key 理解为集合的名字。

  • 散列 - hash

hash 是一个键值 (key=>value) 对集合;是一个 string 类型的 field 和 value 的映射表,hash  特别适合用于存储对象。

  • 列表 - list

Redis  列表是简单的字符串列表,按照插入顺序排序。你可以添加一个元素到列表的头部(左边)或者尾部(右边)。list类型经常会被用于消息队列的服务,以完成多程序之间的消息交换。

  • 有序集合 - zset

Redis zset 和 set 一样也是 string 类型元素的集合,且不允许重复的成员。当你需要一个有序的并且不重复的集合列表时,那么可以选择  sorted set 数据结构

Redis 安装

Redis 支持在 linux、OS X 、BSD 等 POSIX 系统中安装,也支持在 windows 中安装,在 Windows  、Linux 下的安装请参考 https://www.runoob.com/redis/redis-install.html

我自己的电脑是 Mac 系统,mac 系统的安装过程是 Https://www.jianshu.com/p/bb7c19c5fc47

如果你用的是 Homebrew,它的安装过程是 https://www.jianshu.com/p/e1e5717049e8

Redis 启动

安装完成 Redis 后,我们需要启动 Redis,不过我们在启动 Redis 之前,需要先了解一下 Redis 的可执行文件,如果你是下载的  tar.gz 安装包,可以使用 make install 进行编译,编译完成后会在 /usr/local/bin 目录生成下面这几个可执行文件

Redis的概念及搭建方法

下面我们来一起认识一下这些可执行文件的作用

  • redis-benchmark 是 Redis 性能测试工具,可以使用 redis-benchmark 进行基准测试,比如redis-benchmark  -q -n 100000 ,这个工具使用起来非常方便,同时你可以使用自己的基准测试工具

  • redis-check-rdb RDB 文件检查工具,rdb 是 Redis 的一种持久化方式

  • redis-check-aof AOF 文件检查工具,aof 也是 Redis 的一种持久化方式,关于这两种持久化方式我们后面会说

  • redis-sentinel redis-sentinel 就是一个独立运行的进程,用于监控多个 master-slave 集群, 自动发现 master  宕机,进行自动切换 slave > master。

  • redis-cli,redis-cli 和 后面的 redis-server 都是常用的而且比较重要的命令,是你登录 redis 的指令

  • redis-server,redis-server 是 redis 的后台服务器

Redis 启动分为两种,一种是直接运行 redis-server,一种是通过 redis  脚本启动,前者一般用于开发环境,脚本启动一般用于生产环境,这里我们直接使用直接启动的方式。

直接运行 redis-server 即可启动 redis

Redis的概念及搭建方法

也可以通过指定 Redis 的端口来运行 Redis

redis-server --port 6380

这里我们就不贴出图了。

Redis 停止

考虑到 Redis 有可能正在将内存中的数据同步到硬盘中,强制执行 Redis 的停止命令可能导致数据丢失。正确停止 Redis 的方式应该是向  Redis 发送 SHUTDOWN 命令,如下

redis-cli SHUTDOWN

这里你可能还不清楚 redis-cli 是什么指令,我们下面会说。

当 Redis 收到 SHUTDOWN 指令后,会先断开所有客户端连接,然后根据配置执行持久化,最后完成退出。

也可以使用 kill Redis 端口 来正常结束 Redis ,效果与 SHUTDOWN 命令一样。

Redis 命令行客户端

下面我们来说一下 redis-cli 指令,redis-cli 和 redis-server 都是 Redis  中非常重要的工具,你一定要知道,redis-cli 的全称是 Redis Command Line Interface,是 Redis  自带的命令行工具,它主要有下面这几种用法

发送命令

通过 redis-cli 向 Redis 发送命令的方式有两种,一种是将命令作为 redis-cli 的参数执行,比如上面的 redis-cli  SHUTDOWN 命令,redis-cli 在执行时会按照默认的主机和端口号来进行连接,默认的主机和端口号分别是 127.0.0.1 和 6379 连接  Redis

Redis的概念及搭建方法

也可以通过 -h 和 -p 参数自定义地址和端口号

redis-cli -h 127.0.0.1 -p 6379

Redis的概念及搭建方法

Redis 提供了 PING 命令来测试客户端与 Redis 的连接是否正常,如果正常会回复到 PONG 响应,如下

redis-cli PING

Redis的概念及搭建方法

命令返回值

在大多数情况下,执行一条命令后我们会希望获得命令的返回值,在 Redis 中,Redis 的命令返回值主要有 5 种类型,对于每种类型 redis-cli  的展现结果都不同,下面分别进行说明

状态回复

状态回复(status reply)是一种最简单的回复,比如向 Redis 发送 SET 命令设置某个键的值时,Redis 会回复 OK  表示设置成功。我们上面说到的 PING 和 PONG 也是一种状态回复。状态回复会直接显示状态信息。

错误回复

错误回复(error reply)指的是,当出现命令不存在或者命令有错误时,会出现错误回复,并在后面跟上错误信息。比如执行一个不存在的指令

Redis的概念及搭建方法

整数回复

Redis 虽然没有整数类型,但是却提供了一些用于整数操作的指令,如递增键值的  INCR命令会以整数形式返回递增后的键值。除此之外,一些其他的命令也会返回整数。整数回复(integer reply) 以 integer  为开头然后在后面跟上整型数据

Redis的概念及搭建方法

字符串回复

字符串回复(bulk reply)  是最常见的一种回复类型,当请求一个字符串类型的键的键值或一个其他类型键中的某个元素时就会得到一个字符串回复。字符串回复以双引号包裹

Redis的概念及搭建方法

还有一种情况时这个请求的键值不存在时会返回 nli,表示返回的是一个空结果。

Redis的概念及搭建方法

多行字符串回复

多行字符串回复(multi-bulk reply) 同样很常见,如当请求一个非字符串类型的键的元素列表时就会收到多行字符串回复

Redis 配置

redis  可以支持自定义配置,比如是否开启持久化、配置日志级别等。由于可配置的选项比较多,通过启动来配置这些选项并不合理,因此可以通过程序员手动配置。启用配置文件的方法是在启动时将配置文件的路径作为启动参数传递给  redis-server,如下

redis-server /路径/redis.conf

通过参数传递同名的配置选项会覆配置文件中相应的参数,如下

redis-server /路径/redis.conf --loglevel warning

Redis 提供了一个配置文件的模版 redis.conf,Redis 也支持动态修改配置,可以使用 CONFIG SET 命令在不重新 Redis  的情况下动态修改 Redis

CONFIG SET loglevel warning

Redis 多数据库切换

Redis 是一个字典结构的存储服务器,实际上一个 Redis 实例提供了多个用来存储数据的字典,客户端可以指定将数据存放在哪个字典中。

每个数据库对外都是以一个从 0 开始的递增数字命名,Redis 默认支持 16 个数据库,可以通过配置 databases 来修改这一数字。客户端与  Redis 建立连接后会默认选择 0 号数据库,不过可以使用 select 命令切换数据库。

select 1

这条指令就会选择 1 号数据库

Redis的概念及搭建方法

感谢各位的阅读,以上就是“Redis的概念及搭建方法”的内容了,经过本文的学习后,相信大家对Redis的概念及搭建方法这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是编程网,小编将为大家推送更多相关知识点的文章,欢迎关注!

您可能感兴趣的文档:

--结束END--

本文标题: Redis的概念及搭建方法

本文链接: https://www.lsjlt.com/news/59715.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Redis的概念及搭建方法
    这篇文章主要讲解了“Redis的概念及搭建方法”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Redis的概念及搭建方法”吧! Redis 简介什么...
    99+
    2022-10-18
  • redis搭建及维护的方法是什么
    要搭建和维护Redis,可以按照以下步骤进行:1. 下载和安装Redis:可以从Redis官方网站上下载适合自己操作系统的Redis...
    99+
    2023-08-30
    redis
  • 集群和负载均衡的概念以及用apache和tomcat搭建集群的方法
    本篇内容介绍了“集群和负载均衡的概念以及用apache和tomcat搭建集群的方法”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!一、集群和负...
    99+
    2023-06-05
  • JavaScript类型概念及使用的方法
    这篇文章主要介绍“JavaScript类型概念及使用的方法”,在日常操作中,相信很多人在JavaScript类型概念及使用的方法问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”...
    99+
    2022-10-19
  • 搭建Redis环境的方法
    小编给大家分享一下搭建Redis环境的方法,希望大家阅读完这篇文章后大所收获,下面让我们一起去探讨吧!序言在实际开发项目过程中, 如果说要用到缓存, 那么第一个想到的一定是Redis, 但是为什么选Redi...
    99+
    2022-10-18
  • redis搭建集群的方法
    这篇文章给大家分享的是有关redis搭建集群的方法的内容。小编觉得挺实用的,因此分享给大家做个参考。一起跟随小编过来看看吧。redis集群的搭建集群搭建:Redis集群至少需要3个节点第一步:创建一个文件夹...
    99+
    2022-10-18
  • redis集群搭建的方法
    这篇文章主要介绍redis集群搭建的方法,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!redis集群搭建在介绍正式内容之前,首先我们来介绍一下redis单机版的搭建步骤是怎样的。下载...
    99+
    2022-10-18
  • 搭建Redis集群的方法
    这篇文章主要讲解了“搭建Redis集群的方法”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“搭建Redis集群的方法”吧!Redis集群是一个由多个主从节点群组成的分布式服务集群,它具有复制、...
    99+
    2023-06-27
  • MySQL字符集的概念及设置方法
    本篇内容介绍了“MySQL字符集的概念及设置方法”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成! ...
    99+
    2022-10-18
  • php中图的概念以及存储的方法
    这篇文章主要讲解了“php中图的概念以及存储的方法”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“php中图的概念以及存储的方法”吧!随着学习的深入,我们的知识也在不断的扩展丰富。树结构有没有...
    99+
    2023-06-20
  • laravel中的Service Container的概念及使用方法
    这篇文章主要讲解了“laravel中的Service Container的概念及使用方法”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“laravel中的Service Container的概...
    99+
    2023-06-20
  • ChatGLM-6B (介绍相关概念、基础环境搭建及部署)
    文章目录 前言一、ChatGLM-6B是什么?二、安装虚拟的python环境1.下载2.安装3.设置国内源(危险)4.虚拟环境使用简介 三、部署ChatGLM-6B1. clone代码2....
    99+
    2023-08-31
    chatgpt chatglm python 人工智能
  • Redis6.0搭建集群Redis-cluster的方法
    此处以三台服务器部署为例,IP地址分别为192.168.124.23,192.168.124.24,192.168.124.25 使用普通用户ubuntu登录 总共三个主节点和三个从...
    99+
    2022-11-12
  • windows下搭建redis集群的方法
    小编给大家分享一下windows下搭建redis集群的方法,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!前言:集群是指通过添加服...
    99+
    2022-10-18
  • JDK,JRE,JVM概念是什么及使用方法
    这篇文章给大家介绍JDK,JRE,JVM概念是什么及使用方法,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。向大家简单介绍一下JDK,JRE,JVM概念及用法,为了保持JDK的独立性和完整性,在JDK的安装过程中,JRE...
    99+
    2023-06-17
  • redis集群搭建的方法是什么
    要搭建Redis集群,可以按照以下步骤进行操作:1. 准备多台服务器,每台服务器上都安装Redis。2. 在每台服务器上的Redis...
    99+
    2023-09-09
    redis
  • Redis环境搭建和使用的方法
    这篇文章主要介绍“Redis环境搭建和使用的方法”,在日常操作中,相信很多人在Redis环境搭建和使用的方法问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Redis环境搭建和...
    99+
    2022-10-19
  • MySQL 参数相关概念及查询更改方法
    前言: 在前面一些文章中,经常能看到介绍某某参数的作用,可能有些小伙伴仍搞不清楚 MySQL 参数是啥。本篇文章我们来聊聊 MySQL 参数,学习下如何管理维护 MySQL 参数。 1.MySQL参数概念 我们所说...
    99+
    2022-05-23
    MySQL 参数 MySQL 查询更改
  • ECS云服务器快照概念及使用方法
    这篇文章主要讲解了“ECS云服务器快照概念及使用方法”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“ECS云服务器快照概念及使用方法”吧!阿里云ECS云服务器快照概念以及使用1.快照的概念1....
    99+
    2023-06-30
  • JavaScript中Promise的基本概念及使用方法是什么
    本篇内容主要讲解“JavaScript中Promise的基本概念及使用方法是什么”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“JavaScript中Promis...
    99+
    2022-10-19
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作