目錄redis資料型別
redis資料操作
值的操作命令
hash型別:值為乙個字典
list型別
set型別:無序集合
zset型別:有序集合
進入\退出redis資料庫
redis-cli 進入redis資料庫客戶端
redis-server 進入redis服務端
exit 退出資料庫
quit 退出資料庫
獲取幫助文件redis-cli --help
redis-server --help
選擇資料庫
redis資料庫一共有16個,用0-15表示。
預設使用0號資料庫。
切換資料庫數**如下
select 10 # 進入10號資料庫
鍵值對 是redis唯一的資料結構
字串 是redis唯一的資料型別
鍵只能是乙個字串,具有唯一性。相當於變數名,但不受識別符號規範約束,可以是任何字元組合。
值也是字串,但是有五種資料結構,便依此將鍵值對分為五大型別。值的最大長度為512m。
redis中所有資料都是二進位制資料,redis直接操作記憶體,每隔一段時間會自動儲存。
string redis最基本的資料型別,其他資料型別都是字串組成的
hash redis中的字典,儲存多個域值對。稱呼變化:字典 > 鍵,鍵 > 域,值 > 值
list redis中的列表,儲存多個字串
set 無序集合,儲存多個字串,元素不按新增順序排列。
zset 有序集合,儲存多個字串,元素位置需使用者指定。
五大型別都有自己的建立和操作命令,致使redis的命令特別多、特別複雜。
keys 檢視鍵名
keys * # 檢視資料庫中所有鍵
keys *a* # 檢視包含a的鍵
鍵名的查詢符合正規表示式
flushall 清空資料庫flushall [async] # 清空當前資料庫 返回ok
rename 修改鍵名rename key newkey # 修改鍵名,返回ok
exists 判斷鍵名是否存在exists key [key ...] # 只要有乙個鍵名存在,就返回 1,不存在返回 0
type 檢視鍵值型別type key # 檢視鍵值型別
del 刪除鍵值對del key # 刪除鍵值對,成功返回1,失敗返回0
expire 定時刪除鍵值對expire key seconds # 設定鍵值對有效時間,時間一到刪除鍵值對, 返回1
persist 保留鍵,取消定時刪除persist key # 取消定時刪除。取消成功返回 1,未定時或不存在的鍵無法取消返回0
ttl 檢視鍵值對有效時間ttl key # 檢視鍵值對有效時間,還有多久將被刪除。鍵不存在返回-2,鍵未定時返回-1
值有五大資料結構,各有自己的操作命令。
string型別:值為乙個字串
set /mset 建立和修改
set key value # 建立或修改乙個鍵值對 ,返回ok
mset key value [key value ...] # 建立或修改多個鍵值對,返回ok
setex 建立和修改乙個定時鍵值對setex key seconds value # 建立和修改定時鍵值對,返回ok
# 定時鍵值對:在設定時間到後自動刪除的鍵值對
get / mget 檢視
get key # 通過鍵名,檢視值。
mget key [key ...] # 通過多個鍵名,檢視多個值
hash型別:值為乙個字典
鍵名即字典名,域即字典鍵。
hset / hmset 建立、修改字典
hset key field value # 建立或修改乙個(字典)hash型別鍵值對,返回新增的個數
hmset key field value [field value ...] # 建立或修改多個字典,成功返回ok
檢視域值 hgetall / hget / hmget / hkeys / hvalshgetall key # 通過鍵名,檢視所有域值(整個字典)
hget key field # 通過鍵名和域,檢視某個域的值(字典中某個鍵的值)
hmget key field [field ...] # 檢視多個域的值 (字典中多個鍵的值)
hkeys key # 通過鍵名,檢視鍵的所有域
hvals key # 通過鍵名,檢視鍵的所有值
hdel 刪除鍵域值hdel key field [field ...] 刪除乙個鍵的多個域值,返回刪除的個數
hincrby 增量字典
其域的值為數值型,通過新增相同的域,來增加該域的值。
hincrby key field increment increment代表增加的數值。
list型別
lpush / rpush 建立列表/新增列表元素
# 建立列表鍵或新增乙個及多個元素,返回列表元素個數
lpush key value [value ...] # 元素從右往左排列,從列表左邊插入元素
rpush key value [value ...] # 元素從右往左排列,從列表右邊插入元素
linsert 在指定位置插入(新增)乙個列表元素linsert key before|after pivot value # 在指定元素pivot前/後插入乙個元素
# 返回列表元素個數
lrange/linsert 檢視列表元素lrange key start stop # 通過索引檢視列表元素
lindex key index # 通過索引檢視乙個元素
# start 為開始索引,索引從0開始
# stop 為結束索引
# start\stop為負數時,代表倒數第幾個元素
# 超出範圍不報錯,正常顯示。stop - start < 0 返回空
lset 修改列表元素lset key index value # 通過索引,修改元素。索引從0開始,索引為負,代表倒數。
# 修改成功返回 ok
lrem 刪除列表元素lrem key count value # 通過元素值刪除多個相同元素,返回刪除的個數
# count 設定刪除個數,
# 0表示全部刪除,
# 大於0從左側開始刪除,
# 小於0從右側開始刪除
lpop / rpop 彈出乙個元素lpop key # 彈出左側第乙個元素並返回
rpop key # 彈出右邊第乙個元素並返回
set型別:無序集合
無重複數列
sadd 建立集合\新增集合元素
sadd key member [member ...] # 建立乙個集合,新增多個元素
# 返回新增元素的個數
smembers 檢視集合所有元素smembers key # 檢視集合所有元素
srem / spop 刪除集合元素srem key member [member ...] # 刪除乙個或多個指定集合元素,返回刪除元素的個數
spop key # 刪除乙個元素,返回被刪除的元素
zset型別:有序集合
無重複數列
zadd 建立有序集合\新增有序集合元素
zadd key score member [score member ...] # 建立乙個有序集合,新增多個集合元素
# score 是元素的序號,有序集合元素按序號從小到大排列。
# score 按雙精度浮點型別儲存,以字串型別顯示。小數部分最長15位。
# 新增成功返回0
zrange 索引檢視zrange key start stop # 通過索引檢視集合元素
# start 為開始索引,索引從0開始
# stop 為結束索引
# start\stop為負數時,代表倒數第幾個元素
# 超出範圍不報錯,正常顯示。stop - start < 0 返回空
zrangebyscore 序號檢視zrangebyscore key min max [limit offset count]
# 檢視指定序號範圍內的所有元素
# limit 限制檢視個數
# offset 設定從查詢結果的第幾個元素開始檢視,從0開始,為負返回空
# count 設定檢視個數
zscore 檢視元素序號zscore key member # 檢視元素的序號 score
zrem 刪除元素zrem key member [member ...] # 刪除乙個或多個指定元素
# 返回刪除元素的個數
zremrangebyscore/ zremrangebyrank 按序號刪除元素zremrangebyscore key min max # 刪除指定序號範圍內的元素,返回刪除的個數
zremrangebyrank key start stop # 按索引刪除元素,返回刪除的個數
redis基本命令
一,基本操作 1.select index index 0 idnex 17選擇資料庫 3.shutdown 停止資料庫 4.config get loglevel 得到當前日誌級別 5.flushall 清空所有資料庫的資料 6.keys 遍歷當前資料庫中所有的鍵 7.type key 獲取鍵的型...
redis基本命令
redis是乙個記憶體資料庫,通常可以作為快取使用,常用的命令有 redis server 啟動資料庫,預設埠為6379 redis cli 連線資料庫,預設ip是127.0.0.1,埠是6379 redis cli h 127.0.0.1 p 6380 a 密碼 連線資料庫,指定主機和埠號 sel...
redis 基本命令
1 del key 該命令用於在 key 存在時刪除 key。dump key 序列化給定 key 並返回被序列化的值。exists key 檢查給定 key 是否存在。expire key seconds 為給定 key 設定過期時間。expireat key timestamp expireat...