zoukankan      html  css  js  c++  java
  • redis:aof恢复与rdb服务器间迁移

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

    1.1. Aof恢复:

    如果不小心执行了flushdbflushall了怎么办?

    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    #flushdbflushall危险命令

    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"

  • 相关阅读:
    利用递归分割(Split)字符串
    SQL Server2012 T-SQL基础教程--读书笔记(1-4章)
    kindeditor编辑器的使用
    echarts绘制四川地图
    Windows下搭建PHP开发环境(Apache+PHP+MySQL)+调试工具Xdebug的配置
    给搜索关键字添加高亮,加以颜色区分
    SQL 生成6位随机数并MD5加密输出
    微信小程序登录 .net 后端实现
    钉钉小程序http post 请求
    浅谈Web Api配合SignalR的跨域支持
  • 原文地址:https://www.cnblogs.com/reyinever/p/10041339.html
Copyright © 2011-2022 走看看