共计 1668 个字符,预计需要花费 5 分钟才能阅读完成。
自动写代码机器人,免费开通
丸趣 TV 小编给大家分享一下如何查看 redis 是否持久化,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!
info 查看持久化信息
redis-cli info persistence#
loading:服务器是否正在载入持久化文件
rdb_changes_since_last_save:离最近一次成功生成 rdb 文件,写入命令的个数,即有多少个写入命令没有持久化
rdb_bgsave_in_progress:服务器是否正在创建 rdb 文件
rdb_last_save_time:离最近一次成功创建 rdb 文件的时间戳。当前时间戳 – rdb_last_save_time= 多少秒未成功生成 rdb 文件
rdb_last_bgsave_status:最近一次 rdb 持久化是否成功
rdb_last_bgsave_time_sec:最近一次成功生成 rdb 文件耗时秒数
rdb_current_bgsave_time_sec:如果服务器正在创建 rdb 文件,那么这个域记录的就是当前的创建操作已经耗费的秒数
rdb_last_cow_size:RDB 过程中父进程与子进程相比执行了多少修改 (包括读缓冲区,写缓冲区,数据修改等)。
aof_enabled:是否开启了 aof
aof_rewrite_in_progress:标识 aof 的 rewrite 操作是否在进行中
aof_rewrite_scheduled:rewrite 任务计划,当客户端发送 bgrewriteaof 指令,如果当前 rewrite 子进程正在执行,那么将客户端请求的 bgrewriteaof 变为计划任务,待 aof 子进程结束后执行 rewrite
aof_last_rewrite_time_sec:最近一次 aof rewrite 耗费的时长
aof_current_rewrite_time_sec:如果 rewrite 操作正在进行,则记录所使用的时间,单位秒
aof_last_bgrewrite_status:上次 bgrewriteaof 操作的状态
aof_last_write_status:上次 aof 写入状态
aof_last_cow_size:AOF 过程中父进程与子进程相比执行了多少修改 (包括读缓冲区,写缓冲区,数据修改等)。
appendfsync 有三个选项:always、everysec 和 no:
1、选择 always 的时候服务器会在每执行一个事件就把 AOF 缓冲区的内容强制性的写入硬盘上的 AOF 文件里,可以看成你每执行一个 redis 写入命令就往 AOF 文件里记录这条命令,这保证了数据持久化的完整性,但效率是最慢的,却也是最安全的;
2、配置成 everysec 的话服务端每执行一次写操作(如 set、sadd、rpush)也会把该条命令追加到一个单独的 AOF 缓冲区的末尾,并将 AOF 缓冲区写入 AOF 文件,然后每隔一秒才会进行一次文件同步把内存缓冲区里的 AOF 缓存数据真正写入 AOF 文件里,这个模式兼顾了效率的同时也保证了数据的完整性,即使在服务器宕机也只会丢失一秒内对 redis 数据库做的修改;
3、将 appendfsync 配置成 no 则意味 redis 数据库里的数据就算丢失你也可以接受,它也会把每条写命令追加到 AOF 缓冲区的末尾,然后写入文件,但什么时候进行文件同步真正把数据写入 AOF 文件里则由系统自身决定,即当内存缓冲区的空间被填满或者是超过了设定的时限后系统自动同步。这种模式下效率是最快的,但对数据来说也是最不安全的,如果 redis 里的数据都是从后台数据库如 mysql 中取出来的,属于随时可以找回或者不重要的数据,那么可以考虑设置成这种模式。
以上是如何查看 redis 是否持久化的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注丸趣 TV 行业资讯频道!
向 AI 问一下细节
丸趣 TV 网 – 提供最优质的资源集合!