Redis常用方法
NoSQL的含義:Not Only SQL(不僅僅是sql),泛指非關系型數據庫.
NoSQL的特點:支持高并發的讀寫,海量數據的存儲,對數據的高可擴展性
NoSQL的類別:鍵值對類型,列式類型,文檔類型,圖形數據庫
NoSQL鍵值對類型的產品:Redis
Redis是由C語言實現的直接操作內存的開源高性能數據庫軟件.
Redis的應用場景(需要頻繁對數據庫進行訪問):緩存(數據查詢,新聞內容,商品內容), 秒殺,搶火車票,排行榜的實時更新,聊天室在線好友列表的實時更新,網站訪問量實時統計.
- 秒殺:使用set集合存儲用戶的id,時id不能重復,一個人不能同時秒殺多個物品
- 排行榜:使用zset集合,使排行有序
Redis的安裝和開啟服務端客戶端命令
Redis的安裝包:源碼形式提供,一大堆.c文件
步驟一: 將.c文件編譯成.o文件 =====>需要安裝 : gcc
步驟二: 將編譯后的文件安裝在Liunx上
將Redis編譯后的文件存放在 /usr/local/bin 下,即可以在任何目錄下訪問redis-server和redis-cli進行開啟和關閉服務端客戶端.
通過后臺的方式redis-server /usr/local/redis/redis.conf (搭配配置文件開啟)打開redis服務端后,可以通過客戶端命令redis-cli shutdown進行關閉服務端.
總結: 開啟服務端的命令:redis-server /usr/local/redis/redis.conf 開啟客戶端的命令: redis-cli,連接成功后輸入ping驗證 關閉客戶端的命令: exit 或者 ctrl+C 關閉服務端的命令:redis-cli shutdownRedis的基本指令:
①keys * :查看當前庫中的所有鍵
②exists < key > : 查看當前庫中是否存在鍵key
③type < key > : 查看當前庫中鍵key的類型
④del < key > : 刪除當前庫中鍵key
⑤expire < key > < second> : 為鍵key設置過期時間
⑥ttl < key > : 查看當前key還有多少秒過期
⑦dbsize : 查看當前庫中key 的數量
⑧flushdb : 清空當前庫
Redis對value值為string類型的操作指令:
①get
②set
Redis對value值為list類型的操作命令:
①lpush/rpush < key > < value1 > < value2 > : 從左邊/右邊插入一個或多個值
②lpop/rpop < key > : 從左邊或右邊吐出一個值
③rpoplpush < key1 > < key2 >: 從key1右邊吐出一個值插入到列表key2左邊
④lrange < key > < start > < stop > : 從start到stop展示key的值
⑤lindex < key > < index > : 按照索引下標獲得key的元素(從左到右,第一個索引為0)
⑥llen < key > : 獲得列表長度
Redis對value值為Set類型的操作命令:
①sadd < key > < value > < value > : 給集合添加值
②smambers < key > : 返回集合中所有的值
③sismember < key > < value > : 判斷value是否在Set中
④scard < key > : 返回集合的元素個數.
⑤srem < key > < value1 > < value2 > : 從集合中刪除某些元素.
⑥spop < key > : 從集合中隨機吐出一個值
⑦srandmember < key > < n > : 從集合中隨機取出n個值(不會刪除值)
⑧sinter < key1 > < key2 > : 返回兩個集合的交集部分
⑨sunion< key1 < key2> : 返回兩個集合的并集部分
⑩sdiff< key1> < key2 > : 返回兩個集合的差集部分(key1中有key2中沒有的)
Redis對value值為Hash類型的操作命令:
①hset < key > < filed > < value > : 向集合中存一個值,該值的鍵為field,值為value
②hget < key > < filed > : 取出鍵為filed 的值
③hmset < key > < filed1 > < value1 > < filed2 > < value2 > : 向集合中存多個值
④hexists key < filed > : 查看是否存在鍵為filed 的值
⑤hkeys < key > : 獲得hash集合中所有的鍵
⑥hvals < key > : 獲得hash集合中所有的值
⑦hgetall > key > :獲得hash集合中所以的鍵和值
⑧hsetnx < key > < filed > < value > : 無則添加,有則不添加
Redis對value值為Zset類型的操作命令:
①zadd < key > < score1 > < value1 >< score2 > < value2 >
添加相同的分數,不同的元素,可以添加
添加相同的元素,不同的分數,不能添加,但會將之前的分數替換掉
②zrange < key > < start > < stop > : 從start到stop展示key的值
③zrangebyscore key min max : 通過分數范圍來查詢元素
④zrem < key > < value > : 刪除該集合下指定值的元素
總結
- 上一篇: Mybatis框架的操作步骤和细节处理
- 下一篇: Mybatis执行过程源码分析