抽空学习一下Redis内存数据库。
基本使用
在安装时应添加Redis安装目录到环境变量Path中。
启动
redis-server [redis.conf文件全路径]
也可添加其它参数:
redis-server --port 6389 -timeout 3000
启动后应保持CLI窗口不要关闭,在windows下该文件名是redis.windows.conf
。
回显使用
redis-cli
远程使用:
redis-cli -h 主机 -p 端口 -a 密码
在启动回显界面后,可以用PING
来测试Redis服务是否正常启动,正常情况下回返回PONG
。
关闭:
redis-cli [-p 端口号] shutdown [save|nosave]
这里save
和nosave
表示redis服务关闭前是否产生持久化文件,即能否在重启后看到保存的内容,默认是save
的。关闭后在启动的CLI可以看到进程结束了。
配置
除了直接操作redis.conf
配置文件之外,也可以在回显界面直接操作配置。
查看配置
CONFIG get 要查看的配置名
配置名的下一行是配置的值,用CONFIG get *
可以查看所有的配置。
修改配置
CONFIG set 配置名 值
数据类型
String
127.0.0.1:6379> SET myString "LauZyHou"
OK
127.0.0.1:6379> GET myString
"LauZyHou"
HashMap
127.0.0.1:6379> HMSET myHash myKey1 "myValue1" myKey2 "myValue2"
OK
127.0.0.1:6379> HGET myHash myKey2
"myValue2"
双端List
127.0.0.1:6379> LPUSH myList "1" "2"
(integer) 2
127.0.0.1:6379> LPUSH myList "3"
(integer) 3
127.0.0.1:6379> RPUSH myList "4" "5"
(integer) 5
127.0.0.1:6379> LRANGE myList 0 7
1) "3"
2) "2"
3) "1"
4) "4"
5) "5"
Set
127.0.0.1:6379> SADD mySet "lzh"
(integer) 1
127.0.0.1:6379> SADD mySet "okk"
(integer) 1
127.0.0.1:6379> SADD mySet "666" "555"
(integer) 2
127.0.0.1:6379> SMEMBERS mySet
1) "okk"
2) "555"
3) "666"
4) "lzh"
ZSet
ZSet是有序的集合,Redis通过分数来为ZSet集合中的成员从小到大排序。
127.0.0.1:6379> ZADD myZSet -1.5 "lzh" 12 "emmm" 800 "qwq" 400 "666"
(integer) 4
127.0.0.1:6379> ZRANGEBYSCORE myZSet -20 600
1) "lzh"
2) "emmm"
3) "666"
HyperLogLog
HyperLogLog可以用来统计不重复元素的个数(集合的基数),但是它不会存储元素本身,所以不能获取输入进去的元素。
127.0.0.1:6379> PFADD myHyperLogLog "lzh" "ok" "lzh" "666"
(integer) 1
127.0.0.1:6379> PFADD myHyperLogLog "ok"
(integer) 0
127.0.0.1:6379> PFCOUNT myHyperLogLog
(integer) 3