Redis
作者:互联网
Redis
概念:redis是一款高性能的nosql系列的非关系型数据库
存储的是key:value 的形式
name:zhangsan
age:23
mysql:数据存在硬盘上
redis:数据存在内存中 所以很快(存入缓存(在内存区域中开辟出一个缓存区))
redis是nosql
下载和安装
解压可以直接使用
redis.windows.conf:配置文件
redis-cli:客户端
redis-server:服务器端
命令操作
redis的数据结构
*redis存储的是:键值对格式 的数据,其中key都是字符串,value有五种不同的数据结构
*value的数据结构:
- 字符串:String
- hash:map
- list:linkedlist
- set:不允许重复
- sortedset:不允许重复字符串:String
String
- 存储:set: key value
- 获取:get:key
- 删除 :del:key
哈希类型 hash
- 存储:hset key field value
- 获取:hget key field
- hget key field:获取指定的field的值
- hgetall key:获取所有的field和value
- 删除:hdel key field
列表类型 list(允许重复):可以添加一个元素到列表的头部或者尾部(左边或者右边)
- 添加:
- lpush key value:将元素加入列表左侧
- rpush key value:将元素加入列表右侧
- 获取:
- lrange key start end:范围获取
- 删除
- lpop key:删除列表最左边的元素并将元素返回
- rpop key:删除列表最右边的元素并将元素返回
集合类型 set:不允许重复元素
- 存储:sadd key value
- 获取:smembers key:获取set集合中的所有元素
- 删除:srem key value:删除set集合中的某个元素
有序集合类型:sortedset:不允许重复,且元素有顺序
- 存储:zadd key score value
- 获取:zrange key start end
- 删除:zrem key value
通用命令
- keys *:查询所有的键
- type key:获取键对应的类型
- del key:删除指定的key value
持久化
-
redis是一个内存数据库,数据是零时的,当redis服务器重启了或者电脑重启了,数据会丢失,我们可以将redis内存中的数据持久化保存到硬盘的文件中
-
redis持久化机制:
-
RDB:默认方式,不配置不需要进行配置,默认使用这种机制
-
在一定的间隔时间中,检测key的变化情况,然后去持久化数据(推荐使用)(当key变了多少次持久化)
-
编辑redis.windowos.conf文件
save 900 1
save 300 10
save 60 10000 -
-
-
AOF:日志记录的方式,可以记录每一条命令的操作,可以每一次的命令操作后来持久化数据
- appendonly no 默认关闭的 >> 改为yes (开启aof)
- appendfsync always:每一次操作都进行持久化
- appendfsync everysec:每个疫苗进行一次持久化
-
appendfsync no :不持久化(相当于把数据放在一个很大的map集合中)
- appendonly no 默认关闭的 >> 改为yes (开启aof)
-
Java客户端 Jedis
Jedis:一款java操作reids数据库的工具
Jedis的下载
Jedis的操作
-
//获取连接 Jedis jedis = new Jedis("localhost",6379);//可以省略 //操作 jedis.set("username","zhangsan"); //关闭连接 jedis.close();
Jedis各种redis中的数据结构
-
字符串 String
-
哈希类型 hash :map格式
-
集合类型 set :不允许重复
*sadd
-
有序集合类型 sortedset:不允许重复元素,且元素有顺序
zadd
Jedis连接池:jedisPool
使用
- 创建JedisPool连接池对象
- 调用方法 getResource()方法获取jedis的连接
标签:set,Redis,元素,redis,value,Jedis,key 来源: https://www.cnblogs.com/IsMhhla/p/16200221.html