Redis

概念

redis: 它是一款高性能的NOSQL(Not Only SQL)系列非关系型数据库

注意:

1.Mysql是关系型数据库,Redis是非关系型数据库

2.对于关系型数据库,数据之间有关联关系,而且数据存储在表中(也就是硬盘的文件中)

3.对于非关系型数据库,没有表的概念,数据之间没有关联关系(即没有耦合),存储的是以key-value键值对的形式且数据存在内存中(读取内存数据比文件数据快很多)

4.一般我们都是将数据存储在关系型数据库,然后在非关系型数据库中做备份

下载安装

百度直接搜索redis中文网然后下载解压就好,我把我的放上去:** 链接: https://pan.baidu.com/s/1uMJSb7p4NG0Yt59mqo8ioA 提取码: p9c8**

分析:

1.redis.windows.conf里面放的是配置文件

2.redis-cli.exe,这是redis的客户端(启动服务器以后再点击客户端就启动了,在黑窗口敲命令就可以了.例如:set name fan–>get name)

3.redis-server.exe, 这是redis的服务端(点一下这个服务器就启动了)

Redis数据结构介绍

redis存储的是key,value键值对格式的数据,其中key都是字符串,value值可以有5种不同的数据结构

value的数据结构

不论value是什么类型,它里面的数据都是字符串类型

1.字符串类型: String

2.哈希类型: hash,也就是map格式–key,value

3.列表类型: list,例如linkedlist

4.集合类型: set,例如hashset

5.有序集合类型: sortedset(不重复,有序)

常用命令操作(点那个客户端的exe就可以打开黑窗口了)

redis完整教程.

再次强调,redis中的key都是字符串类型的

1.value为字符串类型

1.存储: set key value,例如: set name fan

2.获取: get key,例如: get name

3.删除: del key,例如: del name

2.value为哈希类型

1.存储: hset key field value,例: hset test name fan || hset test age 18

2.获取: hget key field,例: hget test name

3.获取给定key中的所有value: hgetall key,例: hgetall test

4.删除: hdel key field,例: hdel test name

3.value为列表list类型(可重复)

Redis列表是简单的字符串列表,按照插入顺序排序,你可以添加一个元素到列表的头部(左边)或者尾部(右边),不能在中间添加

1.添加

1.将元素从列表左边添加: lpush key value

2.将元素从列表右边加入: rpush key value

2.获取:

1.lrange key start end: 范围获取

2.获取指定key中的所有元素: lrange key 0 -1

3.删除

1.lpop: 删除列表最左边的元素并将元素返回

2.rpop: 删除列表最右边的元素并将元素返回

4.value为集合set类型(不重)

当添加的元素是重复的的时候,它就不会添加进去

1.存储: sadd key value

2.获取: smembers key,获取set集合中某个给定key下面的所有元素

3.删除: srem key value,删除set集合中某个key中的某个元素

5.value为有序集合(不重复且有序)

Redis 有序集合和集合一样也是string类型元素的集合,且不允许重复的成员。不同的是每个元素都会关联一个double类型的分数,redis正是通过分数来为集合中的成员进行从小到大的排序

1.存储: zadd key score(这个表示排序顺序) value

例: zadd test 1 a

例: zadd test 1 b–使得a字符和b字符是同样的分数这个是可以的,如果是元素重复的话,它就不会添加进去

例: zadd test 3 a–修改a的分数以改变其顺序

2.获取: zrange key start end

例: 获取指定key下的所有元素及其对应分数: zrank test 0 -1 withscores

3.删除: zrem key value

例: zrem sort a-- 删除sort中的a元素

6.通用命令

1.keys : 查询所有的键,其中的表示一个正则表达式

2.type key: 获取对应key的value的类型

3.del key: 删除指定的key及其value

redis持久化

持久化: 由于redis是一个内存数据库,也就是说我们的操作都是在内存中进行的,数据都是临时的,当我们服务器一重启,数据就没了,我们可以将redis内存中的数据持久化保存到硬盘的文件中,数据就不会丢失了

持久化机制

1.RDB: 默认方式,不需要进行配置,默认使用的就是这个配置(存放在后缀名为.rdb的文件中)

在一定的间隔时间中,我们去检测key的变化情况,当key达到一定数量后,然后持久化数据

编辑redis.windows.conf这个配置文件中的这样一段内容

		save 900 1
		表示如果只改变了几条数据,最少一条,在900秒后持久化
		save 300 10
		表示如果只改变了大于10条,但是小于10000,在300秒之后持久化
		save 60  10000
		表示如果改变了10000条及以上数据,在60秒之后持久化

当我们修改了配置文件之后,我们需要重新启动redis服务器并指定配置文件名称:

1.在配置文件所在目录打开cmd黑窗口

2.输入redis-server.exe redis.windows.conf服务器就会重启

3.然后再点击客户端的exe文件重启客户端就可以了

2.AOF(存放在一个后缀名为.aof的文件中)

日志记录的方式,可以记录每一条命令的操作,可以每一次命令操作后都持久化数据

步骤:

1.编辑redis.windows.conf这个配置文件中的appendonly no改为appendonly yes就表示开启了AOF持久化存储方式

2.AOF的三个内容:

			appendfsync always
			表示每间隔一次操作都进行持久化
			appendfsync everysec(默认)
			表示每间隔一秒都进行持久化
			appendfsync no
			表示不进行持久化

3.当我们修改了配置文件之后,我们也需要重新启动redis服务器并指定配置文件名称,跟RDB一样的,我就不重复写了

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值