91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Redis為什么默認建立16個數據庫

發布時間:2021-12-29 15:42:33 來源:億速云 閱讀:164 作者:iii 欄目:數據庫

這篇文章主要講解了“Redis為什么默認建立16個數據庫”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“Redis為什么默認建立16個數據庫”吧!

在實際項目中Redis常被應用于做緩存,分布式鎖、消息隊列等。但是在搭建配置好Redis服務器后很多朋友應該會發現和有這樣的疑問,為什么Redis默認建立了16個數據庫?

在實際項目中Redis常被應用于做緩存,分布式鎖、消息隊列等。但是在搭建配置好Redis服務器后很多朋友應該會發現和有這樣的疑問,為什么Redis默認建立了16個數據庫,如下圖所示。

Redis為什么默認建立16個數據庫

一、16個數據庫的由來

Redis是一個字典結構的存儲服務器,一個Redis實例提供了多個用來存儲數據的字典,客戶端可以指定將數據存儲在哪個字典中。這與在一個關系數據庫實例中可以創建多個數據庫類似(如下圖所示),所以可以將其中的每個字典都理解成一個獨立的數據庫。

Redis為什么默認建立16個數據庫

MySQL實例為例

Redis默認支持16個數據庫,可以通過調整Redis的配置文件redis/redis.conf中的databases來修改這一個值,設置完畢后重啟Redis便完成配置。

Redis為什么默認建立16個數據庫

客戶端與Redis建立連接后會默認選擇0號數據庫,不過可以隨時使用SELECT 命令更換數據庫。

# 切庫 
redis> SELECT 1 # 默認0號db,切換為1號db 
OK 
redis [1] > GET username # 從1號庫中獲取 username  
(nil)

在實際項目中則可以通過以Redis配置文件的形式指定數據庫,如下圖所示

Redis為什么默認建立16個數據庫

二、正確理解Redis的“數據庫”概念

Redis為什么默認建立16個數據庫

由于Redis不支持自定義數據庫的名字,所以每個數據庫都以編號命名。開發者則需要自己記錄存儲的數據與數據庫的對應關系。另外Redis也不支持為每個數據庫設置不同的訪問密碼,所以一個客戶端要么可以訪問全部數據庫,要么全部數據庫都沒有權限訪問。但是,要正確地理解Redis的“數據庫”概念這里不得不提到一個 命令:

# 清空一個Redis實例中所有數據庫中的數據 
redis 127.0.0.1:6379> FLUSHALL

該命令可以清空實例下的所有數據庫數據,這與我們所熟知的關系型數據庫所不同。關系型數據庫多個庫常用于存儲不同應用程序的數據 ,且沒有方式可以同時清空實例下的所有庫數據。所以對于Redis來說這些db更像是一種命名空間,且不適宜存儲不同應用程序的數據。比如可以使用0號數據庫存儲某個應用生產環境中的數據,使用1號數據庫存儲測試環境中的數據,但不適宜使用0號數據庫存儲A應用的數據而使用1號數據庫B應用的數據,不同的應用應該使用不同的Redis實例存儲數據。Redis非常輕量級,一個空Redis實例占用的內在只有1M左右,所以不用擔心多個Redis實例會額外占用很多內存。

三、集群情況下是否支持一個實例多個db?

Redis為什么默認建立16個數據庫

要注意以上所說的都是基于單體Redis的情況。而在集群的情況下不支持使用select命令來切換db,因為Redis集群模式下只有一個db0。再擴展一些集群與單機Reids的區別,感興趣的朋友可以去查閱相關的資料深入理解,這里就不做討論了。

  • key批量操作支持有限:例如mget、mset必須在一個slot

  • Key事務和Lua支持有限:操作的key必須在一個節點

  • key是數據分區的最小粒度:不支持bigkey分區

  • 不支持多個數據庫:集群模式下只有一個db0

  • 復制只支持一層:不支持樹形復制結構

感謝各位的閱讀,以上就是“Redis為什么默認建立16個數據庫”的內容了,經過本文的學習后,相信大家對Redis為什么默認建立16個數據庫這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

游戏| 邻水| 乌拉特后旗| 克拉玛依市| 陈巴尔虎旗| 当涂县| 汉沽区| 上思县| 德清县| 中江县| 迁西县| 雅安市| 西青区| 汤原县| 马山县| 昆明市| 沙坪坝区| 鞍山市| 个旧市| 阿拉尔市| 天镇县| 朝阳县| 株洲县| 景德镇市| 遂平县| 湖南省| 长垣县| 陵川县| 雷山县| 平阴县| 扎赉特旗| 敖汉旗| 金平| 宁津县| 陇南市| 兰考县| 华坪县| 谢通门县| 会昌县| 宁强县| 塘沽区|