概述
序号 | 标题 |
---|---|
01 | Redis入门到超神 - 01 Redis介绍与安装 |
02 | Redis入门到超神 - 02 Redis为什么默认16个数据库 |
03 | Redis入门到超神 - 03 redis.conf配置文件详解 |
04 | Redis入门到超神 - 04 redis的5种数据结构 |
通过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.131
spring.redis.port=6379
spring.redis.password=123456
spring.redis.database=1
在关系型数据库(例如Mysql)中,我们一般用不同的数据库存储不同应用程序的数据,但是对于Redis的数据库,它更像是一种命名空间,不推荐用不同数据库来存储区分不同应用程序的数据。
比如我们可以用0号数据库存储生产环境中的数据,使用1号数据库存储测试环境中的数据,但不适宜使用0号数据库存储应用A的数据,而使用1号数据库应用B的数据。我们更推荐的是不同的应用使用不同的Redis实例存储数据。因为Redis极其轻量级,一个空Redis实例占用的内存只有几M左右,所以不用担心多个Redis实例会额外占用很多内存。
例如我这显示的是才占用7MB左右,很轻量级。
清空当前数据库所有数据命令为 FLUSHDB
,清空所有数据库的所有数据命令为 FLUSHALL
。
请注意以上所说的都是基于单机Redis的情况。在集群的情况下不支持使用select命令来切换db,因为Redis集群模式下只有一个db0。
最后
以上就是炙热楼房为你收集整理的Redis入门到超神 - 02 Redis为什么默认16个数据库的全部内容,希望文章能够帮你解决Redis入门到超神 - 02 Redis为什么默认16个数据库所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复