1. aof恢复与rdb服务器间迁移:

1.1. Aof恢复:

如果不小心执行了flushdb或flushall了怎么办?

(1)立马执行命令:shutdown nosave

关闭服务器,为了防止其他人正在操作服务器触发重写aof,如果aof重写了,彻底没救了

(2)修改aof文件,删除最后一行的命令:flushdb (或flushall)

(3)再次启动服务器,查看数据恢复

操作流程如下:

127.0.0.1:6379> set hello word

OK

127.0.0.1:6379> flushdb    #flushdb、flushall危险命令

OK

127.0.0.1:6379> get hello

(nil)

127.0.0.1:6379> shutdown nosave   #关闭服务端

[root@192 rdb]# vi appendonly6379.aof    #修改aof文件

删除最后一行的:flushdb

127.0.0.1:6379> get hello    #查看恢复的数据

"word"

1.2. Rdb迁移:(导入rdb文件)

注:一台服务器的rdb文件导入到另一台服务器

(1)关闭redis服务:

[root@192 redis]# pkill -9 redis

(2)拷贝rdb文件

[root@192 redis]# cp redis.conf redis6383.conf   #拷贝配置文件

(3)修改redis6383的配置文件,修改内容如下:

#appendonly yes    #关闭aof

#port 6379

port 6383

save 900 1    #打开rdb

save 300 10

save 60 10000

#dir ./

dir /var/rdb        #

#dbfilename dump.rdb

dbfilename dump6383.rdb

(4)启动redis服务端、客户端

#启动redis服务

[root@192 redis]# ./bin/redis-server ./redis6383.conf

#启动客户端

[root@192 redis]# ./bin/redis-cli -p 6383

127.0.0.1:6383> keys *   #没有数据

(empty list or set)

(5)关闭redis服务

(6)产生最新的rdb文件

启动redis-6379的服务后,客户端执行命令:bgsave

(7)拷贝rdb文件:

[root@192 rdb]# cp dump6379.rdb dump6383.rdb

(8)启动redis服务端、客户端,查看数据:

[root@192 redis]# ./bin/redis-server ./redis6383.conf

[root@192 redis]# ./bin/redis-cli -p 6383

127.0.0.1:6383> keys *

1) "a"

2) "xx"

redis:aof恢复与rdb服务器间迁移的更多相关文章

  1. 15 redis 之 aof恢复与rdb服务器间迁移

    三:常见的问题 BGREWRITEAOF 后台进程重写AOF BGSAVE 后台保存rdb快照 SAVE 保存rdb快照 LASTSAVE 上次保存时间 Slaveof master-Host por ...

  2. 使用AOF持久化文件实现还原Redis数据库并得到RDB持久化文件

    目录 1 编写本文的初衷 2 具体实施 2.1 Redis持久化概念简介 2.2 获取指定Redis的AOF持久化文件 2.3 把Redis的持久化AOF文件转换为RDB文件 1 编写本文的初衷 因为 ...

  3. redis持久化的方式RDB 和 AOF

    redis持久化的方式RDB 和 AOF 一.对Redis持久化的探讨与理解 目前Redis持久化的方式有两种: RDB 和 AOF 首先,我们应该明确持久化的数据有什么用,答案是用于重启后的数据恢复 ...

  4. Redis系列(三):Redis的持久化机制(RDB、AOF)

    本篇博客是Redis系列的第3篇,主要讲解下Redis的2种持久化机制:RDB和AOF. 本系列的前2篇可以点击以下链接查看: Redis系列(一):Redis简介及环境安装. Redis系列(二): ...

  5. Redis之数据持久化RDB与AOF

    Redis之数据持久化RDB与AOF https://www.cnblogs.com/zackku/p/10087701.html 大家都知道,Redis之所以性能好,读写快,是因为Redis是一个内 ...

  6. 进阶的Redis之数据持久化RDB与AOF

    大家都知道,Redis之所以性能好,读写快,是因为Redis是一个内存数据库,它的操作都几乎基于内存.但是内存型数据库有一个很大的弊端,就是当数据库进程崩溃或系统重启的时候,如果内存数据不保存的话,里 ...

  7. Redis:持久化之RDB和AOF

    Redis:持久化之RDB和AOF RDB(Redis DataBase) 在指定的时间间隔内将内存中的数据集快照写入硬盘 也就是行话讲的Snapshot快照,它恢复时是将快照文件直接读到内存里. R ...

  8. redis学习之——持久化RDB 和AOF

    RDB: 在指定的时间间隔内将内存中的数据集快照写入磁盘, 也就是行话讲的Snapshot快照,它恢复时是将快照文件直接读到内存里.rdb 保存的是dump.rdb文件 RDB工作原理: Redis会 ...

  9. Redis数据持久化(RDB、AOF)

    1. 简介   Redis作为内存型数据库,数据都保存在内存中,如果重启或意外宕机后,数据会全部丢失.因此,Redis提供了完善的持久化机制,将内存中的数据持久化到磁盘上,避免了完整性和安全性的问题, ...

随机推荐

  1. Caused by: java.net.ConnectException: Connection refused: master/192.168.3.129:7077

    1:启动Spark Shell,spark-shell是Spark自带的交互式Shell程序,方便用户进行交互式编程,用户可以在该命令行下用scala编写spark程序. 启动Spark Shell, ...

  2. linux 出错 “INFO: task xxxxxx: 634 blocked for more than 120 seconds.”的3种解决方案

    https://blog.csdn.net/electrocrazy/article/details/79377214

  3. Http系列笔记

    万能的HttpClient (Framework与NetCore 都支持) string url = "http://localhost:5000/api/values"; //p ...

  4. EF连接MySql数据库

    Windows要想EF连接MySql,首先要安装两个应用程序 mysql-connector-net-6.8.8.msimysql-for-visualstudio-1.2.7.msi 项目还需要两个 ...

  5. 【AtCoder】AGC014

    AGC014 链接 A - Cookie Exchanges 发现两个数之间的差会逐渐缩小,所以只要不是三个数都相同,那么log次左右一定会得到答案 #include <bits/stdc++. ...

  6. 【Android】Android 设置Activity窗体 不显示标题和全屏显示

    [一]Android 设置Activity窗体 不显示标题 android:theme="@android:style/Theme.NoTitleBar" <activity ...

  7. 根据关键字找进程id

    #!/usr/bin/pythonimport subprocessimport sysimport loggingimport os gameproc = "jd_5.py" d ...

  8. Jenkins.war包构建Jenkins平台

    [root@jenkins ~]# wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo [roo ...

  9. BZOJ5291/洛谷P4458/LOJ#2512 [Bjoi2018]链上二次求和 线段树

    原文链接http://www.cnblogs.com/zhouzhendong/p/9031130.html 题目传送门 - LOJ#2512 题目传送门 - 洛谷P4458 题目传送门 - BZOJ ...

  10. HDFS-HA高可用 | Yarn-HA

    HDFS-HA HA(High Available),即高可用(7*24小时不中断服务) 单点故障即有一台机器挂了导致全部都挂了:HA就是解决单点故障,就是针对NameNode: 主Active:读写 ...