redis数据恢复原理讲解 redis备份和恢复原理( 二 )


Redis允许同时开启AOF和RDB,既保证了数据安全又使得进行备份等操作十分容易 。此时重新启动Redis后Redis会使用AOF文件来恢复数据,因为AOF方式的持久化可能丢失的数据更少,可以在redis.conf中通过appendonly参数开启Redis AOF全持久化模式:
appendonlyyesappendfilename appendonly.aofauto-aof-rewrite-percentage 100auto-aof-rewrite-min-size 64mbappendfsync always#appendfsync everysec#appendfsync noRedis AOF持久化参数配置详解:
appendonlyyes#开启AOF持久化功能;appendfilename appendonly.aof#AOF持久化保存文件名;appendfsync always#每次执行写入都会执行同步,最安全也最慢;#appendfsync everysec#每秒执行一次同步操作;#appendfsync no#不主动进行同步操作,而是完全交由操作系统来做,每30秒一次,最快也最不安全;auto-aof-rewrite-percentage100#当AOF文件大小超过上一次重写时的AOF文件大小的百分之多少时会再次进行重写,如果之前没有重写过,则以启动时的AOF文件大小为依据;auto-aof-rewrite-min-size64mb#允许重写的最小AOF文件大小配置写入AOF文件后,要求系统刷新硬盘缓存的机制 。3 . Redis主从复制备份通过持久化功能,Redis保证了即使在服务器重启的情况下也不会损失(或少量损失)数据 。但是由于数据是存储在一台服务器上的,如果这台服务器的硬盘出现故障,也会导致数据丢失 。
为了避免单点故障,我们希望将数据库复制多个副本以部署在不同的服务器上,即使只有一台服务器出现故障其他服务器依然可以继续提供服务,这就要求当一台服务器上的数据库更新后,可以自动将更新的数据同步到其他服务器上,Redis提供了复制(replication)功能可以自动实现同步的过程 。通过配置文件在Redis从数据库中配置文件中加入slaveof master-ip master-port即可,主数据库无需配置 。
Redis主从复制优点及应用场景,WEB应用程序可以基于主从同步实现读写分离以提高服务器的负载能力 。在常见的场景中,读的频率一般比较大,当单机Redis无法应付大量的读请求时,可以通过复制功能建立多个从数据库,主数据库只进行写操作,而从数据库负责读操作,还可以基于LVS+keepalived+Redis对Redis实现均和高可用 。
从数据库持久化持久化通常相对比较耗时,为了提高性能,可以通过复制功能建立一个(或若干个)从数据库,并在从数据库中启用持久化,同时在主数据库禁用持久化 。
当从数据库崩溃时重启后主数据库会自动将数据同步过来,所以无需担心数据丢失 。而当主数据库崩溃时,需要在从数据库中使用SLAVEOF NO ONE命令将从数据库提升成主数据库继续服务,并在原来的主数据库启动后使用SLAVE OF命令将其设置成新的主数据库的从数据库,即可将数据同步回来 。


以上关于本文的内容,仅作参考!温馨提示:如遇健康、疾病相关的问题,请您及时就医或请专业人士给予相关指导!

「四川龙网」www.sichuanlong.com小编还为您精选了以下内容,希望对您有所帮助: