Redis數據庫基礎

1.關系型數據庫和NoSQL數據庫

數據庫主要分為兩大類:關系型數據庫與NoSQL數據庫

關系型數據庫,是建立在關系模型基礎是的數據庫,其借助集合代數等數學概念和方法來處理數據庫中的數據主流的MySQL,Oracle,MS SQL Server 和DB2都屬于這類傳統數據庫

NoSQL數據庫,意思就是適用關系型數據庫的時候就使用關系型數據庫,不適用的時候也沒有必要非使用關系型數據庫不可,可以考慮使用更加合適的數據存儲。主要分為臨時性鍵值存儲(memcached,Redis),永久性鍵值存儲(ROMA,Redis),面向文檔的數據(MongDB,CouchDB),面向列的數據庫(Cassandra,HBase),每種NoSQL都有其特有的使用場景及優點

2.redis介紹

Redis是一個開源的高性能鍵值對數據庫,它通過提供多種鍵值數據類型來適應不同場景下的存儲要求

Redis支持的鍵值數據類型

a.string(字符串):基本的數據存儲單元,可以存儲字符串,整數或者浮點數

b.hash(哈希):一個簡單的列表,可以存儲一系列的字符串元素

c.set(集合):一個無序集合,可以存儲不重復的字符串元素

d.zset(sorted set:有序集合):類似于集合,但是每個元素都有一個分數(score)與之關聯

e.位圖(Bitmaps):基于字符串類型,可以對每個位進行操作

f.超日志(HyperLogLogs):用于基數統計,可以估算集合中的唯一元素數量

g.地理空間(Geospatial):用于存儲地理位置信息

h.發布/訂閱(Pub/Sub):一種消息通信模式,允許客戶端訂閱消息通道,并接受發布到該通道的消息

i.流(Streams):用于消息隊列和日志存儲,支持消息的持久化和時間排序

redis特點

性能價高,豐富的數據類型,原子性,數據持久化,支持publish/subscribe通知,key過期

3.Redis安裝

Redis官網:

https://redis.io

3.1安裝redis

3.1.1參看rhel9倉庫自帶的rpm包

[root@redis-master ~]# cat /etc/redhat-release 
Red Hat Enterprise Linux release 9.1 (Plow)

3.1.2yum安裝redis

[root@redis-master ~]# yum install redis  -y

3.1.3啟動redis

[root@redis-master ~]# systemctl start redis

3.1.4連接redis

[root@redis-master ~]# redis-cli  -p 6379

3.1.5測試是否連接成功

[root@redis-master ~]# redis-cli -p 6379
127.0.0.1:6379> ping
PONG

4.key操作

Redis是一個開源的高性能鍵值對數據庫,Redis的基礎數據結構主要包括5種數據類型,分別是:String,List,Set,Zset,Hash

字符串類型(string)

散列類型(hash,哈希)

列表類型(list)

集合類型(set)

有序集合類型(sorted set)

redis默認有16個數據庫,為0-15,可以選擇數據庫:

127.0.0.1:6379> select 0
OK
#########對于庫的其他操作######
FLUSHDB  #清空當前數據庫里面所有的key 
FLUSHALL #清空所有數據庫里面所有的key

redis上的不同類型的key的創建上傳命令不同,下面僅僅以string類型演示:

序號命令語法描述
1DEL key該命令用于在key存在時刪除key
2SET key value添加或者修改key的值
3GET key獲取指定key的值
4TYPE key返回key所存儲的值的類型
5EXPIRE key seconds為給定key設置過期時間,以秒計
6PERSIST key移除key的過期時間,key將持久保存
7TTL key以秒為單位,返回給定key的剩余生存時間
8EXISTS key檢查給定是否存在,存在返回1,否則返回0
9MOVE key db將當前數據庫的key移動到給定的數據庫db當中
10KEYS pattern查找所有符合給定模式(pattern)的key

示例:

