本文内容来自YashanDB官网,原文内容请见 https://www.yashandb.com/newsinfo/7396990.html?templateId=171...

所谓沙箱备库,是和主库断开网络连接的备库或者是从备份影像恢复出来的数据库,可以手工回放主库产生的归档日志,沙箱备库可以提供只读服务,必要时可以切换成主库角色,一旦切换成主库模式且发生写入操作,将不能变回原主库的沙箱备库。

配置沙箱备库

以从备份影像恢复方式构建沙箱备库为例,假定沙箱备机已经安装并创建初始数据库,集群名称为yashandb,主库备份影像所在目录为/backup/full,操作用户为组YASDBA成员。

1、更改配置参数:SANDBOX\_STANDBY

yasql / as sysdba -c "alter system set SANDBOX\_STANDBY=true scope=spfile"

2、nomout 方式重启实例,删除初始创建的数据库

yasboot cluster restart -m nomount -c yashandb

yasql / as sysdba -c "drop database including archivelog"

3、恢复数据库

yasql / as sysdba -c "restore database from '/backup/full'"

4、将恢复出来的数据库转换成standby角色,并且open

yasql / as sysdba -c "alter database convert to physical standby"

yasql / as sysdba -c "alter database open"

5、检查数据库角色及打开模式,结果应该为STANDBY,READ\_ONLY

yasql / as sysdba -c "select database\_role, open\_mode from v\$database"

注册归档日志

首先需要将主库产生的归档日志传到沙箱备机所在服务器,以arch\_0\_8.ARC为例

yasql / as sysdba -c "alter database register archivelog 'arch\_0\_8.ARC'"

回放归档日志

下面命令启动后台回放任务并退出

yasql / as sysdba -c "alter database recover managed standby database disconnect from session"

之后新注册的归档日志回自动被回放,如停止回放可执行下面命令

yasql / as sysdba -c "alter database recover managed standby database cancel"

查看回放状况

yasql / as sysdba -c "select * from v\$recovery\_status"

将沙箱备库强制升成主库

需要在回放任务启动的情况下,发出下面命令

yasql / as sysdba -c "alter database failover"

注意

沙箱备库只能回放归档日志,主库的活动日志中的交易不能实时同步


YashanDB
1 声望0 粉丝

崖山数据库系统YashanDB是深圳计算科学研究院自主设计研发的新型数据库管理系统,融入原创的有界计算、近似计算、并行可扩展和跨模融合计算理论,可满足金融、政企、能源等关键行业对高性能、高并发及高安全性的...