日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 人文社科 > 生活经验 >内容正文

生活经验

redis服务器索引文件删除,Redis基本命令整理

發布時間:2023/11/27 生活经验 27 豆豆
生活随笔 收集整理的這篇文章主要介紹了 redis服务器索引文件删除,Redis基本命令整理 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

strings類型

設值

設單個值

set key value

如果不存在,設一個值

setnx key value

//nx: not exists

設置過期時間(expired time)

setex key [number] value

//number為有效期,有效期過后,值為nil

把number索引后面替換為value

setrange key [number] value

設置多個值

mset key1 value1 key2 value2 …

批量設值

msetnx key1 value1 key2 value2 …

//設值全部成功或全部回滾

取值

get key

設置key值,并返回key的舊值

getset key value

獲取指定區間的子字符串

getrange key number1 number2

批量獲取key值,不存在的返回nil

mget key1 key2 key3 …

值操作

自增1

incr key

增加指定值

incrby key number

自減1

decr key

減去指定值

decry key number

拼接字符

append key value

取key的value長度

strlen key

hashes類型

創建hash數據結構,指定key值為value

hset hash_name key value

如果不存在,設置新值

hsetnx hash key value

批量設定hash的多個field

hmset hash key1 value1 key2 value2 …

獲取hash指定的key值

hget hash key

獲取指定的全部key值

hmget hash key1 key2 …

給指定的hash field加上定值number

hincrby hash key number

指定的field是否存在

hexists hash key

獲取指定的hash的field數量

hlen hash

移除指定的field

hdel hash key

返回所有key值

hkeys hash

返回所有value值

hvals hash

返回所有key value

hgetall hash

lists類型

鏈表結構,主要功能是push pop,獲取范圍內的值

分非阻塞版本(默認)、阻塞版本

list左側(或稱頭部)添加值value

lpush list value

list右側(或稱尾部)添加值value

rpush list value

在key對應list的位置之前/之后插入元素value

linsert list before/after key value

設置list中指定下標元素值

lset list index value

從list中刪除count個value值

lrem list count value

保留指定區間的值

ltrim list index1 index2

彈出頂部元素并返回該值

lpop list

同上,底部

rpop list

彈出list1底部元素,并添加到list2頭部,返回該值

rpoplpush list1 list2

返回value在list中的索引

lindex list value

返回list長度

llen list

sets類型

集合,和數學的集合概念相似,有交并差等操作(union、intersection、difference)

無序string類型集合,由hashtable實現,復雜度O(1)

添加set值

sadd set value

移除set中的值value

srem set value

隨機移除set的value并返回

spop set

差集

sdiff set1 set2

返回set1于set2的差集(即set1中不存在于set2中的value的集合)

sdiff set1 set2的結果 不等于 sdiff set2 set1的結果

將set1 set2的差集存儲到set3中

sdiffstore set3 set1 set2

返回set1 set2的交集

sinter set1 set2

將交集存儲到set3

sinterstore set3 set1 set2

并集

sunion set1 set2

將并集存儲到set3

sunionstore set3 set1 set2

將value從set1移動到set2

smove set1 set2 value

返回set中元素數量

scard set

判斷value是否是set中元素

sismember set value

隨機獲取set值

srandmember set

Sorted sets類型 : zset

set基礎上添加了順序屬性,zset會按新的值調整順序,可以理解為有兩列的數據庫表,一列為value,一列為排序數值。

zset每個元素會關聯一個double類型的score。

sorted set是skip list和hash table的混合體

在索引位置添加值value

zadd zest index value

移除value

zrem zest value

自增

zincrby zset number value

如果value存在于zset中,其score值增加number

如果value不存在,在zset中增加value,其score值為number

獲取序列編號

zrank zset value

返回value在zset中的序列(按score升序排列),即索引(下標)

獲取反向序列編號

zrevrank zset value

返回value在zset中的序列(按score降序排列),即索引(下標)

獲取反向序列編號

zrevrange zset index1 index2 [withscores]

將zset按照score值降序排列,區間為index1至index2,with scores控制是否顯示score值

(測試不通過)

返回給定socre區間元素數量

zcount zset score1 score2

返回給定的value的score值

zscore zset value

移除給定的索引區間的元素

zremrangebyrank zset index1 index2

移除給定的score區間的元素

zremrangebyscore zset score1 score2

Redis常用命令

鍵值相關命令

返回滿足給定的pattern的所有key,如keys , keys mylist

keys [pattern]

確認一個key是否存在

exists key

移除一個key

del key

設置過期時間

expire key number

給key設置一個過期時間number,單位秒,ttl key顯示剩余時間,過期后值為-2

設置永不過期

persist key

將expire過程中的key持久化,變成不會不過期狀態,持久化之后,執行ttl key值為-1

重命名key

rename key new_name

返回key的數據類型

type key

將key移動到其他庫

move key schema

服務器命令

測試連接是否存活,如果是,返回PONG

ping

打印內容

echo string

選擇數據庫,編號0-15

select number

退出連接

quit

返回當前數據庫key的數目

dbsize

獲取服務器信息和統計

info

獲取服務器配置信息

config get attribute

查看全部配置

config get *

清空當前數據庫

flushdb

清空所有庫

flushall

高級實用特性

1.安全性,設置密碼

2.主從復制

master可以有多個slave,slave還可以連接到其他slave。

主從復制不會阻塞master,在數據同步時,master可以繼續處理client請求。

3.事務控制

開啟事務

multi

執行事務,提交

exec

事務回滾

discard

注意:redis 部分事務失敗,不會回滾全部事務

樂觀鎖

watch key

4.持久化機制

快照方式 snapshotting

(1)自動保存快照

配置信息:

save 900 1 #如果900秒內超過1個key被修改,則發起快照保存

save 300 10 #如果300秒內超過1個key被修改,則發起快照保存

save 60 10000 …

過程:

1. redis調用fork,為主進程(父進程)創建一個子進程

2. 父進程繼續處理client請求,子進程將內存內容寫入臨時文件。子進程地址空間內的數據是fork時的整個數據庫的快照。子進程不會影響父進程處理client請求。

3.當子進程將快照寫入臨時文件完畢后,用臨時文件替換原來的快照文件,然后子進程退出。

(2)save / bgsave

手動保存快照,在主線程中完成快照保存,會阻塞所有的client請求。

每次都是將內存數據完整的寫入到磁盤,如果數據量大,會引起大量的IO操作,影響性能。

Append-only file方式

記錄每次write的操作內容

比快照方式更好

5.發布及訂閱消息pub/sub

訂閱tv1

client1: subscribe tv1

訂閱tv2

client2: subscribe tv1 tv2

發布tv1消息,client1 client2收到消息

client3: publish tv1 program1

發布tv2消息,client2收到消息

client3:publish tv2 program2

批量訂閱tv開頭的頻道內容

psubscribe tv*

6.Pipeline批量發送請求

可以將多個命令放到一個tcp報文一起發送、返回。

7.虛擬內存的使用

總結

以上是生活随笔為你收集整理的redis服务器索引文件删除,Redis基本命令整理的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。