返回顶部
首页 > 资讯 > 数据库 >Redis为什么默认建立16个数据库
  • 455
分享到

Redis为什么默认建立16个数据库

2024-04-02 19:04:59 455人浏览 泡泡鱼
摘要

这篇文章主要讲解了“Redis为什么默认建立16个数据库”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Redis为什么默认建立16个数据库”吧!在实际项目中

这篇文章主要讲解了“Redis为什么默认建立16个数据库”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Redis为什么默认建立16个数据库”吧!

在实际项目中Redis常被应用于做缓存,分布式锁、消息队列等。但是在搭建配置好Redis服务器后很多朋友应该会发现和有这样的疑问,为什么Redis默认建立了16个数据库?

在实际项目中Redis常被应用于做缓存分布式消息队列等。但是在搭建配置好Redis服务器后很多朋友应该会发现和有这样的疑问,为什么Redis默认建立了16个数据库,如下图所示。

Redis为什么默认建立16个数据库

一、16个数据库的由来

Redis是一个字典结构的存储服务器,一个Redis实例提供了多个用来存储数据的字典,客户端可以指定将数据存储在哪个字典中。这与在一个关系数据库实例中可以创建多个数据库类似(如下图所示),所以可以将其中的每个字典都理解成一个独立的数据库。

Redis为什么默认建立16个数据库

Mysql实例为例

Redis默认支持16个数据库,可以通过调整Redis的配置文件redis/redis.conf中的databases来修改这一个值,设置完毕后重启Redis便完成配置。

Redis为什么默认建立16个数据库

客户端与Redis建立连接后会默认选择0号数据库,不过可以随时使用SELECT 命令更换数据库。

# 切库 
redis> SELECT 1 # 默认0号db,切换为1号db 
OK 
redis [1] > GET username # 从1号库中获取 username  
(nil)

在实际项目中则可以通过以Redis配置文件的形式指定数据库,如下图所示

Redis为什么默认建立16个数据库

二、正确理解Redis的“数据库”概念

Redis为什么默认建立16个数据库

由于Redis不支持自定义数据库的名字,所以每个数据库都以编号命名。开发者则需要自己记录存储的数据与数据库的对应关系。另外Redis也不支持为每个数据库设置不同的访问密码,所以一个客户端要么可以访问全部数据库,要么全部数据库都没有权限访问。但是,要正确地理解Redis的“数据库”概念这里不得不提到一个 命令:

# 清空一个Redis实例中所有数据库中的数据 
redis 127.0.0.1:6379> FLUSHALL

该命令可以清空实例下的所有数据库数据,这与我们所熟知的关系型数据库所不同。关系型数据库多个库常用于存储不同应用程序的数据 ,且没有方式可以同时清空实例下的所有库数据。所以对于Redis来说这些db更像是一种命名空间,且不适宜存储不同应用程序的数据。比如可以使用0号数据库存储某个应用生产环境中的数据,使用1号数据库存储测试环境中的数据,但不适宜使用0号数据库存储A应用的数据而使用1号数据库B应用的数据,不同的应用应该使用不同的Redis实例存储数据。Redis非常轻量级,一个空Redis实例占用的内在只有1M左右,所以不用担心多个Redis实例会额外占用很多内存。

三、集群情况下是否支持一个实例多个db?

Redis为什么默认建立16个数据库

要注意以上所说的都是基于单体Redis的情况。而在集群的情况下不支持使用select命令来切换db,因为Redis集群模式下只有一个db0。再扩展一些集群与单机Reids的区别,感兴趣的朋友可以去查阅相关的资料深入理解,这里就不做讨论了。

  • key批量操作支持有限:例如mget、mset必须在一个slot

  • Key事务lua支持有限:操作的key必须在一个节点

  • key是数据分区的最小粒度:不支持bigkey分区

  • 不支持多个数据库:集群模式下只有一个db0

  • 复制只支持一层:不支持树形复制结构

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

您可能感兴趣的文档:

--结束END--

本文标题: Redis为什么默认建立16个数据库

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

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

