当redis执行flush操作后的补救措施

redis误操作flushall的补救措施
前提:开启了aof持久化
注意:

  1. 当执行了flushall或者flushdb等手残命令,切记千万不要触发aof重写
  2. 可以利用config set命令将如下两值调巨大,防止重写操作。
    auto-aof-rewrite-percentage 100
    auto-aof-rewrite-min-size 64mb


手残操作:


由于我这个远远没有达到aof重写,所以没有设置那两个参数



然后打开aof文件
发现其实就是多了3行记录

这时候把红框中的三行删掉并保存退出



保险起见,执行check
./redis-check-aof --fix appendonly.aof

说明是有效的



正常关闭redis并重启redis


数据又回来了

原文地址:http://blog.51cto.com/8370646/2150167

时间: 2024-10-10 15:30:02

当redis执行flush操作后的补救措施的相关文章

svn执行update操作后出现:Error : Previous operation has not finished; run 'cleanup' if it was interrupted.

svn执行update操作后出现: Error : Previous operation has not finished; run 'cleanup' if it was interrupted. Error : Please execute the 'Cleanup' command. 提示要去执行下Cleanup命令,于是就去执行下Cleanup命令,结果出现了: 于是,解决方法只能是清空掉svn的队列.具体操作步骤如下: 1.下载sqlite3.zip 2.找到你svn项目下的.svn,

Oracle update 执行更新操作后的数据恢复

操作数据库,经常会出现误操作,昨天执行的更新操作之后发现更新错了,只能想办法数据恢复了,现在整理一下 第一步:查询执行更新操作的时间 select r.FIRST_LOAD_TIME,r.* from v$sqlarea r order by r.FIRST_LOAD_TIME desc ; 执行上面那条SQL语句,在下图的SQL_TEXT字段找到你执行更新操作的那条更新语句,找到更新操作时间 第二步:创建一张新表,把数据恢复到新创建的表里 create table t_table_recove

HRegionServer Flush操作源码分析

Flush操作是将HBase中的数据存到硬盘上的过程,具体的flush的流程图如下,本文主要简要分析flush的过程相关源码. Flush 任务提交 每当HRegion完成数据插入的操作的时候,就会进行检查此时是否需要进行一次flush,flush是将HRegion缓存的数据存储到磁盘的过程: long addedSize = doMiniBatchMutation(batchOp); long newSize = this.addAndGetGlobalMemstoreSize(addedSi

请编写"改变颜色"、"改变宽高"、"隐藏内容"、"显示内容"、"取消设置"的函数,点击相应按钮执行相应操作,点击"取消设置"按钮后,提示是否取消设置,如是执行操作,否则不做操作

<!DOCTYPE HTML><html><head><meta http-equiv="txttent-Type" txttent="text/html; charset=utf-8" /><title>javascript</title><style type="text/css">body{font-size:12px;}#txt{ height:400px

缓存数据库-redis数据类型和操作

Redis支持五种数据类型:string(字符串),hash(哈希),list(列表),set(集合)及zset(sorted set:有序集合) 一:String(字符串) string是redis最基本的类型,你可以理解成与Memcached一模一样的类型,一个key对应一个value. string类型是二进制安全的.意思是redis的string可以包含任何数据.比如jpg图片或者序列化的对象 . string类型是Redis最基本的数据类型,一个键最大能存储512MB. redis中的

Redis的PHP操作手册(自用)

String 类型操作 string是redis最基本的类型,而且string类型是二进制安全的.意思是redis的string可以包含任何数据.比如jpg图片或者序列化的对象 $redis->set('key','TK'); $redis->set('number','1'); $redis->setex('key',5,'TK'); //设置有效期为5秒的键值 $redis->psetex('key',5000,'TK'); //设置有效期为5000毫秒(同5秒)的键值 $re

Redis hash数据类型操作

Redis hash是一个string类型的field和value的映射表.一个key可对应多个field,一个field对应一个value.将一个对象存储 为hash类型,较于每个字段都存储成string类型更能节省内存.新建一个hash对象时开始是用zipmap(又称为small hash)来存储的.这个zipmap其实并不是hash table,但是zipmap相比正常的hash实现可以节省不少hash本身需要的一些元数据存储开销.尽管zipmap的添加,删除,查找都是 O(n),但是由于

Redis的PHP操作手册

String 类型操作 string是redis最基本的类型,而且string类型是二进制安全的.意思是redis的string可以包含任何数据.比如jpg图片或者序列化的对象 $redis->set('key','TK'); $redis->set('number','1'); $redis->setex('key',5,'TK'); //设置有效期为5秒的键值 $redis->psetex('key',5000,'TK'); //设置有效期为5000毫秒(同5秒)的键值 $re

Redis的PHP操作手册(转)

String 类型操作 string是redis最基本的类型,而且string类型是二进制安全的.意思是redis的string可以包含任何数据.比如jpg图片或者序列化的对象 $redis->set('key','TK'); $redis->set('number','1'); $redis->setex('key',5,'TK'); //设置有效期为5秒的键值 $redis->psetex('key',5000,'TK'); //设置有效期为5000毫秒(同5秒)的键值 $re