背景
在實際專案中redis常被應用于做快取,分布式鎖/訊息佇列等,但是在搭建配置好redis服務器后很多朋友應該會發現和有這樣的疑問,為什么redis默認建立了16個資料庫,
16個資料庫的由來
redis是一個字典結構的存盤服務器,一個redis實體提供了多個用來存盤資料的字典,客戶端可以指定將資料存盤在哪個字典中,這與在一個關系資料庫實體中可以創建多個資料庫類似,所有可以將其中的每個字典都理解成一個獨立的資料庫,redis默認支持16個資料庫,可以通過調整redis的組態檔redis/redis.conf中的databases來修改這一個值,設定完畢后重啟redis便完成配置,

客戶端與redis建立鏈接后會默認選擇0號資料庫,不過可以隨時使用select命令更換資料庫,
# 切換資料庫操作:切換到1
127.0.0.1:6379> SELECT 1
OK
127.0.0.1:6379[1]>
127.0.0.1:6379[1]>
# 切換到0
127.0.0.1:6379[1]> SELECT 0
OK
127.0.0.1:6379>
# 從1號庫中獲取username
127.0.0.1:6379[1]> get username ,
在實際專案中則可以通過以redis組態檔的形式指定資料庫

集群情況下是否支持一個實體多個db?
以上所說的都是基于單體redis的情況,而在集群的情況下不支持使用select命令來切換db,因為redis集群模式下只有一個db0,
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/262747.html
標籤:.NET Core