猜你喜欢
  • Redis为什么默认建立16个数据库
    这篇文章主要讲解了“Redis为什么默认建立16个数据库”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Redis为什么默认建立16个数据库”吧!在实际项目中...
    99+
    2024-04-02
  • Redis为什么默认16个数据库
    注:本文原作者并没有解释‘为什么’,只是说是配置文件默认16.       所以我猜redis作者只是在告诉使用者,这个数请随意改。 导读:在实际项目中Redis常被应用于做缓存,分布式锁、消息队列等。但是在搭建配置好Red...
    99+
    2018-01-15
    Redis为什么默认16个数据库
  • redis默认建立16个数据库的原因
    这篇文章给大家分享的是有关redis默认建立16个数据库的原因的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。在实际的开发工作中,我们通常会使用redis数据库做缓存、分布式锁/消...
    99+
    2024-04-02
  • Redis为什么默认有16个数据库问题
    目录16个数据库的由来正确理解Redis的“数据库”概念集群情况下是否支持一个实例多个db?总结在实际项目中Redis常被应用于做缓存,分布式锁、消息队列等。...
    99+
    2023-02-16
    Redis数据库 Redis默认数据库 Redis16个数据库
  • redis有多少个默认数据库
    小编给大家分享一下redis有多少个默认数据库,希望大家阅读完这篇文章后大所收获,下面让我们一起去探讨吧!redis下,数据库是由一个整数索引标识,而不是由一个数据库名称。默认情况下,一个客户端连接到数据库...
    99+
    2024-04-02
  • 数据库为什么要建立索引
    今天小编给大家分享的是数据库要建立索引的原因,相信大部分人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,话不多说,一起往下看吧。数据库中建立索引的主要作用是为了提高查询速度。索引可以加快对数据的...
    99+
    2024-04-02
  • mysql 8.0 四个默认数据库
    mysql 8.0 安装完成后会自动生成四个数据库information_schemaNFORMATION_SCHEMA提供对数据库元数据的访问 ,有关MySQL服务器的信息,例如数据库或表的名称,列的数据...
    99+
    2024-04-02
  • 为什么redis支持多个数据库
    为什么redis支持多个数据库?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。注意:Redis支持多个数据库,并且每个数据库的数据是隔离的不...
    99+
    2024-04-02
  • MySQL怎么为每个数据库建立一个文件夹
    在MySQL中,每个数据库都有一个对应的文件夹来存储相关的文件。要为每个数据库建立一个文件夹,可以按照以下步骤操作:1. 找到MyS...
    99+
    2023-10-18
    MySQL 数据库
  • Django中更改默认数据库为mysq
    Django中默认使用sqlite3数据库,今天研究了下如何将它换成常见的mysql数据库。 由于项目用得python3,而MySQLdb没有支持python3的版本,如果使用python3.x版本时,pip install MySQLd...
    99+
    2023-01-31
    数据库 Django mysq
  • mysql 默认的4个数据库 介绍
    mysql 存储MySQL的用户账号和权限信息,一些存储过程、事件的定义信息 一些运行过程中产生的日志信息,一些帮助信息以及时区信息等 information_schema 存储Mysql服务器 维护...
    99+
    2023-09-13
    数据库 mysql
  • 为什么Redis选择6379作为默认端口号
    小编给大家分享一下为什么Redis选择6379作为默认端口号,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!Redis是一个开源的...
    99+
    2024-04-02
  • MySQL默认数据库的作用是什么
    本篇文章为大家展示了MySQL默认数据库的作用是什么,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。一、mysql库。该库是mysql核心数据库,该库下的表主要存储数...
    99+
    2024-04-02
  • oracle数据库默认排序规则是什么
    Oracle数据库默认排序规则是二进制排序规则(Binary Sorting Rule),也称为字典排序(Dictionary So...
    99+
    2023-09-11
    oracle数据库
  • mysql数据库默认字符编码是什么
    默认字符编码取决于操作系统:unix/linux:utf8mb4windows:mysql 8.0+:utf8mb4,mysql 5.7-:latin1 MySQL 数据库默认字符编码...
    99+
    2024-04-22
    mysql linux 数据丢失
  • phpmyadmin数据库管理工具的默认用户名和密码默认是什么
    小编给大家分享一下phpmyadmin数据库管理工具的默认用户名和密码默认是什么,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!p...
    99+
    2024-04-02
  • mysql怎么建立数据库
    本篇内容介绍了“mysql怎么建立数据库”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!mysql建立数据库使用create命令:新建数据库例...
    99+
    2023-06-13
  • navicat怎么建立数据库
    navicat 建立数据库的步骤包括:连接到数据库服务器。创建数据库。设置数据库选项。创建表。插入数据。 如何使用 Navicat 建立数据库 步骤 1:连接到数据库服务器 打开 N...
    99+
    2024-04-06
    mysql navicat 数据丢失
  • mysql数据库怎么建立
    问题:如何建立 mysql 数据库?回答:连接到 mysql 服务器。创建数据库。创建表。定义表中的列类型。指定列约束。插入数据。查询数据。 MySQL 数据库建立指南 建立数据库 ...
    99+
    2024-04-22
    mysql linux
  • access建立数据库的步骤是什么
    建立数据库的步骤通常如下:1. 确定数据库的需求和目标:首先需要明确数据库的用途、存储数据类型、数据量等方面的需求和目标。2. 设计...
    99+
    2023-09-20
    access 数据库
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作