久久精品人人爽,华人av在线,亚洲性视频网站,欧美专区一二三

打好Redis的基礎需要學習哪些常用命令

143次閱讀
沒有評論

共計 4565 個字符,預計需要花費 12 分鐘才能閱讀完成。

打好 Redis 的基礎需要學習哪些常用命令,針對這個問題,這篇文章詳細介紹了相對應的分析和解答,希望可以幫助更多想解決這個問題的小伙伴找到更簡單易行的方法。

一、背景介紹

Redis 是一個開源的,先進的 key-value 存儲。它通常被稱為數據結構服務器,因為鍵可以包含字符串、哈希、鏈表、集合與有序集合,而且支持各種不同方式的排序,所以命令比較豐富,很容易混淆。

二、Redis 常用命令

1、工具命令

1)、redis-server 

啟動 redis 服務進程的工具命令

#指定配置文件啟動服務  redis-server redis.conf # 指定端口啟動服務  redis-server --port 6379

2)、redis-cli

redis 客戶端工具

#使用 socket 連接 redis 服務器  redis-cli -s /tmp/redis.sock # 不使用 socket 連接 redis 服務器  redis-cli

3)、redis-benchmark

redis 的性能測試工具

#使用默認參數測試  redis-benchmark # 自定義參數測試  redis-benchmark -n 1000000 --csv

4)、redis-check-dump

redis 檢查修復本地數據文件工具

# redis-check-dump dump.rdb

5)、redis-check-aof

redis 檢查修復 AOF 日志文件工具

# redis-check-aof appendonly.aof

6)、redis-sentinel

redis 集群管理工具

2、通用命令

auth Redis 認證命令,執行其他命令前,必須先進行認證 (前提是在配置文件中設置了認證參數)

ping 測試客戶端和服務器之間的聯通,返回值為 PONG, 表示聯通

config get * 獲取所有配置參數

config set config_name config_value 設置配置參數值

info 返回服務器信息

exist 查看當前庫中是否存在某個 key

ttl 獲取鍵的有效時長

expire 設置鍵的過期時間

persist key_name 移除某個鍵的過期時間

del 刪除某個鍵

select n 切換到 n 的數據庫,redis 默認的數據庫是 0 -15,共 16 個數據庫

move key_name n 將當前庫的鍵移動到其他數據庫

type key_name 返回鍵的數據類型

dbsize 獲取當前庫中所有鍵的數量

key * 獲取當前所有 key(當鍵數量多是,會 hang 死,慎用)

flushdb 刪除當前庫中的所有 key

flushall 刪除所有庫中的所有 key

save 創建當前庫的備份

bgsave 同 save, 但是是后臺備份,不阻塞主進程

eval 執行 lua 腳本

3、類型相關命令

1)、STRING

set 添加鍵值對,多次設置會覆蓋原來的值

get 獲取鍵的值

incr/decr 自增 / 自減 (前提是鍵值是整型)

incrby/decrby 指定步長增加減少 (q 前提是鍵值是整型)

strlen 獲取鍵的長度

append 向指定鍵追加值,返回字符串長度

setnx 判斷鍵是否存在,存在返回 0,否則返回 1,不會覆蓋原來值

getrange 根據指定下標獲取鍵的值

Demo:

127.0.0.1:6379  get number  20  127.0.0.1:6379  incr number (integer) 21 127.0.0.1:6379  decr number (integer) 20 127.0.0.1:6379  incrby number 5 (integer) 25 127.0.0.1:6379  append number hello (integer) 7 127.0.0.1:6379  strlen number (integer) 7 127.0.0.1:6379  setnx number hello (integer) 0 127.0.0.1:6379  getrange number 0 5  25hell

2)、LISTS

lpush 在列表前面添加一個或多個值

rpush 在列表后面添加一個或多個值

lrange 根據指定下標獲取列表中的元素

lpop 獲取并取出列表中的 *** 個元素

llen 獲取列表長度

Demo:

127.0.0.1:6379  lpush mylists apple orange pear (integer) 3 127.0.0.1:6379  llen mylists (integer) 3 127.0.0.1:6379  lrange mylists 0 -1 1)  pear  2)  orange  3)  apple  127.0.0.1:6379  rpush mylists banana (integer) 4 127.0.0.1:6379  lrange mylists 0 -1 1)  pear  2)  orange  3)  apple  4)  banana  127.0.0.1:6379  lpop mylists  pear  127.0.0.1:6379  lset mylists 0 four OK 127.0.0.1:6379  lrange mylists 0 -1 1)  four  2)  apple  3)  banana

3)、SETS

sadd 向集合中添加值

smembers 查看集合中的值

sismember 判斷某元素是否是集合中元素

sunion 返回兩個集合中的并集

sdiff 返回兩個集合中的差集(將寫在前面的集合作為參照)

sinter 返回兩個集合中的交集

scard 返回集合中元素個數

srem 刪除集合中指定值

