快速搭建Data Guard之物理standby

php中文网
发布: 2016-06-07 17:35:33
原创
1087人浏览过

Data Gurad的作用就不多说了,主在这说下物理standby的搭建步骤。方式一:用rman的方式生成standby. (用rman的duplice方式直接创建

data gurad的作用就不多说了,主在这说下物理standby的搭建步骤。
大致有这三种方式创建standby库
方式一:用rman的方式生成standby. (用rman的duplice方式直接创建,无须先备份)
方式二:用rman的restore方式生成。(先用rman全备份主库后,再用rman通过restore的方式创建)
方式三:用cp的方式生成 (关闭主库后,复制控件文件,密码文件,数据文件到备库所在位置)
我主要在这用duplice方式,优点无须多说,假设你的数据库上t,你会选哪种方法?

Oracle测试版本为11g;
1. 设置好主备库的环境变量,及创建好相关目录
主库: 

su - oracle
  --归档日志存放目录
  --例子放在/u01/app/oracle/archivelog/xcldb 下
  mkdir -p $ORACLE_BASE/archivelog/$ORACLE_SID

环境变量注意下面两个参数:
  ORACLE_SID=xcldb
  ORACLE_UNQNAME=xcldb

备库:

 su - oracle
  --生成相关的目录,还要注意下权限, 另11g就这几个,10G还有几个目录
  mkdir -p $ORACLE_BASE/admin/$ORACLE_SID/{adump,bdump,cdump,dpdump,udump,pfile}
  --数据库所在目录
  mkdir -p $ORACLE_BASE/oradata/$ORACLE_SID
  --闪回
  mkdir -p $ORACLE_BASE/flash_recovery_area/$ORACLE_SID
  --归档日志存放目录
  mkdir -p $ORACLE_BASE/archivelog/$ORACLE_SID

环境变量注意下面两个参数:
  ORACLE_SID=xcldbdg
  ORACLE_UNQNAME=xcldbdg
 
2. 设置数据库为归档模式

  --查看当前模式
  archive log list
  --设定归档日志的路径,可以生成多份一样的日志,保存多个位置,以防丢失
  --如果没设置,默认会设到$ORACLE_HOME/dbs下。
  alter system set log_archive_dest_1='location=/u01/app/oracle/archivelog/xcldb';
  shutdown immediate
  startup mount
  alter database archivelog;
  archive log list;

3.设置force logging 强制日志模式 

 alter database force logging
  select force_logging from v$database;
  --取消此模式:alter database no force logging;
  --手工切换日志,好生成归档日志
  alter system switch logfile --执行个三次
  select name from v$archived_log;
  --查看已有的日志文件
  select * from v$logfile;

4.创建Standby redo log
  创建个数建议公式:
  Standby redo log 组数公式>=(每个instance日志组个数+1)*instance个数
  (maximum number of logfiles for each thread + 1) * maximum number of threads   

 --找到最大的group#,因为group#不能重复
  select max(group#) from v$log;
  --可用这两条查询看到组号及文件大小, 11g默认是52428800
  SELECT GROUP#, BYTES FROM V$LOG;
  SELECT GROUP#, BYTES FROM V$STANDBY_LOG;
 
  --注意下大小一致,我是测试,没管size
  alter database add standby logfile thread 1 group 11 '/u01/app/oracle/oradata/xcldb/redo11.log' size 50m;
  alter database add standby logfile thread 1 group 12 '/u01/app/oracle/oradata/xcldb/redo12.log' size 50m;
  alter database add standby logfile thread 1 group 13 '/u01/app/oracle/oradata/xcldb/redo13.log' size 50m;
  alter database add standby logfile thread 1 group 14 '/u01/app/oracle/oradata/xcldb/redo14.log' size 50m;

NameGPT
NameGPT

免费的名称生成器,AI驱动在线生成企业名称及Logo

NameGPT 68
查看详情 NameGPT

注意:
    在add standby logfile 时,如果是单实例数据库thread 1可以不加,但如果是RAC数据库,,
  则要分别为每个实例各增加相关的Standby log; 
    另外如果是用OMF管理的可用下面的命令创建:
    alter database add standby logfile thread 1 group 11 size 500m;
 
  验证下成果:
  col member format a50
  select group#, type, member from v$logfile where type = 'STANDBY';

 

相关参考:

Oracle Data Guard 重要配置参数

基于同一主机配置 Oracle 11g Data Guard

探索Oracle之11g DataGuard

Oracle Data Guard (RAC+DG) 归档删除策略及脚本

Oracle Data Guard 的角色转换

Oracle Data Guard的日志FAL gap问题

Oracle 11g Data Guard Error 16143 Heartbeat failed to connect to standby 处理方法

linux

最佳 Windows 性能的顶级免费优化软件
最佳 Windows 性能的顶级免费优化软件

每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号