redis是一个高性能的键值数据库。是当前最热门的的的NoSql数据库之一,也被人们称为数据结构服务器。
redis应用:
1、高速缓存服务(用户经常访问的数据从数据库搬到内存)
2、实时排行榜
3、投票点赞
4、验证码服务
5、消息队列
等等应用场景…
查看redis版本
redis-server --version
redis-cli --version
查看redis进程
netstat -nap | grep redis
启动redis
redis-server
启动redis并且保持后台运行
redis-server > redis.log &
启动redis更改端口
redis-server --port 1234 >redis.log &
启动redis加上口令验证
redis-server --requirepass 26324636 > redis.log &
查看后台任务
jobs
客户端连接
redis-cli
客户端连接其他人(指定主机,需要指定端口的话加上)
redis-cli -h 120.77.222.217 -p 1234
客户端验证身份
auth 26324636
字符串
设置键值对
set username effort
获取键值对
get username
追加
append username 123
设置键值对超时时间(30s之后自动消失)
set username zjw ex 30
ps:设置手机号验证码
set 17866668888 567899 ex 300
查看指定键还剩多少时间
ttl 17866668888
哈希表
哈希存储 - 性能非常好的存储方案 - set
obj — 哈希函数 —> 哈希码(散列码) —> 对象在内存中存储的位置
文件 —> MD5 /SHA1/SHA256 --> 哈希码(数字指纹/数字签名)
设置哈希
hset stu1 id 1001
hset stu1 name zhongjiawei
批量设置哈希
hmset stu2 id 1002 name zhangsan
获取哈希
hget stu1 name
批量获取哈希信息
hmget stu1 id name sex
查看所有的值
hvals stu1
hgetall stu1
列表
插入列表元素
lpush numbers 10 20 30 40 50 60
取出列表元素
lpop numbers
集合
插入集合元素
sadd set1 10 20 10 10 30 40
sadd a 2 4 6 8
sadd b 1 2 3 4 5 6
获取集合元素
smembers set1
交集
sinter a b
并集
sunion a b
有序集合
ZADD key score member [[score member] [score member] …]
插入有序集合元素
zadd phb 150 a 100 b 50 c 200 d
从低到高输出
zrange phb 0 -1
从高到低输出
zrevrange phb 0 -1
从高到低输出(带值)
zrevrange phb 0 -1 withscores
为有序集 key 的成员 member 的 score 值加上增量(比如票数增加了5000)
zincrby phb 5000 a
地理信息运算
新增地理位置:
geoadd map 120.12792 30.228932 xihu 120.169373 30.259392 hubinyintai
计算两点地理位置距离(直线距离,默认m):
geodist map xihu hubinyintai km
计算以指定地理位置多少半径内的所有位置信息(显示距离):
georadius map 120.12792 30.228 10 km withdist
修复持久化文件
redis-check-rdb --fix dump.rdb
redis-check-aof --fix appendonly.aof
文章分享完毕,希望我的分享对大家有所帮助。更多学习技巧也可参阅另一篇关于:Redis学习笔记 - Python操作Redis