Demo:

127.0.0.1:6379  sadd myset one two three (integer) 3 127.0.0.1:6379  sadd myset1 two redis mysql (integer) 3 127.0.0.1:6379  smembers myset 1)  three  2)  two  3)  one  127.0.0.1:6379  smembers myset1 1)  two  2)  mysql  3)  redis  127.0.0.1:6379  sdiff myset myset1 1)  three  2)  one  127.0.0.1:6379  sinter myset myset1 1)  two  127.0.0.1:6379  sunion myset myset1 1)  two  2)  three  3)  mysql  4)  one  5)  redis  127.0.0.1:6379  scard myset (integer) 3 127.0.0.1:6379  sismember myset redis (integer) 0 127.0.0.1:6379  srem myset two (integer) 1 127.0.0.1:6379  smembers myset 1)  three  2)  one

4)、SORTED SETS

zadd 將鍵插入有序集合,并指定順序

zrange 取出指定順序的元素

zscore 返回集合中的順序

zcount 返回集合中 score 在給定區間的數量

zrem 刪除集合中指定元素

zrank 返回名稱 key 中原素的排名

Demo:

127.0.0.1:6379  zadd sset 1 one 2 two 3 three (integer) 3 127.0.0.1:6379  zadd sset 3 three (integer) 0 127.0.0.1:6379  zrange sset 0 -1 withscores 1)  one  2)  1  3)  two  4)  2  5)  three  6)  3  127.0.0.1:6379  zrank sset one (integer) 0 127.0.0.1:6379  zrank sset two (integer) 1 127.0.0.1:6379  zcard sset (integer) 3 127.0.0.1:6379  zincrby sset 2 two  4  127.0.0.1:6379  zrange sset 0 -1 withscores 1)  one  2)  1  3)  three  4)  3  5)  two  6)  4  127.0.0.1:6379  zrem sset three (integer) 1 127.0.0.1:6379  zrange sset 0 -1 withscores 1)  one  2)  1  3)  two  4)  4

5)、HASHES

hset 返回 hash 域為指定值,如果 key 不存在,則先創建

hget 獲取 hash 域中指定的 key 值

hmset 同時批量設置多個域

hincrby 指定 hash 域加上給定的值

hexists 指定 field 是否存在,存在返回 1,否則返回 2

hlen 返回指定 hash 表中 field 中的數量

Demo:

127.0.0.1:6379  hset user name jack (integer) 1 127.0.0.1:6379  hget user name  jack  127.0.0.1:6379  hsetnx user name jack (integer) 0 127.0.0.1:6379  hmset user1 name bob sex man age 11 OK 127.0.0.1:6379  hmget user1 name sex age 1)  bob  2)  man  3)  11  127.0.0.1:6379  hexists user1 score (integer) 0 127.0.0.1:6379  hlen user1 (integer) 3 127.0.0.1:6379  hincrby user1 age 5 (integer) 16 127.0.0.1:6379  hkeys user1 1)  name  2)  sex  3)  age  127.0.0.1:6379  hdel user1 sex (integer) 1 127.0.0.1:6379  hgetall user1 1)  name  2)  bob  3)  age  4)  16

4、其他命令

1)、事務

multi 開啟一個事務

exec 執行事務

discard 撤銷事務

watch 監視數據庫鍵,若發生改變,返回空

Demo:

127.0.0.1:6379  watch  csdn  OK 127.0.0.1:6379  multi OK 127.0.0.1:6379  set csdn blob QUEUED 127.0.0.1:6379  get csdn QUEUED 127.0.0.1:6379  exec 1) OK 2)  blob

2)、復制

info replication 獲取復制信息

slaveof 建立復制關系

sync 同步

3)、訂閱發布

subscribe 訂閱一個或多個頻道

publish 向某一頻道發送信息

關于打好 Redis 的基礎需要學習哪些常用命令問題的解答就分享到這里了,希望以上內容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關注丸趣 TV 行業資訊頻道了解更多相關知識。

正文完
 
丸趣
版權聲明:本站原創文章,由 丸趣 2023-07-20發表,共計4565字。
轉載說明:除特殊說明外本站除技術相關以外文章皆由網絡搜集發布,轉載請注明出處。
評論(沒有評論)
主站蜘蛛池模板: 隆子县| 宜春市| 沙坪坝区| 宜丰县| 临城县| 门源| 沽源县| 衡水市| 北辰区| 太仆寺旗| 鸡泽县| 广汉市| 集贤县| 临沧市| 瑞金市| 清徐县| 秦安县| 定远县| 开鲁县| 凤凰县| 清涧县| 禹城市| 泸西县| 蒲城县| 莲花县| 安化县| 峨眉山市| 手机| 房产| 吴江市| 喀喇沁旗| 托克托县| 沙雅县| 丹巴县| 云浮市| 杭州市| 万山特区| 浦县| 宝应县| 阳朔县| 科技|