redis-cli常用命令使用詳解
1 redis-cli連接redis服務(wù)
1.1 無密碼本地登錄
redis-cli redis 127.0.0.1:6379> redis 127.0.0.1:6379> PING PONG
1.2 指定ip、端口、密碼
redis-cli -h [ip] -p [port] -a [pwd]
1.3 指定ip、端口、密碼并清理redis緩存
redis-cli -h [ip] -p [port] -a [pwd] flushall
1.4 指定ip、端口、密碼、數(shù)據(jù)庫
redis-cli -h [ip] -p [port] -a [pwd] -n [db_number]
1.5 shell連接redis
#!/bin/bash Num=`seq 1 1000` for i in ${Num};do redis-cli -h 127.0.0.1 set key-${i} value-${i} done echo "1000個(gè)key-value已經(jīng)寫入redis" //腳本執(zhí)行完后,可以查看 redis-cli >>get key-100
補(bǔ)充:redis運(yùn)維常用命令
查看redis版本信息
# 等同于/usr/local/redis/src/redis-server -v [root@iZ8vbdcrmm49bxv7sirrv3Z ~]# /usr/local/redis/src/redis-server --version Redis server v=5.0.3 sha=00000000:0 malloc=jemalloc-5.1.0 bits=64 build=c72a455fc0d699b
或者客戶端輸入:info server
127.0.0.1:6379> info server # Server redis_version:5.0.3 redis_git_sha1:00000000 redis_git_dirty:0 redis_build_id:c72a4523c0d699b redis_mode:standalone os:Linux 3.10.0-957.21.3.el7.x86_64 x86_64 arch_bits:64 multiplexing_api:epoll atomicvar_api:atomic-builtin gcc_version:4.8.5 process_id:2006 run_id:0e16bcb89d8eb05b95d2b127d4b98178e76c86fd tcp_port:7501 uptime_in_seconds:6317102 uptime_in_days:73 hz:10 configured_hz:10 lru_clock:16174420 executable:/usr/local/redis/src/redis-server config_file:/usr/local/redis/src/redis.conf ......
查看服務(wù)所有[部分]信息
使用info [section]
查看
- 查看所有信息
127.0.0.1:6379> info
- 查看具體信息
服務(wù)器信息 127.0.0.1:6379> info server 持久化信息 127.0.0.1:6379> info persistence
2 redis庫相關(guān)命令
切換到1號庫;redis有16個(gè)初始化庫,編號0到15,默認(rèn)使用0號庫 select 1 如果需要驗(yàn)證 auth [password] 查看當(dāng)前庫的key的數(shù)量 dbsize 刪除當(dāng)前庫的全部數(shù)據(jù) flushdb 刪除所有庫的全部數(shù)據(jù) flushall
3 redis key相關(guān)命令
對key有操作的命令,統(tǒng)一返回值都是1或者0,成功為1,失敗為0
查看當(dāng)前庫的全部key keys * 判斷某個(gè)key是否存在,存在返回1,不存在返回0 exists [key] 查看某個(gè)key的類型,如果key不存在,則返回none type [key] 刪除指定的key數(shù)據(jù),成功返回1,失敗返回0 del [key] 根據(jù)value選擇非阻塞刪除,僅將keys從keyspace元數(shù)據(jù)中刪除,真正的刪除后在后續(xù)異步操作 unlink [key] 查看某個(gè)key的過期時(shí)間,單位(秒),-1表示永不過期,-2表示已經(jīng)過期 ttl [key] 給指定的key設(shè)置過期時(shí)間,單位(秒) expire [key] 10
4 redis 字符串相關(guān)命令
set <key> <value>
:添加一條數(shù)據(jù) 例如set k1 v1,添加key為k1,值為v1的數(shù)據(jù)get <key>
:得到某個(gè)key的數(shù)據(jù),例如get k1,得到key為k1的值append <key> <value>
:將給定的value,追加到某key的原值的末尾,返回追加后的字符長度strlen <key>
:查詢某key的值的長度setnx <key> <value>
:當(dāng)key不存在的時(shí)候,才能添加成功,當(dāng)key存在的時(shí)候,不能添加incr <key>
:將某個(gè)key的值,數(shù)字增加1,僅僅對數(shù)字起作用,如果為空,新增值為1decr <key>
:將某個(gè)key的值,數(shù)字減少1,僅僅對數(shù)字起作用,如果為空,新增值為-1incrby/decrby <key> <步長>
:將key中儲(chǔ)存的數(shù)字值增減,自定義步長mset <key1> <value1> <key2> <value2>
:批量添加mget <key1> <key2>
:批量取值msetnx <key1> <value1> <key2> <value2>
:批量添加,當(dāng)且僅當(dāng)所有的key都不存在(因?yàn)樵有?,一個(gè)失敗則都失?。?/li>getrange <key> <起始位置> <結(jié)束位置>
:獲取某個(gè)key值的范圍,getrange k1 0 2,包含0位置的元素,和2位置的元素setex <key> <過期時(shí)間> <value>
:設(shè)置鍵值的同時(shí)設(shè)置過期時(shí)間(單位秒)getset <key> <value>
:設(shè)置新值,并返回舊值
5 redis 列表相關(guān)命令
lpush/rpush <key> <value1> <value2> <value3>
:從左邊,或者右邊添加數(shù)據(jù)lpop/rpop <key>
:從左邊,或者右邊取出一個(gè)值,列表里這個(gè)值就不存在了rpoplpush <key1> <key2>
:從key1的右邊取一個(gè)值,添加在key2的左邊lrange <key> <起始位置> <結(jié)束位置>
:按照索引下角標(biāo)得到元素(從左往右),當(dāng)結(jié)束為值為-1時(shí),代表得到多有,這個(gè)值還在列表中lindex <key> <index>
:按照索引,從左往右獲得對應(yīng)的值llen <key>
:獲得列表長度linsert <key> before/after <value> <newVlaue>
: 在某個(gè)key下的某個(gè)值的前面/后面添加一個(gè)新的值lrem <key> <n> <value>
:刪除某個(gè)key下,刪除n個(gè)值為value的數(shù)據(jù)lset <key> <index> <value>
:將某個(gè)key下的某個(gè)下角標(biāo)的值換成給定的值
6 redis 集合相關(guān)命令
sadd <key> <value1> <value2> <value3>
:添加數(shù)據(jù),如果值已經(jīng)存在,忽略該值smembers <key>
:得到集合中所有的值sismember <key> <value>
:判斷某個(gè)key中是否存在value,存在返回1,不存在返回0 scard <key>:返回集合的元素個(gè)數(shù)srem <key> <value1> <value2>
:刪除某個(gè)key中的某些元素spop <key>
:從key中隨機(jī)取出一個(gè)值,如果值沒了,那么key就不在了srandmember <key> <n>
:從某個(gè)key中,取出n個(gè)值,不會(huì)從集合中刪除smove <key1> <key2> <value>
:把集合中的一個(gè)值移動(dòng)到另一個(gè)集合sinter <key1> <key2>
:取兩個(gè)集合的交集sunion <key1> <key2>
:取兩個(gè)集合的并集sdiff <key1> <key2>
:取兩個(gè)集合的差集(在key1中的,不在key2中的)
7 redis 哈希相關(guān)命令
hset <key> <field> <value>
:給某個(gè)key哈希表中的field鍵復(fù)制為valuehget <key> <field>
:得到某個(gè)key哈希表中某個(gè)field的值hmset <key> <field1> <value1> <field2> <value2>
:批量加數(shù)據(jù)hexists <key> <field1>
:某個(gè)key哈希表中某個(gè)field是否存在hkeys <key>
:查看某個(gè)key哈希表中的全部fieldhvals <key>
:查看某個(gè)key哈希表中的全部valuehincrby <key> <field> <increment>
:為某個(gè)key的哈希表中的某個(gè)field鍵的值加上響應(yīng)的增量hsetnx <key> <field> <value>
:某個(gè)key哈希表中的field鍵復(fù)制為value,當(dāng)且僅當(dāng)key不存在的時(shí)候成功
8 redis 有序集合(Zset)相關(guān)命令
zadd <key> <score1> <value1><score2> <value2>
:添加以一個(gè)過著多個(gè)元素,score為評分,集合按照從低到高及進(jìn)行排序,評分可以重復(fù)zrange <key> <start> <end> \[withscores\]
:查一定范圍的元素,end為-1時(shí),查詢所有,withscores加上他,連著評分一起查出zrangebyscore <key> <min> <max> \[withscores\]
:查詢score評分在某個(gè)范圍內(nèi)的數(shù)據(jù),從小到大排序zrevrangebyscore <key> <max> <min> \[withscores\]
:查詢score評分在某個(gè)范圍內(nèi)的數(shù)據(jù),從大到小排序zincrby <key> <increment> <value>
:為元素的score加上指定的增量zrem <key> <value>
:刪除數(shù)據(jù)zcount <key> <min> <max>
:統(tǒng)計(jì)score評分在某個(gè)范圍內(nèi)的數(shù)據(jù)的數(shù)量zrank <key> <value>
:返回集合中的排序,排序從0開始
總結(jié)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
Windows系統(tǒng)一鍵啟動(dòng)Redis腳本
本文介紹了在Windows系統(tǒng)中創(chuàng)建一鍵啟動(dòng)Redis的腳本,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2024-12-12redisson中RRateLimiter分布式限流器的使用
Redisson Ratelimiter是Redisson框架中的一種限流算法,用于限制對資源的訪問頻率,本文主要介紹了redisson中RRateLimiter分布式限流器的使用,感興趣的可以了解一下2024-06-06Redis數(shù)據(jù)結(jié)構(gòu)原理淺析
這篇文章主要為大家介紹了Redis數(shù)據(jù)結(jié)構(gòu)原理淺析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-02-02Redis和Lua實(shí)現(xiàn)分布式限流器的方法詳解
這篇文章主要給大家介紹了關(guān)于Redis和Lua實(shí)現(xiàn)分布式限流器的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家學(xué)習(xí)或者使用Redis和Lua具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧2019-06-06redis中opsForList().range()的使用方法詳解
這篇文章主要給大家介紹了關(guān)于redis中opsForList().range()的使用方法,文中通過實(shí)例代碼以及圖文介紹的非常詳細(xì),對大家學(xué)習(xí)或者使用redis具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2023-03-03redis實(shí)現(xiàn)好友關(guān)注&消息推送的方法示例
Redis作為一款開源的內(nèi)存數(shù)據(jù)庫,具有可靠性、速度快、易用性等優(yōu)點(diǎn),已經(jīng)被廣泛應(yīng)用于開發(fā)實(shí)際項(xiàng)目中,本文主要介紹了redis實(shí)現(xiàn)好友關(guān)注&消息推送的方法示例,感興趣的可以了解一下2023-10-10