Skip to content
Go back

25-Redis

Published:  at  03:40 AM

Redis

Redis是一款高性能的NoSQL系列的非关系型的数据库

关系型数据库一般多指数据之间存在关系,且将数据保存到硬盘上的数据库,例如MySQL等等。非关系型数据库是一个与之相对的概念,数据之间并不存在逻辑上的关系,且将数据存入内存而非硬盘中

Redis数据库将数据以键值对的形式存入内存

数据结构

Redis存储的是键值对形式(KEY,VALUE)的数据,其中KEY始终是字符串,VALUE有五种可存储类型

命令操作

字符串类型

哈希类型

列表类型

集合类型

有序集合类型(数据按照score排序)

通用操作

Redis的持久化

redis是一个内存数据库,当服务器重启或者电脑重启,都会导致数据库中数据的丢失,此时就需要通过设置redis持久化进行解决。redis有两种持久化方案,分别是RDB与AOF

RDB持久化方式

在一定的时间间隔中,检验key的变化情况,然后持久化数据

是redis默认的持久化方式,不需要进行配置,默认情况下就采用这种持久化方式

要更改相关的配置需要修改配置文件redis.windows.conf中的

################################ SNAPSHOTTING  ################################
#
# Save the DB on disk:
#
#   save <seconds> <changes>
#
#   Will save the DB if both the given number of seconds and the given
#   number of write operations against the DB occurred.
#
#   In the example below the behaviour will be to save:
#   after 900 sec (15 min) if at least 1 key changed
#   after 300 sec (5 min) if at least 10 keys changed
#   after 60 sec if at least 10000 keys changed
#
#   Note: you can disable saving completely by commenting out all "save" lines.
#
#   It is also possible to remove all the previously configured save
#   points by adding a save directive with a single empty string argument
#   like in the following example:
#
#   save ""

save 900 1
save 300 10
save 60 10000

“save 900 1”表示没过900秒有超过1个key被修改就进行持久化操作,同理”save 60 10000”表示没过60秒超过10000个key变化就进行持久化操作

修改文件后不能通过直接打开可执行程序的方式打开服务器端,需要通过命令行启动服务器端才能实现修改(在服务器文件路径下打开CMD窗口输入文件名启动服务器端)

AOF持久化方式

采用直接记录日志的方式,可以在每一次命令操作后持久化数据

使用AOF进行持久化操作的方式是编辑配置文件redis.windows.conf,将appendonly no 修改为appendonly yes(表示开启AOF持久化)

AOF持久化有三种可以选择的持久化方案

appendfsync always  //每次命令操作都进行持久化
appendfsync everysec  //每隔一秒进行一次持久化操作
appendfsync no   //不进行持久化操作

Suggest Changes

Previous Post
26-Jedis
Next Post
24-JSON