Redis入门到超神 - 02 Redis为什么默认16个数据库
发布日期:2021-06-30 12:37:33 浏览次数:3 分类:技术文章

本文共 955 字,大约阅读时间需要 3 分钟。

序号 标题
01
02
03
04

通过Redis客户端连接工具可以看到,Redis默认有16个数据库。由于Redis不支持自定义数据库的名字,所以每个数据库都以编号命名。

在这里插入图片描述
其实通过redis配置文件 redis.conf 也可以看出默认是16个数据库。我们连接redis默认使用的是0号数据库,可以通过命令 select dbid 进行切换,编号是 0 至 databases-1。
在这里插入图片描述
在这里插入图片描述

如果我们将配置文件中的 databases 16 改为 databases 10 ,则会变成只有10个数据库。

在这里插入图片描述

Redis不支持为每个数据库设置不同的访问密码,Redis只有一个密码,一个客户端要么可以访问全部数据库,要么全部数据库都没有权限。

平常开发中,我们一般默认使用0号数据库,当然你也可以选择其他编号的数据库来进行数据存储。但是不同数据库的数据是不共享的,同一个数据库内的键不可以重复,但是不同数据库的键可以重复。

例如我们在Springboot项目的配置文件中,配置使用1号数据库,当然默认是0号。

spring.redis.host=192.168.111.131spring.redis.port=6379spring.redis.password=123456spring.redis.database=1

在关系型数据库(例如Mysql)中,我们一般用不同的数据库存储不同应用程序的数据,但是对于Redis的数据库,它更像是一种命名空间,不推荐用不同数据库来存储区分不同应用程序的数据。

比如我们可以用0号数据库存储生产环境中的数据,使用1号数据库存储测试环境中的数据,但不适宜使用0号数据库存储应用A的数据,而使用1号数据库应用B的数据。我们更推荐的是不同的应用使用不同的Redis实例存储数据。因为Redis极其轻量级,一个空Redis实例占用的内存只有几M左右,所以不用担心多个Redis实例会额外占用很多内存。

例如我这显示的是才占用7MB左右,很轻量级。

在这里插入图片描述

清空当前数据库所有数据命令为 FLUSHDB ,清空所有数据库的所有数据命令为 FLUSHALL

请注意以上所说的都是基于单机Redis的情况。在集群的情况下不支持使用select命令来切换db,因为Redis集群模式下只有一个db0。

转载地址:https://javalib.blog.csdn.net/article/details/113809826 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:Redis入门到超神 - 03 redis.conf配置文件详解
下一篇:Redis入门到超神 - 01 Redis介绍与安装

发表评论

最新留言

不错!
[***.144.177.141]2024年05月06日 06时57分43秒