当前位置: 首页 > 面试题库 >

redis:备份dump.rdb

闻人冷勋
2023-03-14
问题内容

语境

我有一个正在运行的Redis服务器。

我要备份。

理念:

我要执行以下操作:

cp dump.rdb ~/some-other-location/06-24-2012.rdb ?

关心

我没有看到任何可以向我保证dump.rdb始终是一致的数据库存储的东西。(在我看来,当我执行cp时,redis在写入某些数据的过程中途处于中间状态,因此dump.rdb处于不一致状态。)

问题:

这很不好,因为我现在必须关闭redis db才能制作dump.rdb的副本。

题:

在Redis服务器运行时,进行数据库实时备份的正确方法是什么?手册的哪一部分向我保证,此方法将创建处于一致(而非半写)状态的数据库。

谢谢!


问题答案:

来自http://redis.io/topics/persistence

Redis非常便于数据备份,因为您可以在数据库运行时复制RDB文件:RDB一旦生成就永远不会被修改,而RDB在生成时会使用一个临时名称,并且仅使用rename(2)原子地重命名为其最终目标新快照完成后。

因此,正确的方法是简单地将dump.rdb复制到您的备份位置。



 类似资料:
  • 主要内容:备份数据,恢复数据,后台备份数据Redis SAVE 命令用于创建当前数据库的备份文件,文件名默认为 。备份数据库数据可以增强对数据的保护,提升数据的安全性。当数据不小心丢失或者被删除时,我们就可以通过相应的操作进行数据恢复。本节介绍 Redis 的数据备份和数据还原操作。 备份数据 SAVE 命令基本语法如下: 执行备份命令: 注意:命令执行后,将在 Redis 安装目录中自动创建 文件。如下图所示: 图1:Redis 备份文

  • 这个问题是关于Redis持久性的。 我正在使用redis作为社交网站的“快速后端”。这是一个单一的服务器设置。我一直在将PostgreSQL的职责稳步转移到Redis。目前在中,附加设置设置设置为。快照设置为,,。所有这些对于生产和开发都是如此。根据生产日志,被大量调用。这是否意味着实际上,我每60秒就会得到一次备份? 一些文献建议同时使用AOF和RDB备份。因此,我正在权衡是否打开appendo

  • Redis SAVE 命令用于创建当前数据库的备份。 语法 redis Save 命令基本语法如下: redis 127.0.0.1:6379> SAVE 实例 redis 127.0.0.1:6379> SAVE OK 该命令将在 redis 安装目录中创建dump.rdb文件。 恢复数据 如果需要恢复数据,只需将备份文件 (dump.rdb) 移动到 redis 安装目录并启动服务即可。

  • 主要内容:Redis 数据备份与恢复,1.SAVE 命令,2.恢复数据,3.BgsaveRedis 数据备份与恢复 1.SAVE 命令 Redis SAVE 命令用于创建当前数据库的备份。 实例 2.恢复数据 如果需要恢复数据,只需将备份文件 (dump.rdb) 移动到 redis 安装目录并启动服务即可。获取 redis 目录可以使用 CONFIG 命令,如下所示: 以上命令 CONFIG GET dir 输出的 redis 安装目录为 /usr/local/redis/bin。

  • MySQL的备份-mysqldump命令的使用 备份数据库的参数 Myisam表常规备份(参数) InnoDB表常规备份(推荐使用的存储引擎) 普通方式备份数据库 多实例指定sock文件备份数据库test并使用gzip压缩 使用egrep查看备份的文件的sql内容 -B参数 备份多个库 备份库下的表 备份库下的某个表 备份库下的多个表 -d参数 备份表结构 -t参数 备份表数据 -F参数 刷新二进

  • 常规属性 在此选项卡,你可以查看服务器和数据库的信息。如有需要,可为备份文件输入一个注释。 对象选择 在此选项卡,选择你想备份的数据库对象。 运行期间的全部<对象> (*) 所有的数据库对象将会备份,所有新添加的数据库对象也将会被备份而不必修改备份配置文件。 自定义 只备份已勾选的数据库对象。然而,如果在创建备份配置文件后,在数据库和/或模式中添加任何新的数据库对象,新建的数据库对象将不会被备份,