标签:
在Primary库上安装数据库软件,并建监听和实例,在Standby库上安装数据库软件,并建监听,但不建实例。
|
Primary库 |
Standby库 |
操作系统 |
CentOS release 6.4 64位 |
CentOS release 6.4 64位 |
IP/主机名 |
192.183.3.17/nn |
192.183.3.145/kk |
数据库软件版本 |
oracle 11.2.0.1.0 |
oracle 11.2.0.1.0 |
ORACLE_HOME |
/home/oracle/product |
/home/oracle/product |
ORACLE_SID |
orcl |
orcl |
db_unique_name |
primary |
standby |
Net Service Name |
ser_pri |
ser_std |
SQL>alter database force logging;
查看归档模式:
SQL>archive log list;设置归档模式:
同一个Dataguard中所有数据库必须拥有独立的密码文件,并且保证sys用户拥有相同密码来保证redo的传输。默认Oracle自建的密码文件保存在$ORACLE_HOME/dbs/orapw$ORACLE_SID中,可以直接copy到standby库对应目录中(本案例采用该方法),如果没有该文件也可以通过如下方式重建。
[oracle@nn~]$ orapwd file='$ORACLE_HOME/dbs/orapw$ORACLE_SID' password=123456 force=y ignorecase=y
SQL>alter database add standby logfile group 4('/home/oracle/oradata/orcl/stdby01.log')size 50M; SQL>alter database add standby logfile group 5('/home/oracle/oradata/orcl/stdby02.log')size 50M; SQL>alter database add standby logfile group 6('/home/oracle/oradata/orcl/std03.log')size 50M; SQL>select group#,member from v$logfile order by 1;
SQL> alter database create standby controlfile as 'home/oracle/oradata/orcl/standby01.ctl'; [oracle@nn ~]$ cp /home/oracle/oradata/orcl/standby01.ctl /home/oracle/flash_recovery_area/orcl/ standby02.ctl
SQL>create pfile from spfile; SQL>shutdown immediate;2.42 修改pfile
[oracle@nn~]$vi $ORACLE_HOME/dbs/initorcl.ora
SQL>startup pfile='/home/oracle/product/dbs/initorcl.ora' SQL>create spfile from pfile='/home/oracle/product/dbs/initorcl.ora';2.5 修改监听配置文件
监听文件目录$ORACLE_HOME/network/admin,配置完成后重启监听。
[oracle@nn admin]$vi listener.ora
TNS文件目录$ORACLE_HOME/network/admin。
[oracle@nn admin]$vi tnsnames.ora
[oracle@nn backupset]$rman target/ RMAN>sql ''alter system archive log current''; RMAN>backup database include current controlfile for standby plus archivelog;
备份完成后会在闪回区生产备份文件。
包括dump文件目录,闪回区,数据文件目录,可以通过show parameter dest命令查看
[oracle@kk~]$mkdir -p /home/oracle/admin/orcl/adump [oracle@kk~]$mkdir -p /home/oracle/admin/orcl/dpdump [oracle@kk~]$mkdir -p /home/oracle/admin/orcl/pfile [oracle@kk~]$mkdir -p /home/oracle/diag/rdbms [oracle@kk~]$mkdir -p /home/oracle/flash_recovery_area [oracle@kk~]$mkdir -p /home/oracle/oradata/orcl
[oracle@nn ORCL]$scp -r /home/oracle/flash_recovery_area/ORCL/backupset 192.183.3.145:/home/oracle/flash_recovery_area/ORCL/
[oracle@nn ORCL]$scp -r /home/oracle/product/dbs 192.183.3.145:/home/oracle/product/dbs
[oracle@nn~]$scp -r /home/oracle/product/network/admin/*.ora 192.183.3.145:/home/oracle/product/network/admin/
[oracle@kk ~]$ vi $ORACLE_HOME/dbs/initorcl.ora
修改如下内容:
SQL> STARTUP nomount pfile='/home/oracle/product/dbs/initorcl.ora'; SQL> create spfile from pfile='/home/oracle/product/dbs/initorcl.ora';
[oracle@kk~]$rman target sys/123456@ser_pri auxiliary/ RMAN> duplicate target database for standby nofilenamecheck dorecover;
或者执行如下的脚本也可以进行standby库的恢复。
Duplicate 完成后standby库已经处于正常的mount状态,应打开recover。
SQL> alter database recover managed standby database disconnect from session;
查看数据库角色、角色切换、保护模式
SQL> select database_role,switchover_status,protection_mode,protection_level from v$database;
归档日志Current log sequence相同,说明配置成功,如下:
ORACLE 11G 之DATAGUARD搭建物理standby
标签:
原文地址:http://blog.csdn.net/u010257584/article/details/51140030