Heim  >  Artikel  >  Datenbank  >  我的Oracle Dataguard 和 RMAN duplicate 配置总结

我的Oracle Dataguard 和 RMAN duplicate 配置总结

WBOY
WBOYOriginal
2016-06-07 15:24:231813Durchsuche

网上dataguard和duplicate的文档很多,我只记一些要点,不是很全面 场景是这样的,原来有一台主机,现在要新加一台备机,然后做dataguard,要求实现拔网线切换不丢数,所以要启用最大保护模式 操作系统都是windows2003,db版本是ORACLE 10G 所以我的整体的步

网上dataguard和duplicate的文档很多,我只记一些要点,不是很全面

场景是这样的,原来有一台主机,现在要新加一台备机,然后做dataguard,要求实现拔网线切换不丢数,所以要启用最大保护模式

操作系统都是windows2003,db版本是ORACLE 10G

所以我的整体的步骤是

主库打开日志归档后,创建数据备份,然后把备份恢复到新建的备机上,然后在主备机之间创建dataguard

以前看一位老DBA做法,好像可以直接把数据文件和控制文件复制到新机器上,改改名字,就能完成复制。后来搜了一下,没找到具体做法。

0,备机装好数据库,然后用netca或者netmgr创建好服务名,在两台机器之间互联互通。

主机叫PRIMARY205

备机叫SECONDARY206

1,先在主机上

打开log
ALTER DATABASE FORCE LOGGING;
select force_logging from v$database;

打开归档
shutdown immediate;
startup mount
alter database archivelog;
alter database open
archive log list


在主库创建standby redo log 大小与主库联机日志大小一样,组数至少比primary中的log file数量大1
 alter database add standby logfile group 4 ('D:\oracle\product\10.2.0\oradata\orcl\std_redo4.log') size 50M;

 alter database add standby logfile group 5 ('D:\oracle\product\10.2.0\oradata\orcl\std_redo5.log') size 50M;

 alter database add standby logfile group 6 ('D:\oracle\product\10.2.0\oradata\orcl\std_redo6.log') size 50M;

 alter database add standby logfile group 7 ('D:\oracle\product\10.2.0\oradata\orcl\std_redo7.log') size 50M;

有人说备份恢复到备机上时,这些文件会在备机上自动创建,我试验的结果是不会。

2,改配置。

有的人是先转成文本配置pfile然后改,改完再转spfile。我嫌麻烦,直接改

db_unique_name默认安装都是orcl,所以要改备机名字为orclbak

 alter system set db_unique_name='orclbak' SCOPE=SPFILE;

如果是最大性能模式,则配置
 alter system SET LOG_ARCHIVE_DEST_2='SERVICE=primary205 ASYNC VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=orcl'

但我需要的是最大保护模式 那么

alter system set log_archive_dest_2='SERVICE=primary205 VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=orcl LGWR SYNC AFFIRM REOPEN=10'

ALTER SYSTEM SET LOG_ARCHIVE_DEST_STATE_2=ENABLE;
alter system SET FAL_SERVER='orcl' 

ALTER SYSTEM SET LOG_ARCHIVE_CONFIG='DG_CONFIG=(orcl,orclbak)';

ALTER SYSTEM SET LOG_ARCHIVE_FORMAT='%t_%s_%r.arc' SCOPE=SPFILE;
ALTER SYSTEM SET LOG_ARCHIVE_MAX_PROCESSES=30;
ALTER SYSTEM SET REMOTE_LOGIN_PASSWORDFILE=EXCLUSIVE SCOPE=SPFILE;

以上配置可以对照网上那些修改spfile的文档相应修改。

3,备份并恢复到备机

在主机上打开RMAN创建备份 

rman target /

backup database plus archivelog;



然后在备机上rman两个数据库

rman target sys/sys@primary auxiliary sys/sys@secondary

DUPLICATE TARGET DATABASE FOR STANDBY NOFILENAMECHECK;
  FOR STANDBY
  FROM ACTIVE DATABASE
  DORECOVER;

如果复制过程中报

RMAN-06023: 没有找到数据文件1的副本来恢复

可能需要把备份文件复制到备机上,参考 点击打开链接


然后在备库上做相反的配置。

不断检查,排错

4,其他

备机db_name 和主机一样,db_unique_name改变之后,应用不受影响,但有人反映plsql连不上,非得用db_unique_name;

主备切换参考网上文章http://www.verydemo.com/demo_c283_i1007.html

http://blog.csdn.net/w63667329/article/details/7900270

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn