1.1 启用force logging模式
在创建成功之后用下面的语句,使主库启用force logging模式
SQL>ALTER DATABASE FORCE LOGGING;
这条语句需要很长时间完成,因为它需要等待那些未记录日志的直接路径写I/O完成
1.2 创建密码文件
如果没有密码文件,则创建它。每个数据库在DataGuard架构中必须用相同的密码文件,并且SYS用户的密码必须相同以保证重做数据在每个系统传输成功。
1.3 配置备用重做日志
最大保护和最大可用模式都需要备用重做日志,并且所有数据库建议使用LGWR ASYNC传输模式。DataGuard从归档重做日志,不如从备用重做日志 与应用重做数据多。
在创建备用数据库时,应该规划备用重做日志并创建好重做日志组和日志成员。为了提高可用性,参考在线重做日志的复用方法,复用备用重做日志。
请执行下面步骤配置备用重做日志。
第一步 确保主库和备库的日志文件大小是一致的。
当前备用重做日志的大小必须和当前主库在线重做日志大小完全匹配。
例如,如果主库使用2个在线重做日志组的日志文件大小为200k,那么备用重做日志组的日志文件大小也是200k
第二步 确定合适的重做日志组数
至少地,配置重做日志组比当前主库的在线重做日志组多一组。但是,建议备用重做日志组数不要比线程数高。用下面公式确定适合的在线重做日志组是
(每个线程的日志文件的最大数目+1)* 最大线程数
使用这个公式近可能的降低由于在备库备用重做日志不能分配导致主库实例的LGWR进程被锁死。例如,如果主库每个线程有2个日志文件,有2个线程那么备库需要备用重做日志6组
第三步 验证相关的数据库参数和设置
检查用sql创建数据库时MAXLOGFILES 和 MAXLOGMEMERS的值,不会限制你增加备用重做日志组和成员。只能通过重新创建主库或控制文件,覆盖MAXLOGFILES 和 MAXLOGMEMERS限制制定的值
第四步 创建备用重做日志组
你必须有ALTER DATABASE 系统权限,才能创建新的备用重做日志组和成员。
备库开始用新创建的备用重做数据,在下一时刻,主库会发生日志切换。
例子3-1和例子3-2显示怎样用ALTER DATABASE创建一个新备用重做日志组,变化之处在于ADD STANDBY OGFILE GROUP.
例子3-1 给指定线程添加备用重做日志组
执行下面命令,在物理备库,添加一个新的备用重做日志组,并制定到THREAD 5:
SQL>ALTER DATABASE ADD STANDBY LOGFILE THREAD 5
('','/oracle/dbs') SIZE 100M;
THREAD 仅仅在指定主库添加一组或多组备用重做日志是需要的,如果你不包括THREAD项,并且在RAC集群,DataGuard将在运行时准备各种rac实例自动指定重做日志组到线程
例子-3-2 添加备用重做日志组成员
你在使用GROUP时可以指定数字:
SQL>ALTER DATABASE ADD STANDBY LOGFILE GROUP 10
('/oracle/dbs/logic.rdo','/oracle/dbs/log2c.rdo') SIZE 500M;
用组号可以很容易管理重做日志文件。可是,这组号在1到MAXLOGFILES之间。
不能跳过组号(就是说,不要10,20,30等等)或者你在备用数据库控制文件中将用额外空间
第五步 验证备用重做日志组是否创建成功
验证备用重做日志是被创建并且运行正常,在主库上调用日志切换,在备库查询任一视图V$STANDBY_LOG 视图和V$LOGFILE视图,查看同步情况
1.4 设置主库初始化参数
1.5 启用归档模式
2 创建物理备库步骤说明
2.1 创建主库数据文件的副本
2.2 创建备库控制文件
2.3 准备备库初始化参数
2.4 从主库复制文件到备库
2.5 设置备库需要的环境
第一步 创建基于Windows的服务
第二步 创建密码文件
第三步 配置主库和备库监听
第四步 创建网络服务名
第五步 创建备库服务参数文件
2.6 启动物理备库
第一步 启动物理备库
第二步 启动重做应用
第三步 测试归档是否传到备库
2.7 验证物理备库是否正常运行
第一步 确认已经存在的归档重做日志
第二步 强制切换当前在线重做日志
第三步 验证新的重做数据在备库上归档
第四步 验证新归档日志已经被应用
3 创建后步骤