#切換Redis數據庫
127.0.0.1:6379> select 0
OK
#檢查指定key(此處為name)是否存在于當前數據庫中
127.0.0.1:6379> exists name
(integer) 0
#向當前數據庫中設置一個key-value鍵值對
127.0.0.1:6379> set name zhao
OK
#獲取指定 key(此處為name)對應的value值。
127.0.0.1:6379> get name
"zhao"
#為指定key(此處為name)設置過期時間
127.0.0.1:6379> expire name 60
(integer) 1
#查看指定key(此處為name)剩余的存活時間
127.0.0.1:6379> ttl name
(integer) 57

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/pingmian/95731.shtml
繁體地址,請注明出處:http://hk.pswp.cn/pingmian/95731.shtml
英文地址,請注明出處:http://en.pswp.cn/pingmian/95731.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

【Java實戰?】Java日志框架實戰:Logback與Log4j2的深度探索

目錄一、日志框架概述1.1 日志的作用1.2 常見日志框架1.3 日志級別二、Logback 框架實戰2.1 Logback 依賴導入2.2 Logback 配置文件2.3 日志輸出格式自定義2.4 Logback 進階配置三、Log4j2 框架實戰3.1 Log4j2 依賴導入3.2 Log4j2 配置文件3.3 Log4j2 與 SLF4J 整合3.4 日志框架…

基于WFOA與BP神經網絡回歸模型的特征選擇方法研究(Python實現)

說明:這是一個機器學習實戰項目(附帶數據代碼文檔),如需數據代碼文檔可以直接到文章最后關注獲取 或者私信獲取。 1.項目背景 在大數據分析與智能建模領域,高維數據廣泛存在于金融預測、環境監測和工業過程控制等場景…

??AI生成PPT工具推薦,從此以后再也不用擔心不會做PPT了??

對于很多人老說,做ppt實在太麻煩了,快速制作出專業且美觀的PPT成為眾多人的需求,AI生成PPT工具應運而生,極大地提升了PPT制作的效率。以下為大家推薦多個實用的AI生成PPT工具。 1、AiPPT星級評分:★★★★★ AiPPT是一…

CentOS系統停服,系統遷移Ubuntu LTS

CentOS官方已全面停止維護CentOS Linux項目,公告指出 CentOS 7在2024年6月30日停止技術服務支持,(在此之前 2022年1月1日起CentOS官方已經不再對CentOS 8提供服務支持),詳情見CentOS官方公告。 一、系統遷移評估 用戶需要開始計…

Linux知識回顧總結----文件系統

上章講的是 os 如果管理被打開的文件,那么沒有被打開的文件(也就是在磁盤單中的文件)使用文件系統進行管理。了解完這一章,我們就可以理解我們如果想要打開一個文件的是如何找到整個文件,然后如何把它加載到內存中的&a…

iOS藍牙使用及深入剖析高頻高負載傳輸丟包解決方案(附源碼)

最近開發了一套iOS原生的藍牙SDK,總結了一些有價值的踩過的坑,分享出來給有需要的同學做個參考。 一、藍牙的使用 iOS有一套封裝好的完善的藍牙API ,可以很便捷的實現與藍牙的連接和通信,藍牙通信的大體流程如下,先對基…

Python 正則表達式實戰:用 Match 對象輕松解析拼接數據流

摘要 這篇文章圍繞 Python 的正則表達式 Match 對象(特別是 endpos、lastindex、lastgroup 以及 group / groups 等方法/屬性)做一個從淺入深、貼近日常開發場景的講解。我們會給出一個真實又常見的使用場景:解析由設備/服務發來的“拼接式”…

基于Pygame的六邊形戰術推演系統深度剖析——從數據結構到3D渲染的完整實現(附完整代碼)

1. 項目概述與技術選型 戰術推演系統是軍事訓練和游戲開發中的重要組成部分,它能夠模擬真實的戰術場景,為用戶提供策略思考的平臺。本文將深入分析一套基于Python Pygame框架開發的城市巷戰戰術推演系統,該系統采用六邊形網格布局,實現了恐怖分子與反恐精英的對抗模擬,具…

支持二次開發的代練App源碼:訂單管理、代練監控、安全護航功能齊全,一站式解決代練護航平臺源碼(PHP+ Uni-app)

一、技術架構:高性能與跨平臺的核心支撐前端框架Uni-app:基于Vue.js的跨平臺框架,支持編譯至微信小程序、H5、iOS/Android App及PC端,代碼復用率超80%,顯著降低開發成本。實時通信:集成WebSocket實現訂單狀…

