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

三:常见的问题
BGREWRITEAOF 后台进程重写AOF

BGSAVE       后台保存rdb快照

SAVE         保存rdb快照

LASTSAVE     上次保存时间

Slaveof master-Host port  , 把当前实例设为master的slave

Flushall  清空所有库所有键

Flushdb  清空当前库所有键

Showdown [save/nosave]

注: 如果不小心运行了flushall, 立即 shutdown nosave ,关闭服务器

然后 手工编辑aof文件, 去掉文件中的 “flushall ”相关行, 然后开启服务器,就可以导入回原来数据.

如果,flushall之后,系统恰好bgrewriteaof了,那么aof就清空了,数据丢失.

Slowlog 显示慢查询

注:多慢才叫慢?

答: 由slowlog-log-slower-than 10000 ,来指定,(单位是微秒)

服务器储存多少条慢查询的记录?

答: 由 slowlog-max-len 128 ,来做限制

Info [Replication/CPU/Memory..]

查看redis服务器的信息

Config get 配置项 

Config set 配置项 值 (特殊的选项,不允许用此命令设置,如slave-of, 需要用单独的slaveof命令来设置)

Redis运维时需要注意的参数

1: 内存

# Memory

used_memory:859192 数据结构的空间

used_memory_rss:7634944 实占空间

mem_fragmentation_ratio:8.89 前2者的比例,1.N为佳,如果此值过大,说明redis的内存的碎片化严重,可以导出再导入一次.

2: 主从复制

# Replication

role:slave

master_host:192.168.1.128

master_port:6379

master_link_status:up

3:持久化

# Persistence

rdb_changes_since_last_save:0

rdb_last_save_time:1375224063

4: fork耗时

#Status

latest_fork_usec:936  上次导出rdb快照,持久化花费微秒

注意: 如果某实例有10G内容,导出需要2分钟,

每分钟写入10000次,导致不断的rdb导出,磁盘始处于高IO状态.

5: 慢日志

config get/set slowlog-log-slower-than

CONFIG get/SET slowlog-max-len

slowlog get N 获取慢日志

运行时更改master-slave

修改一台slave(设为A)为new master

1) 命令该服务不做其他redis服务的slave

   命令: slaveof no one

2) 修改其readonly为yes

   其他的slave再指向new master A

   1) 命令该服务为new master A的slave

   命令格式 slaveof IP port
时间: 2024-10-12 14:33:00

15 redis 之 aof恢复与rdb服务器间迁移的相关文章

aof恢复与rdb服务器间迁移——redis

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> f

Redis之-aof恢复

aof恢复简讲过程: [[email protected] redis]# pkill -9 redis[[email protected] ~]# cd /var/dir[[email protected] ~]# rm -rf *清除掉现有环境备份文件:然后启动服务器进程,添加新数据 [[email protected] redis]# ./bin/redis-server ./redis.conf[[email protected] redis]# ./bin/redis-server .

Redis(四)——持久化方案(RDB和AOF使用)

一.持久化的作用 1.什么是持久化 redis的所有数据保存在内存中,对数据的更新将异步的保存到硬盘上 2.持久化的实现方式 快照:某时某刻数据的一个完成备份 -mysql的Dump -redis的RDB 写日志:任何操作记录日志,要恢复数据,只要把日志重新走一遍即可 -mysql的 Binlog -Hhase的 HLog -Redis的 AOF 二.RDB 1.什么是RDB 2.触发机制-主要三种方式 第一种: save(同步) 1 客户端输入save命令---->redis服务端---->

redis 持久化 AOF RDB

Redis的AOF持久化策略是将发送到redis服务端的每一条命令都记录下来,并且保存到硬盘中的AOF文件中,类似打日志文件,来一条命令就记录一条. AOF设置 AOF文件的位置和RDB文件的位置相同,都是通过dir参数设置,默认的文件名是appendonly.aof,可以通过appendfilename参数来修改. AOF测试 当客户端向服务器发送一些redis命令时,Redis会将所执行的命令记录到aof文件中,如下所示: 当redis服务器重启后,会将执行该aof文件,达到数据恢复的目的.

redis配置文件基本解析以及RDB持久化与AOF持久化

redis.conf 我们安装成功之后就会有这个配置文件,但是我们一般都不推荐直接使用出厂的配置文件,而是单独拷贝一份使用,以避免我们因为配置错误而带来不必要的麻烦. 如图我单独拷贝了一份在根目录下面的文件夹: redis单元: Tcp-backlog: 设置tcp的backlog,backlog其实是一个连接队列,backlog队列总和=未完成三次握手队列+已经完成三次握手队列. 在这里三次握手队列我参考另一篇博文:https://blog.csdn.net/ityouknow/article

Redis两种持久化方式(RDB&AOF)

爬虫和转载请注明原文地址;博客园蜗牛:http://www.cnblogs.com/tdws/p/5754706.html Redis所需内存 超过可用内存怎么办 Redis修改数据多线程并发—Redis并发锁 windows下redis基础操作与主从复制 从而 数据备份和读写分离 Redis两种持久化方式(RDB&AOF) Redis的持久化过程中并不需要我们开发人员过多的参与,我们要做的是什么呢?除了深入了解RDB和AOF的作用原理,剩下的就是根据实际情况来制定合适的策略了,再复杂一点,也就

Redis AOF持久化和RDB持久化区别

一.redis持久化----两种方式 1.redis提供了两种持久化的方式,分别是RDB(Redis DataBase)和AOF(Append Only File). 2.RDB,简而言之,就是在不同的时间点,将redis存储的数据生成快照并存储到磁盘等介质上: 3.AOF,则是换了一个角度来实现持久化,那就是将redis执行过的所有写指令记录下来,在下次redis重新启动时,只要把这些写指令从前到后再重复执行一遍,就可以实现数据恢复了. 4.其实RDB和AOF两种方式也可以同时使用,在这种情况

Redis持久化——AOF(二)

核心知识点: 1.AOF:以独立日志的方式记录写命令,重启时再执行命令.与RDB不同的是解决数据持久化的实时性,可以记录所有写操作. 2.AOF工作流程:写入命令.文件同步.文件重写.文件加载. 3.命令写入 a.将命令以文本协议格式保存在缓存中. b.为什么使用文本协议格式?兼容性.避免二次开销.可读性. c.为什么写入到缓存?这样不会受制于磁盘的IO性能 4.文件同步:从内存同步到文件中,有三种机制,使用的系统命令是write或fsync. (1).write会触发写延迟,依赖系统的调度机制

Redis之AOF重写及其实现原理

Reference: https://blog.csdn.net/hezhiqiang1314/article/details/69396887 AOF 重写AOF 持久化是通过保存被执行的写命令来记录数据库状态的,所以AOF文件的大小随着时间的流逝一定会越来越大:影响包括但不限于:对于Redis服务器,计算机的存储压力:AOF还原出数据库状态的时间增加:为了解决AOF文件体积膨胀的问题,Redis提供了AOF重写功能:Redis服务器可以创建一个新的AOF文件来替代现有的AOF文件,新旧两个文