redis 多数据库
2016-06-08 21:36
387 查看
redis默认有db0~db15之多。使用redis客户端工具可以看到:
一台服务器上都快开启200个redis实例了,看着就崩溃了。这么做无非就是想让不同类型的数据属于不同的应用程序而彼此分开。
那么,redis有没有什么方法使不同的应用程序数据彼此分开同时又存储在相同的实例上呢?就相当于mysql数据库,不同的应用程序数据存储在不同的数据库下。
redis下,数据库是由一个整数索引标识,而不是由一个数据库名称。默认情况下,一个客户端连接到数据库0。redis配置文件中下面的参数来控制数据库总数:
可以通过下面的命令来切换到不同的数据库下
随后,所有的命令将使用数据库3,知道你明确的切换到另一个数据库下。
每个数据库都有属于自己的空间,不必担心之间的key冲突。
不同的数据库下,相同的key取到各自的值。
flushdb命令清除数据,只会清除当前的数据库下的数据,不会影响到其他数据库。
flushall命令会清除这个实例的数据。在执行这个命令前要格外小心。
数据库的数量是可以配置的,默认情况下是16个。修改redis.conf下的databases指令:
redis没有提供任何方法来关联标识不同的数据库。因此,需要你来跟踪什么数据存储到哪个数据库下。
因此上面的快开启200个实例的场景,可以使用不同的数据库来存储,而不必开启如此那么多的实例。
转载请注明来自运维生存时间: http://www.ttlsa.com/html/4010.html
一台服务器上都快开启200个redis实例了,看着就崩溃了。这么做无非就是想让不同类型的数据属于不同的应用程序而彼此分开。
那么,redis有没有什么方法使不同的应用程序数据彼此分开同时又存储在相同的实例上呢?就相当于mysql数据库,不同的应用程序数据存储在不同的数据库下。
redis下,数据库是由一个整数索引标识,而不是由一个数据库名称。默认情况下,一个客户端连接到数据库0。redis配置文件中下面的参数来控制数据库总数:
1 | databases 16 |
1 2 | redis> select 2 OK |
每个数据库都有属于自己的空间,不必担心之间的key冲突。
不同的数据库下,相同的key取到各自的值。
flushdb命令清除数据,只会清除当前的数据库下的数据,不会影响到其他数据库。
flushall命令会清除这个实例的数据。在执行这个命令前要格外小心。
数据库的数量是可以配置的,默认情况下是16个。修改redis.conf下的databases指令:
1 | databases 64 |
因此上面的快开启200个实例的场景,可以使用不同的数据库来存储,而不必开启如此那么多的实例。
转载请注明来自运维生存时间: http://www.ttlsa.com/html/4010.html
相关文章推荐
- win7 64位安装redis 及Redis Desktop Manager客户端工具的使用
- Redis CrackIT 入侵事件引发Linux 沦陷
- Redis的三种启动方式
- Redis 配置
- 使用强大的可视化工具redislive来监控我们的redis,别让自己死的太惨~~~
- Redis 学习笔记
- Linux 搭建redis-cluster
- RESTful登录设计(基于Spring及Redis的Token鉴权)
- redis只加载AOF文件
- windows下redis的安装配置和php扩展使用phpredis
- redigo的redis.Pool 配置参数调优
- 编译tomcat-redis-session-manager-master部署到tomcat上
- 本机(windows)链接 虚拟机redis
- Redis Sentinel机制与用法说明【转】
- Thinkphp设置session共享使用 redis实现
- redis 五种数据类型的使用场景
- 谈谈Redis的SETNX
- SpringMVC Cache注解+Redis
- redis keyexpiredlistener
- redis—持久化