中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

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

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

redis默認建立16個數據庫的原因

發布時間:2021-02-25 13:05:03 來源:億速云 閱讀:293 作者:小新 欄目:關系型數據庫

這篇文章給大家分享的是有關redis默認建立16個數據庫的原因的內容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。

在實際的開發工作中,我們通常會使用redis數據庫做緩存、分布式鎖/消息隊列等。但是我們通常會有這樣一個疑問,為什么在搭建配置好redis服務器之后,默認建立了16個數據庫?

下面我們就來為大家介紹一下這個疑問。

redis默認建立16個數據庫的原因

一、16個數據庫的由來

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

redis默認建立16個數據庫的原因

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

redis默認建立16個數據庫的原因

客戶端與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視頻教程)

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

redis默認建立16個數據庫的原因

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

由于redis不支持自定義數據庫的名字,所有每個數據庫都以編號命名。開發者則需要自己記錄存儲的數據與數據庫的對應關系。另外redis也不支持為每個數據庫設置不同的訪問密碼,所有一個客戶端要么可以訪問全部數據庫,要么全部數據庫都沒有權限訪問。要正確理解redis的“數據庫”概念,不得不提到一個命令:
清空redis實例中所有數據庫中的數據
127.0.0.1:6379> FLUSH ALL
清空redis某個數據庫中數據 不會清空其他庫的數據
127.0.0.1:6379> FLUSH db0
該命令可以清空實例下的所有數據庫數據,這與我們所熟知的關系型數據庫所不同。關系型數據庫多個庫常用于存儲不同應用程序的數據,且沒有方式可以同時清空實例下的所有庫數據。所有對于redis來說這些db更像是一種命名空間,且不適宜存儲不同應用程序的數據。比如可以使用0號數據庫存儲開發環境中的數據,使用1號數據庫存儲測試環境中的數據,但不適宜使用0號數據庫存儲A應用的數據而使用1號數據庫存儲B應用的數據,不同的環境應該使用不同的redis實例存儲數據。redis非常輕量,一個空的redis實例占用的內在只有1M左右,所有不用擔心多個redis實例會額外占用很多內存。

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

以上所說的都是基于單體redis的情況。而在集群的情況下不支持使用select命令來切換db,因為redis集群模式下只有一個db0

感謝各位的閱讀!關于“redis默認建立16個數據庫的原因”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,讓大家可以學到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!

向AI問一下細節

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

AI

定日县| 教育| 麦盖提县| 抚顺市| 清涧县| 临桂县| 大邑县| 来凤县| 舒兰市| 厦门市| 石首市| 封丘县| 宁阳县| 桦川县| 沅江市| 应用必备| 新田县| 和政县| 化德县| 安仁县| 同心县| 太原市| 徐汇区| 杭州市| 安西县| 永年县| 新疆| 夏河县| 南溪县| 云浮市| 夏津县| 民权县| 密山市| 吴忠市| 合川市| 利津县| 鞍山市| 泸定县| 辽源市| 呈贡县| 滦平县|