有人问我,redis的多数据库,是不是启动多个redis进程,监听不同的端口。从某种层面上来说,这样可以算是,但是不推荐。
1,redis数据库
redis的数据库个数,在配置文件中设定死了,并且名称是不允许改的。
databases 16 //默认16个数据库
这16个数据库编号是0-15,如果没有切换数据库的话,默认是0号数据库.
# telnet 127.0.0.1 6379
Trying 127.0.0.1...
Connected to 127.0.0.1.
Escape character is '^]'.
set test 123 //在0号数据库设置test为123
+OK
select 1 //切换到1号数据库
+OK
set test 456 //设置test为456
+OK
get test //1号数据库test为456
$3
456
select 0 //切换到0号数据库
+OK
get test //test为123
$3
123
数据库间相同的key,相互不受影响。
2,mongodb数据库
mongodb非常像关系型数据库,与redis不同的是,mongodb不用事先定义多少个数据库,数据库名也是自定义的。限制比redis少。
# mongo
MongoDB shell version: 2.6.4-pre-
connecting to: test
> use tank //tank数据库存在,切换到tank,如果不存在,创建tank数据库
switched to db tank