码迷,mamicode.com
首页 > 数据库 > 详细

ORACLE 11G 之DATAGUARD搭建物理standby

时间:2016-04-13 13:23:20      阅读:313      评论:0      收藏:0      [点我收藏+]

标签:

安装环境

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



2 Primary库配置

2.1 设置数据库强制归档与归档模式

  •  将主库设置为FORCE LOGGING模式

      SQL>alter database force logging;

  • 开启归档模式

        查看归档模式:

     SQL>archive log list;
        设置归档模式:

技术分享

2.2重建密码文件

            同一个Dataguard中所有数据库必须拥有独立的密码文件,并且保证sys用户拥有相同密码来保证redo的传输。默认Oracle自建的密码文件保存在$ORACLE_HOME/dbs/orapw$ORACLE_SID中,可以直接copystandby库对应目录中(本案例采用该方法),如果没有该文件也可以通过如下方式重建。

[oracle@nn~]$ orapwd file='$ORACLE_HOME/dbs/orapw$ORACLE_SID' password=123456 force=y ignorecase=y

2.3 STANDBY日志文件与控制文件创建

  • 添加standby日志文件

   

     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;

技术分享

技术分享

  •  创建standby控制文件

       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


2.4 修改primarypfile

2.4.1 生成pfile

       SQL>create pfile from spfile;

       SQL>shutdown immediate;
2.42 修改pfile

     [oracle@nn~]$vi $ORACLE_HOME/dbs/initorcl.ora

在最后添加如下红色框内内容:

技术分享

2.4.3 生成spfile

       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

技术分享

2.6修改TNS配置文件

         TNS文件目录$ORACLE_HOME/network/admin

     [oracle@nn admin]$vi tnsnames.ora
技术分享


2.7 备份数据库

    [oracle@nn backupset]$rman target/

     RMAN>sql ''alter system archive log current'';

     RMAN>backup database include current controlfile for standby plus archivelog;

技术分享

         备份完成后会在闪回区生产备份文件。

3 standby库配置

3.1 建立相应的文件目录

         包括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


3.2 从primary库服务器上拷贝文件

3.2.1 拷贝闪回区的备份内容

      [oracle@nn ORCL]$scp -r /home/oracle/flash_recovery_area/ORCL/backupset 192.183.3.145:/home/oracle/flash_recovery_area/ORCL/

技术分享

3.2.2 拷贝参数文件与密码文件

     [oracle@nn ORCL]$scp -r /home/oracle/product/dbs 192.183.3.145:/home/oracle/product/dbs

技术分享

3.2.3 拷贝监听文件

     [oracle@nn~]$scp -r /home/oracle/product/network/admin/*.ora 192.183.3.145:/home/oracle/product/network/admin/

3.3 修改监听配置文件

技术分享

3.4TNS配置文件

技术分享

3.5 修改参数文件

     [oracle@kk ~]$ vi $ORACLE_HOME/dbs/initorcl.ora

修改如下内容:

技术分享

3.6 启动standbynomount状态

       SQL> STARTUP nomount pfile='/home/oracle/product/dbs/initorcl.ora';

       SQL> create spfile from pfile='/home/oracle/product/dbs/initorcl.ora';

3.7恢复数据库

     [oracle@kk~]$rman target sys/123456@ser_pri auxiliary/

     RMAN> duplicate target database for standby nofilenamecheck dorecover;

         或者执行如下的脚本也可以进行standby库的恢复。

技术分享

3.8启动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;

技术分享

3.9 验证配置是否成功

       归档日志Current log sequence相同,说明配置成功,如下:

  •  Primary库

技术分享

  •  Standby库

技术分享



ORACLE 11G 之DATAGUARD搭建物理standby

标签:

原文地址:http://blog.csdn.net/u010257584/article/details/51140030

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!