Redis

关注公众号 jb51net

关闭
首页 > 数据库 > Redis > Redis禁用RDB持久化

Redis 彻底禁用RDB持久化操作

作者:xupeng1644

这篇文章主要介绍了Redis 彻底禁用RDB持久化的操作,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

Redis 禁用RDB持久化

Redis是默认开启RDB的,AOF则是默认关闭的。如果需要关闭RDB,将Redis完全作为一个缓存使用,需要修改配置项save。

开启save “”, 将save 900 1、save 300 10、save 60 10000注释掉。

配置文件修改如下:

save ""
#save 900 1
#save 300 10
#save 60 10000

如果是中途关闭RDB持久化,还需要删除已经生成的文件dump.rdb。重启即可完全关闭RDB持久化。

可以通过命令config get dbfilename获取最新的文件名。通过命令config get dir获取最新路径。

配置文件中的配置如下:

#指定本地数据库文件名,一般采用默认的 dump.rdb
dbfilename dump.rdb
 
#数据目录,数据库的写入会在这个目录。rdb、aof文件也会写在这个目录
dir /usr/local/redis/var

Redis 持久化AOF与RDB配置

AOF保存的数据方案时最完整的,如果同时开启了rdb和aof下,会采用aof方式。

(1)设置数据保存到数据文件中的save规则

save 900 1     #900秒时间,至少有一条数据更新,则保存到数据文件中
save 300 10    #300秒时间,至少有10条数据更新,则保存到数据文件中
save 60 10000  #60秒时间,至少有10000条数据更新,则保存到数据文件中

(2)数据rdb压缩设置

rdbcompression yes  #指定存储至本地数据库时是否压缩数据,默认是yes,redis采用LZF压缩,如果为了节省CPU时间
                    #可以关闭该选项,但会导致数据库文件扁的巨大
dbfilename dump.rdb  #指定rdb保存到本地数据库文件名
stop-writes-on-bgsave-error yes  #当硬盘因为权限等原因无法写入时,停止写入
rdbchecksum yes    #对rdb文件进行校验

(3)aof文件操作

appendonly no   #指出是否在每次更新操作后进行日志记录,如果不开启,可能会在断电时导致一段时间内的数据丢失,因为redis本身同步数据文件是按上面的save条件来同步的,所以有的数据会在一段                    
                      #时间内只存在于内存中。
# appendfsync always       # always:表示每次更新操作后手动调用fsync()将数据写到磁盘(慢,安全) 
appendfsync everysec       # everysec:表示每秒同步一次(折衷,默认值)
# appendfsync no             # no:表示等操作系统进行数据缓存同步到磁盘(快) 

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

您可能感兴趣的文章:
阅读全文