AI熱點周報(8.31~9.6): Qwen3?Max?Preview上線、GLM-4.5提供一鍵遷移、Gemini for Home,AI風向何在?

名人說:博觀而約取,厚積而薄發。——蘇軾《稼說送張琥》 創作者:Code_流蘇(CSDN)(一個喜歡古詩詞和編程的Coder😊) 目錄一、3分鐘速覽版:一張表看懂本周AI大事二、國內:模型與生態的…

異步操作終止2

您提的這個問題非常棒,說明您思考得非常深入!您完全正確,我之前的示例中使用的 return; 會中斷 handleDraw 函數中所有后續的邏輯,這在很多場景下并不是我們想要的。 我們的目標是只中斷畫圖這一個特定的邏輯,而讓函數…

《AI大模型應知應會100篇》第67篇 Web應用與大模型集成開發實踐——1小時打造國產大模型智能客服系統

第67篇:Web應用與大模型集成開發實踐——1小時打造國產大模型智能客服系統 一句話核心價值:無需翻墻!用Flask國產大模型API(通義/文心一言/訊飛)快速構建合規Web問答系統,電商客服人力成本直降70%&#xff…

python系列之綜合項目:智能個人任務管理系統

不為失敗找理由,只為成功找方法。所有的不甘,因為還心存夢想,所以在你放棄之前,好好拼一把,只怕心老,不怕路長。 python系列之文件操作:讓程序擁有"記憶"的超能力!一、項目…

鴻蒙UI開發實戰:解決布局錯亂與響應異常

文章目錄鴻蒙UI開發實戰指南:解決ArkUI聲明式布局錯亂、組件不顯示與事件響應異常引言ArkUI聲明式開發的技術優勢開發痛點與本文價值布局錯亂問題常見原因固定像素單位使用不當布局嵌套層級過深Flex布局屬性配置錯誤響應式布局缺失解決方案彈性單位適配:…

B.50.10.09-RPC核心原理與電商應用

RPC核心原理與電商應用實戰 第1章:RPC核心概念與價值 1.1. 什么是 RPC? RPC (Remote Procedure Call),即遠程過程調用,是一種允許一臺計算機(客戶端)上的程序,調用另一臺計算機(服務…

【完整源碼+數據集+部署教程】室內場景分割系統源碼和數據集:改進yolo11-DWR

背景意義 研究背景與意義 隨著智能家居和自動化技術的快速發展,室內場景理解在計算機視覺領域中變得愈發重要。室內場景分割不僅是計算機視覺的基礎任務之一,也是實現智能家居、機器人導航、增強現實等應用的關鍵技術。傳統的圖像分割方法在處理復雜的室…

python入門常用知識

一、創建和快捷鍵 創建項目: New project創建模版:項目&代碼的一種默認標記信息創建包(放代碼的地方-方便整理分類更清晰) --- python package創建文本文件(配置文件):File創建文件夾(測試數據、測試報告、測試截圖):Director…

原創未發表!POD-PINN本征正交分解結合物理信息神經網絡多變量回歸預測模型,Matlab實現

該代碼實現了一個基于POD降維與物理信息神經網絡(PINN)結合的回歸預測模型,用于從高維數據中提取關鍵特征并進行物理約束下的數據驅動預測。一、主要功能 數據降維:使用POD(Proper Orthogonal Decomposition&#xff0…

對接gemini-2.5-flash-image-preview教程

對接gemini-2.5-flash-image-preview教程 一、前置準備 1. 明確模型要求 本次對接的gemini-2.5-flash-image-preview模型,繼承Gemini系列多模態特性,支持文本生成圖片、文本結合圖片編輯等功能。需注意該模型不支持僅輸出圖片,必須配置["…

如何制造一個AI Agent:從“人工智障”到“人工智能”的奇幻漂流

開篇:什么是AI Agent?它和我的“人工智障”音箱有啥區別?🎤朋友們,先想象一下:你的智能音箱 🗣? -> 🤖 -> ?:“Hey Siri,幫我訂一份披薩,…