Redis提供了豐富的命令對數據庫和各類數據庫類型進行操做,這些命令能夠在Linux終端使用。git
a.鍵值相關命令redis
b.服務器相關命令數據庫
Keys:返回知足給定pattern的全部keyapi
1. redis 127.0.0.1:6379> keys * 2. 1) "myzset2" 3. 2) "myzset3" 4. 3) "mylist" 5. 4) "myset2" 6. 5) "myset3" 7. 6) "myset4" 8. 7) "list1" 9. redis 127.0.0.1:6379> keys my* 10. 1) "myzset2" 11. 2) "myzset3" 12. 3) "mylist" 13. 4) "myset2" 14. 5) "myset3" 15. 6) "myset4"
exists:確認一個key是否存在。bash
以下從結果來看,name鍵不存在,age鍵存在。服務器
1. redis 127.0.0.1:6379> exists name 2. (integer) 0 3. redis 127.0.0.1:6379> exists age 4. (integer) 1
del:刪除一個keydom
1. redis 127.0.0.1:6379> del age 2. (integer) 1 3. redis 127.0.0.1:6379> exists age 4. (integer) 0
expire:設置一個key的過時時間。測試
在下例中,咱們設置addr這個key的過時時間是10秒,而後咱們不斷的用ttl來獲取這個key的有效時長,直至爲-1說明此值已過時。ui
1. redis 127.0.0.1:6379> expire addr 10 2. (integer) 1 3. redis 127.0.0.1:6379> ttl addr 4. (integer) 8 5. redis 127.0.0.1:6379> ttl addr 6. (integer) 1 7. redis 127.0.0.1:6379> ttl addr 8. (integer) -1 //表明addr已通過期 9. redis 127.0.0.1:6379> get addr 10. (nil) 11. redis 127.0.0.1:6379> exists addr 12. (integer) 0
move:將當前數據庫中的key轉移到其它數據庫中。spa
數據庫是從0到15,select 0表示選擇0號數據庫。
1. redis 127.0.0.1:6379> select 0 2. OK 3. redis 127.0.0.1:6379> set age 30 4. OK 5. redis 127.0.0.1:6379> get age 6. "30" 7. redis 127.0.0.1:6379> move age 1 //將age從0數據庫移到1數據庫 8. (integer) 1 9. redis 127.0.0.1:6379> get age 10. (nil) 11. redis 127.0.0.1:6379[1]> select 1 12. OK 13. redis 127.0.0.1:6379[1]> get age 14. "30" 15. redis 127.0.0.1:6379[1]> select 0 16. OK 17. redis 127.0.0.1:6379> exists age 18. (integer) 0
persist:移除給定key的過時時間
1. redis 127.0.0.1:6379> expire age 300 2. (integer) 1 3. redis 127.0.0.1:6379> ttl age 4. (integer) 294 5. redis 127.0.0.1:6379> persist age 6. (integer) 1 7. redis 127.0.0.1:6379> ttl age 8. (integer) -1 //-1表示取消了過時時間
randomkey:隨機返回key空間的一個key。
1. redis 127.0.0.1:6379> randomkey 2. "mylist7" 3. redis 127.0.0.1:6379> randomkey 4. "mylist5"
rename:重命名key。
1. redis 127.0.0.1:6379> keys * 2. 1) "age" 3. redis 127.0.0.1:6379> rename age age_new 4. OK 5. redis 127.0.0.1:6379> keys * 6. 1) "age_new"
type:返回值的類型。
1. redis 127.0.0.1:6379> type addr 2. string 3. redis 127.0.0.1:6379> type myzset2 4. zset 5. redis 127.0.0.1:6379> type mylist 6. list
ping:測試鏈接是否存活。
1. redis 127.0.0.1:6379> ping 2. PONG 3. //執行下面命令以前,中止redis服務器 4. redis 127.0.0.1:6379> ping 5. Could not connect to Redis at 127.0.0.1:6379:Connection refused 6. //執行下面命令以前,啓動redis服務器 7. redis 127.0.0.1:6379> ping 8. PONG
第一個ping時,說明此鏈接正常;第二個ping以前,咱們將redis服務器中止,那麼ping是失敗的;第三個ping以前,咱們將redis服務器啓動,那麼ping是成功的。
echo:在命令行打印一些內容。
1. redis 127.0.0.1:6379> echo lamp 2. "lamp"
select:選擇數據庫。Redis數據庫編號從0-15,咱們能夠選擇任意一個數據庫來進行數據的存取。
1. redis 127.0.0.1:6379> select 1 2. OK 3. redis 127.0.0.1:6379[1]> select 16 4. (error) ERR invalid DB index 5. redis 127.0.0.1:6379[16]>
當先擇16時,報錯,說明沒有編號爲16的這個數據庫。
quit:退出鏈接。
1. redis 127.0.0.1:6379> quit 2. [root@localhost redis-2.2.12]#
dbsize:返回當前數據庫中key的數目。
1. redis 127.0.0.1:6379> dbsize 2. (integer) 18
結果說明此庫中有18個key。
info:獲取服務器的信息和統計。
1. redis 127.0.0.1:6379> info 2. redis_version:2.2.12 3. redis_git_sha1:00000000 4. redis_git_dirty:0 5. arch_bits:32 6. multiplexing_api:epoll 7. process_id:28480 8. uptime_in_seconds:2515 9. uptime_in_days:0 10. . 11. . 12. . 13. redis 127.0.0.1:6379>
config get:實時傳儲收到的請求。
1. redis 127.0.0.1:6379> config get dir 2. 1) "dir" 3. 2) "/root/4setup/redis-2.2.12" 4. redis 127.0.0.1:6379>
本例中咱們獲取了dir這個參數配置的值,若是想獲取所有參數據的配置值也很簡單,只須要執行"config get *"便可將所有的值都顯示出來。
flushdb:刪除當前選擇數據庫中的全部key。
1. redis 127.0.0.1:6379> dbsize 2. (integer) 18 3. redis 127.0.0.1:6379> flushdb 4. OK 5. redis 127.0.0.1:6379> dbsize 6. (integer) 0
本例中咱們將0號數據庫中的key都清除了。
flushall:刪除全部數據庫中的全部key。
1. redis 127.0.0.1:6379[1]> dbsize 2. (integer) 1 3. redis 127.0.0.1:6379> select 0 4. OK 5. redis 127.0.0.1:6379> flushall 6. OK 7. redis 127.0.0.1:6379> select 1 8. OK 9. redis 127.0.0.1:6379[1]> dbsize 10. (integer) 0 11. redis 127.0.0.1:6379[1]> keys * 12. (empty list or set) 13. redis 127.0.0.1:6379[1]> select 0 14. OK 15. redis 127.0.0.1:6379> keys * 16. (empty list or set)
在本例中咱們先查看了一個1號數據庫中有一個key,而後切換到0號庫執行flushall命令,結果1號庫中的key也被清除了,說是此命令工做正常。