Redis7学习(1)

目录

Redis前置知识

关于Redis的几个网站:

Redis数据库安装

Redis卸载

Redis十大数据类型

Redis的数据类型操作命令推荐

Redis中String类型的操作常用命令整合以及案例。

常用命令:

  应用案例:

Redis中的List类型的常用命令整合以及案例

命令:

应用案例:

Redis中Hash类型的操作常用命令整合以及案例。

常用名令:

Redis的持久化。

一、RDB实现持久化

1、自动操作

a、将默认配置修改(5秒两次)

b、修改dump文件保存路径

​编辑

c、修改文件名

 d、重启redis后验证是否配置成功。

e自动持久化验证

e.1、文件生成操作

e.2恢复到数据库中

2、手动操作

rdb持久化的优缺点。

   优点:

  缺点:

 RDB其他操作

    1、修复破损的文件

     2、禁用redb快照

      3、其他优化配置

二、AOF持久化操作。

1、AOF的写回策略。

2、AOF的实际操作

         a、配置文件说明

  b、AOF的验证

3、AOF文件异常恢复

4、优缺点

     a.优点

       b.缺点

AOF的重写机制。

Redis事务

Redis管道


记录此文章只是为了自己学的Redis的知识,方便后续进行复习。

Redis前置知识

        每个新技术的发展都是为了解决相对应的问题。就拿Redis来说,它在如今的互联网中扮演着很重要的角色,它能解决什么问题呢?了解此项技术之前先来看看在互联网中常用的MySQL、Oracle等基于SQL技术的数据存储技术,在大多数时候都是读取数据多,写入的数据相对于读取来说要少得多。可能光是这样讲就很难体会到,讲一个可能不那么确切的现实生活中的现象吧,每天无聊时就会拿出手机,可能是刷刷视频、逛逛网店等,这个时候浏览审批的可能大于我需要去进行上传视频、查看商品爆款可能比我买的要少,而这个现象并非个例,是大多数人的操作,那么这个时候只是读取的要大于去操作数据库的情况。这样一来如果只是使用读取MySQL的数据的情况下,就会达到它性能的瓶颈,所以为了解决这个问题,就需要抽取一些爆款的、火爆的数据以供数据的数据进行读取。那么此时Redis就可以来解决这一问题,将这些读取较多的数据进行抽取并放入其中,而且在Redis是基于内存的存储,这样一来就保证了读取数据的迅速性。所以Redis与关系型的数据库并非敌对的关系而是相互配合去做事的合作关系。

关于Redis的几个网站:

https://redis.io/downloads/
https://github.com/redis/redis
https://try.redis.io
https://download.redis.io/releases/   -----需要进行下载的话这个可以重点关注一下,亲测了响应的时间挺快且方便。

https://redis.io   ---官方地址。

Redis数据库安装

前提说明:在Redis的官网中,建议是不要在Windows上进行安装,如果非要需要请自行搜索安装方式。

1、通过https://download.redis.io/releases/ 网站去获取需要的版本。

2、下载后将文件上传到LINUX系统下。

3、将文件在LINUX所处的位置执行

tar -vzxf redis-7.0.9.tar.gz  (如果需要的自定义文件夹的情况下在此处写上) 

cd  redis-7.0.9(或者cd 到解压的目录下)

4、进入到解压的文件后确定是否有以下文件。

重点关注是否有redis.conf、src、Makefile这几个文件。

5、执行以下命令。

make && make install

6、默认安装的目录在 

/usr/local/bin

新建目录

mkdir  /myredis

7、将最开始解压的目录下的redis.conf拷贝到自定义目录下后修改。

cp /opt/redis-7.0.9/redis.conf  /myredis/redis7.conf

 修改以下参数。

8、Redis启动

redis-server /myredis/redis7.conf

9、测试。

redis-cli -a  密码

10、关闭服务

redis-cli -a 密码 -p 端口号 shutdown

Redis卸载

Redis的卸载是比较简单的,方法是:1、停止服务,2、将Redis的所有链接方式和文件就可以了。

Redis十大数据类型

提前说明:十大数据类型指的是value的类型。

1、String:用于存储字符类型(二进制安全的,最多可以存储512M的数据)。

2、List:用存储于列表(双端列表,最多可以包含2^32-1个元素(4294967295,每个列表超过40亿个元素))。

3、Hash:用于存储哈希表(映色对象)。

4、Set:用于存储集合。

5、ZSet:用于存储有序集合。

6、CEO:用于存储地理空间。

7、HyperLongLong:用于存储基数统计。

8、bitmap:用于存储位图。

9、bitfield:用于存储位域。

10、Stream:用于存储流。

Redis的数据类型操作命令推荐

https://redis.io/commands/   -官网。

https://www.redis.cn/commands.html  -中文官网

Redis中String类型的操作常用命令整合以及案例。

常用命令:

key * --查看所有的key

exisits key  --判断是否存在key

type key  --查看key的类型。

del  key  --删除key(会发生阻塞

unlink  key   --非阻塞删除key

ttl  key  --查看key存活的时间(单位秒),-1表示永不过期、-2表示已过期、其余表示还剩余的时间。

expire key   --为key设置过期时间(单位秒

move  key dbindex  [0-15]  --将当前数据库中的key移动到制定的数据库db中。

select  dbindex  [0-15]  ---切换数据库

dbsize      ---查看当前数据库的key数量。

flushdb   --清空当前库(慎用)。

flushall   ---清空所有库(慎用)。

对于类型的操作命令,命令可以不区分打小写,但是对于key是区分大小写的。

String类型:

       set key value [NX|XX] [GET] [EX seconds|PX milliseconds|EXAT UNIX-time-seconds|PXAT  UNIX-time-milliseconds|KEEPTTL]

       参数说明:

                 nx:键不存在的情况下进行设置键值。

                 XX:键存在的时候设置键值(覆盖)

                  GET:返回原本的值,若值不存在时返回nil,替换原值。

                   EX seconds:以秒为单位设置过期时间。

                   PX  milliseconds:以毫秒为单位设置过期时间。

                   EXAT unix-time-seconds:以秒为单位的UNIX时间戳所对应的时间为过期时间。

                   PXAT  UNIX-time-milliseconds:以毫秒为单位的UNIX时间戳所对应的时间为过期时间。

                   KEEPTTL:保留设置前指定键的生存时间(再次设置时使用原来的过期时间)。

   

                 

获取当前日期时间戳。

public static void main(String[] args) {
 System.out.println(Long.toString(System.currentTimeMillis()/1000L));

}

          MSET   key value[key value ....]  --设置多个值。

          MGET key[key ......] --获取多个值

          MSET/MGET/MSETNX  --不存在的时候进行设置值(若存在则设置失败)

          getrange/setrange   --get为截取指定下标区间的字符串,set为替换目标的字符串(超出原有字符串则用"\x00"替换)

                    

         数值的增加减少(值必须为数字类型的) 

         INCR key --自增1

         INCRBY key increment --增加指定步长。

         DECR key  --自减1

         DECR key decrement  ---减少指定步长。

         STRLEN key   ---获取字符串的长度。

        APPEND key value  ---追加字符串。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

TTQYXW

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值