Redis基礎語法【供新手使用】

redis端口: 6379
redis常用命令:
開啓:./redis-server redis.config
關閉:a)kill + 端口
b)./redis-cli shutdown

使用客戶端口連接:
	   ./redis-cli  -h  IP  -p  端口
	   
	   參數詳解:
				-h   指的是host   就是需要連接的ip
				-p   指定的port	  就是指定的端口號

存儲的類型主要有:String(常用), hash(常用), List, Set, SetSort
針對所有的類型都是 set 存放數值 || get 取值的

(附加):
String類型的:
incr(每次添加1):
decr(每次較少1):
del(刪除命令);
注:如果incr 或者 decr之後,再去取值都是String類型的

	192.168.25.129:6379> keys *
	1) "str1"
	2) "keys"
	192.168.25.129:6379> del keys 
	(integer) 1
	192.168.25.129:6379> keys * 
	1) "str1"
	192.168.25.129:6379> 

	
	
	例子:
	192.168.25.129:6379> incr keys 
	(integer) 1
	192.168.25.129:6379> incr keys 
	(integer) 2
	192.168.25.129:6379> incr keys
	(integer) 3
	192.168.25.129:6379> decr keys
	(integer) 2
	192.168.25.129:6379> get keys
	"2"
	192.168.25.129:6379>

hash類型的:(只要的是一個key,一個map 或者叫做field)
存放值:hset hash1 field a

	例子:
	192.168.25.129:6379> hset hash1 field1 a 
	(integer) 1
	192.168.25.129:6379> hset hash1 field2 b
	(integer) 1
	192.168.25.129:6379> hset hash1 field3 c
	(integer) 1
	192.168.25.129:6379> keys * 
	1) "str1"
	2) "hash1"
	192.168.25.129:6379> hkeys hash1
	1) "field1"
	2) "field2"
	3) "field3"
	192.168.25.129:6379> hvals field 2
	(error) ERR wrong number of arguments for 'hvals' command
	192.168.25.129:6379> hvals hasj1
	(empty list or set)
	192.168.25.129:6379> hvals hash1
	1) "a" 
	2) "b"
	3) "c
	192.168.25.129:6379> 
	
	如果key和values一塊取出來的話  就用hgettall hash1
	
	192.168.25.129:6379> hgetall hash1
	1) "field1"
	2) "a"
	3) "field2"
	4) "b"
	5) "field3"
	6) "c"
	192.168.25.129:6379> 
	
	刪除裏邊某個元素: 
	192.168.25.129:6379> hdel hash1 field3
	(integer) 1
	192.168.25.129:6379> hkeys hash1
	1) "field1"
	2) "field2"
	192.168.25.129:6379> 

list類型的:(一個key對應的是一個list集合 有序,允許重複的)
從左邊存放元素:lpush list 存放的元素
從右邊存放元素:rpush list 存放的元素
查看所有的元素:lrange list 開始位置 結束位置
從左邊取出元素:lpop list
從右邊取出元素:lpop list
注意:取完元素就沒了

set類型的;(特點:裏邊不允許存放重複的內容,沒有順序)
放入元素:sadd set2 1 2 3 4 5
刪除元素: srem set2 1
查看元素個數:smembers set2

	例子:
	192.168.25.129:6379> sadd set2 1 2 3 4 5 
	(integer) 5
	192.168.25.129:6379> srem set2 1
	(integer) 1
	192.168.25.129:6379> smembers set2 
	1) "2"
	2) "3"
	3) "4"
	4) "5"
	
	集合a和集合b之間的運算:
	交集: sinter  a集合  b集合
	並集: sunion a集合  b集合
	差集: sdiff a集合(以a集合爲標準)  b集合
	
	例子:
	192.168.25.129:6379> sadd setA a b c d e 
	(integer) 5
	192.168.25.129:6379> sadd setB c d e f g
	(integer) 5
	192.168.25.129:6379> sunion setA setB
	1) "g"
	2) "b"
	3) "a"
	4) "c"
	5) "e"
	6) "f"
	7) "d"
	192.168.25.129:6379> sdiff setA setB
	1) "b"
	2) "a"
	192.168.25.129:6379> sdiff setB setA
	1) "f"
	2) "g"
	192.168.25.129:6379> sinter setA setB
	1) "c"
	2) "e"
	3) "d"

SortedSet集合:(有序,不能重複)
特點:一個元素對應一個分數,然後他是根據分數排列順序的

	  添加元素:zadd 集合名稱   {集合分數,集合元素}
	  192.168.25.129:6379> zadd zset 1 a 2 m 3 d 5 f 6 g
	  (integer) 5
	  192.168.25.129:6379> 
	  
	  查詢元素:
		a).zrange 集合名稱  開始索引 最終索引	
	   192.168.25.129:6379> zrange zset 0 -1 
		1) "a"
		2) "m"
		3) "d"
		4) "f"
		5) "g"
		b).zrevrange 集合名稱  開始索引 最終索引(將排序倒序排列)
		192.168.25.129:6379> ZREVRANGE zset 0 -1
		1) "g"
		2) "f"
		3) "d"
		4) "m"
		c).zrevrange 集合名稱  開始索引 最終索引(將排序倒序排列) withscores 
		192.168.25.129:6379> ZREVRANGE zset 0 -1 withscores 
		1) "g"
		2) "6"
		3) "f"
		4) "5"
		5) "d"
		6) "3"
		7) "m"
		8) "2"


		
	刪除元素:zrem 集合名稱  要刪除的元素
	192.168.25.129:6379> zrem zset a 
	(integer) 1

設置緩存時間:
命令:expire key 時間
例子:192.168.25.129:6379> EXPIRE str1 100
(integer) 1

查看緩存剩餘的時間:(參數說明: -1 說明是持久化的 -2是不存在的)
命令:ttl key
例子:
192.168.25.129:6379> ttl key
(integer) -2
192.168.25.129:6379> ttl str1
(integer) 81
192.168.25.129:6379> ttl str1
(integer) 80
192.168.25.129:6379> ttl str1
(integer) 79
192.168.25.129:6379> ttl str1
(integer) 78
192.168.25.129:6379> ttl str1
(integer) 78
192.168.25.129:6379> ttl str1
(integer) 77
持久化時間:
命令:Persist key key持久化

Redis持久化方案有哪幾種:
a).rdb 快照形式,定期把內存中當前時刻的數據保存到磁盤
b).aof 把所有對redis數據庫操作的命令,增刪改操作的命令。保存到文件中。數據庫恢復時把所有的命令執行一遍即可
操作:需要修改redis.conf配置文件中的appendonly 爲yes
區別:
rdb會有個默認設置時間去保存一次
aof會每秒保存一次(性能會下降,如果怕丟失數據的話,建議使用aof)

Redis搭建集羣:
主要修改config配置文件的 cluster-enabled yes 打開就行了

使用方法:使用Jredis連接

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章