zoukankan      html  css  js  c++  java
  • (七)Redis之持久化之RDB方式

    一、持久化概念

    • 所有的数据都存在内存中,从内存当中同步到硬盘上,这个过程叫做持久化过程。
    • 使用方法:

      1.   rdb持久化方法:在指定的时间间隔写入硬盘

      2.         aof方式:将以日志,记录每一个操作,服务器启动后就构建数据库。

    二、RDB方式

    • Redis是默认支持的
    • 优势:只有一个文件,时间间隔的数据,可以归档为一个文件,方便压缩转移(就一个文件)

      劣势:如果宕机,数据损失比较大,因为它是没一个时间段进行持久化操作的。也就是积攒的数据比较多,一旦懵逼,就彻底懵逼了

    • 这里save 900 1 表示 每900秒内至少有1个ker发生变化,就持久化

      save 300 10表示 每300秒内至少有10个key发生变化,就持久化

      save 60 10000表示 每60秒内至少有10000个key发生变化,就持久化

     

    • 这里有个dbfilename配置 是 保存的持久化的文件名 默认是dump.rdb

     

    • dir ./ 表示文件存储路径是当前路径;

     三、Redis 数据备份与恢复

      3.1  数据备份

    • 语法

    redis Save 命令基本语法如下:

    127.0.0.1:6379> SAVE 
    • 实例

     127.0.0.1:6379> SAVE 
    OK

    该命令将在 redis 备份目录中创建dump.rdb文件。


      3.2  恢复数据

    • 1、获取备份目录
     127.0.0.1:6379> CONFIG GET dir
    1) "dir"
    2) "D:/Radis"

    以上命令 CONFIG GET dir 输出的 redis 备份目录为D:/Radis

    2、停止redis服务

    
    
     127.0.0.1:6379> shutdown

    3、拷贝备份文件到 D:/Radis 目录下

    4、重新启动redis服务

    5、已经全部搞定了,下面查看一下数据是否恢复了吧

    127.0.0.1:6379> dbsize
    (integer) 12
    127.0.0.1:6379> keys *
     1) "name"
     2) "set-key"
     3) "item"
     4) "test-key3"
     5) "test-key2"
     6) "hash-key"
     7) "test-key1"
     8) "key3"
     9) "list-key"
    10) "key4"
    11) "key1"
    12) "list-key2"

       3.3  总结

    平时我们可以定期把rdb文件(不重要的数据)备份到指定地方,需要恢复的时候 直接把rdb搞到redis下即可。而重要的数据则存放到数据库中。

  • 相关阅读:
    python后端项目编码规范检查——pre-commit的使用
    centos7安装docker-compose
    python使用pandas将MySQL表数据写入Excel表格
    Sublime Text3中隐藏了菜单,怎么显示出来?
    Docker学习篇
    服务端|性能测试入门指南 (慎入: 6000 字长文)
    登录界面测试用例设计
    Date与String的转换,Date的加减计算(前一小时,前一个月、、、)
    关于SQL分页计算公式
    Java
  • 原文地址:https://www.cnblogs.com/shyroke/p/8011278.html
Copyright © 2011-2022 走看看