redis

Redis 数据库

redis  REmote DIctionary Server(Redis)  key-value存储系统,提供多语言API.
它通常被称为数据结构服务器,因为值value可以是 str,list,set,(sorted set)/zset,hash

redis 优势 

  性能极高 读110000次/s,写81000次/s

  数据类型丰富

  redis 的所有操作都是原子性的.同时还支持对几个操作合并后的原子性执行

  丰富的特性 - redis 还支持publish/subscribe订阅,通知,key过期等等特性

redis 和其他数据库的区别?
在内存数据库方面的另一个优点是, 相比在磁盘上相同的复杂的数据结构,在内存中操作起来非常简单,这样Redis可以做很多内部复杂性很强的事情。 同时,在磁盘格式方面他们是紧凑的以追加
的方式产生的,因为他们并不需要进行随机访问。

windows redis 安装  https://code.ziqiangxuetang.com/redis/redis-install.html

redis 服务启动
cd redis 目录下   redis-server redis.conf 
cd redis 目录下   redis-cli.exe -h 127.0.0.1 -p 6379

linux   redis 安装  https://code.ziqiangxuetang.com/redis/redis-install.html

redis 数据类型
string(字符串) 可以包含任何数据,比如jpg,或者序列化的对象,一个键最大能存512MB

Hash(哈希) 是一个键值对集合,redis hash 是一个string类型的field和value的映射表,哈希特别适用于存储对象   hmset 键 (多值)   hgetall 键
List(列表) 是简单的str列表,按照插入的顺序排序,可以插入元素到头/尾部
lpush 列表 值
lrange  列表 范围 (0 -1)
set(集合) redis的set是string类型的无序集合
集合是通过及哈希实现的,所以添加,删除,查找的复杂度都是O(1)
sadd 命令 添加一个string元素到key对应的集合中,成功返回1,若已存在返回0,key对应的set不存在返回错误
sadd key member  添加值
smember key 查看集合中的值
zset(sorted set有序集合)  也是string类型元素的集合,且匀速不能重复

不同的是每个元素都会关联一个double类型的分数.redis正是通过分数来为集合中的成员进行从小到大的排序
zset成员是唯一的,但是分数(score)却可以重复
zadd 命令 添加元素到集合,元素在集合中存在则更新对应的score
zadd key score member
zrangebyscore key 分数范围
远程端连接redis
redis-cli -h host -p port -a password
例子 redis-cli -h 127.0.0.1 -p 6379 -a "mypass"
key 命令
set
del
dump key  序列化,返回被序列化的值
exists key  是否存在
expire key  设置过期时间
keys pattern 查找所有符合给定模式的key
move key db 将当前库的key移动到给定数据库db当中
randomkey  从数据库中随机返回一个key
rename key newname 键的重命名
RENAMENX key newkey
type key 返回key所存储的值的类型

flushdb  删除当前库里的keys
flushall  删除所有
string 操作
set 
del 
getset  改原键的值,返回旧值

mset 键1 值1 键2 值2
mget 键1 键2 
setex 键 timeout 值
getrange 键 start end 
ttl 键 查看过期时间信息
setrange  键 偏移
strlen 键  返回字符串长度,不存在键就返回0

 

posted @ 2019-05-27 22:56  追风zz  阅读(154)  评论(0编辑  收藏  举报