dataguard实施文档.docx

上传人:b****5 文档编号:4360744 上传时间:2022-11-30 格式:DOCX 页数:9 大小:49.45KB
下载 相关 举报
dataguard实施文档.docx_第1页
第1页 / 共9页
dataguard实施文档.docx_第2页
第2页 / 共9页
dataguard实施文档.docx_第3页
第3页 / 共9页
dataguard实施文档.docx_第4页
第4页 / 共9页
dataguard实施文档.docx_第5页
第5页 / 共9页
点击查看更多>>
下载资源
资源描述

dataguard实施文档.docx

《dataguard实施文档.docx》由会员分享,可在线阅读,更多相关《dataguard实施文档.docx(9页珍藏版)》请在冰豆网上搜索。

dataguard实施文档.docx

dataguard实施文档

创建dataguard数据库

——RAC-单机

该文档将分步介绍如何创建dataguard数据库,主要包括以下几项内容:

●为从数据库的创建准备主数据库

●创建物理备份数据库

●验证物理备份数据库

安装配置约定:

●操作系统选用redhatas3.0

●数据库选用oracle9i9206

●主数据库为2节点RAC,主机名为node1和node2,集群sid为wwwdb

●从数据库只安装软件,主机名、dbname和sid都为standby

●所有操作已经注明在主、从服务器上进行

1.为从数据库的创建准备主数据库

在创建从数据库之前,必须确认主数据库进行了正确的配置。

1)Enableforcedlogging

在主数据库创建完成后,需要把数据库改到forcelogging模式下,使用下面的命令:

sql>alterdatabaseforcelogging;

在生产过程中,该命令可能要等待一定的时间才能完成,因为执行之前要等待没有写入日志的操作完成,一个节点上执行就可以了。

2)EnableArchiving(我们实施的一般都是归档模式,所以不用修改)

先验证主数据库是否在归档模式下,执行下面的命令:

SQL>archiveloglist

DatabaselogmodeNoArchiveMode

AutomaticarchivalDisabled

Archivedestination/opt/oracle/product/920/dbs/arch

Oldestonlinelogsequence0

Currentlogsequence1

显示非归档模式和自动归档关闭,则需要执行下面的命令修改:

sql>altersystemsetcluster_database=falsescope=spfile

shutdownbothinstances

Startupmountoneinstance

sql>alterdatabasearchivelog;

sql>altersystemsetlog_archve_start=truescope=spfile;

Shutdownthatinstance

restartbothinstances

sql>altersystemsetcluster_database=truescope=spfile

再次验证主数据库是否在归档模式下,执行下面的命令:

SQL>archiveloglist;

DatabaselogmodeArchiveMode

AutomaticarchivalEnabled

Archivedestination/opt/oracle/product/920/dbs/arch

Oldestonlinelogsequence0

Nextlogsequencetoarchive1

Currentlogsequence1

显示归档模式和自动归档打开,可以进入下一步。

3)创建本地归档路径(如果原系统已经设定好,则不需要修改)

主服务器上的本地归档路径用来放置归档日志,并传送到从服务器。

首先要创建相应的目录,然后使用下面的命令创建,节点1和2都要创建:

节点1:

SQL>altersystemsetlog_archive_dest_1='LOCATION=/home/oracle/admin/wwwdb/archive/node1'scope=both;

Systemaltered.

节点2:

SQL>altersystemsetlog_archive_dest_1='LOCATION=/home/oracle/admin/wwwdb/archive/node2'scope=both;

Systemaltered.

2.创建物理备份数据库

这一段介绍如何创建物理的备份数据库,这项工作是最繁琐的,也是最关键的。

1)使用rman备份脚本备份数据库

执行backup.sh(参考rac环境搭建文档)

……

run

{

allocatechannelch1typediskformat'/home/oracle/backup/standby_controlfile_%t_%s_%p';

allocatechannelch2typediskformat'/home/oracle/backup/archivelog_%t_%s_%p';

BACKUPCURRENTCONTROLFILEFORSTANDBYtag='standbydbcontrolfile'channelch1;

SQL'ALTERSYSTEMARCHIVELOGCURRENT';

BACKUPARCHIVELOGFROMTIME'SYSDATE-1'tag='archivedlogbackup'channelch2;

}

2)为从数据库创建控制文件

用rman脚本备份controlfile,

3)为从数据库创建初始化文件pfile

在主服务器上执行下面的语句:

SQL>createpfile='/home/oracle/initstandby.ora'fromspfile;

Filecreated.

4)把相关文件拷贝到从数据库

把1,2,3步中的文件拷贝到从数据库,放在相关的目录下。

5)在从数据库上更改初始化参数

初始化文件pfile的一些参数需要修改才能被从数据库使用,同时需要创建相关的目录,与集群相关的参数删除或用#屏蔽,主要修改了以下内容:

*.background_dump_dest='/home/oracle/admin/standby/bdump'

*.core_dump_dest='/home/oracle/admin/standby/cdump'

*.user_dump_dest='/home/oracle/admin/standby/udump'

*.standby_archive_dest='/home/oracle/admin/standby/archive/'

*.standby_file_management=AUTO

*.remote_archive_enable=TRUE

*.FAL_SERVER=wwwdb1,wwwdb2

*.FAL_CLIENT=standby

6)配置主、从数据库的listener

在从库启动netca创建listener(主库已创建完成),然后修改listener.ora,主库配置文件不需要修改:

从库配置文件如下(添加黑体字内容):

#LISTENER.ORANetworkConfigurationFile:

/opt/oracle/product/920/network/admin/listener.ora

#GeneratedbyOracleconfigurationtools.

LISTENER=

(DESCRIPTION_LIST=

(DESCRIPTION=

(ADDRESS_LIST=

(ADDRESS=(PROTOCOL=TCP)(HOST=10.151.11.235)(PORT=1521))

(ADDRESS_LIST=

(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC))

SID_LIST_LISTENER=

(SID_LIST=

(SID_DESC=

(SID_NAME=PLSExtProc)

(ORACLE_HOME=/home/oracle)

(PROGRAM=extproc)

(SID_DESC=

(GLOBAL_DBNAME=standby)

(ORACLE_HOME=/home/oracle/)

(SID_NAME=standby)

然后启动主、从库的listener,以oracle身份执行:

[oracle@primaryadmin]$lsnrctlstart

7)创建netservicename,并修改主、从数据库的tnsname.ora文件

在从库运行netca创建tns(主库以自动创建完成),然后修改tnsname.ora文件,主库配置文件添加如下内容:

STANDBY=

(DESCRIPTION=

(ADDRESS_LIST=

(ADDRESS=(PROTOCOL=TCP)(HOST=standby)(PORT=1521))

(CONNECT_DATA=

(SERVICE_NAME=standby)

从库配置文件添加如下内容:

wwwdb=

(DESCRIPTION=

(ADDRESS_LIST=

(ADDRESS=(PROTOCOL=TCP)(HOST=node1)(PORT=1521))

(ADDRESS=(PROTOCOL=TCP)(HOST=node2)(PORT=1521))

(failover=on)

(LOAD_BALANCE=yes)

(CONNECT_DATA=

(SERVER=DEDICATED)

(SERVICE_NAME=wwwdb)

(failover_mode=(type=select)(method=basic))

wwwdb2=

(DESCRIPTION=

(ADDRESS=(PROTOCOL=TCP)(HOST=node2)(PORT=1521))

(CONNECT_DATA=

(SERVICE_NAME=wwwdb)

(INSTANCE_NAME=wwwdb2)

wwwdb1=

(DESCRIPTION=

(ADDRESS=(PROTOCOL=TCP)(HOST=node1)(PORT=1521))

(CONNECT_DATA=

(SERVICE_NAME=wwwdb)

(INSTANCE_NAME=wwwdb1)

然后,以oracle用户运行tnspingstandby和tnspingwwwdb验证是否连通?

结果应该是连通的。

8)启动从数据库

先在从数据库创建口令文件orapwstandby,然后启动数据库

SQL>startupnomount;

Restoredatabase,执行restore.sh脚本

Recoverdatabase,执行Recoverautomaticstandbydatabase;

Restartdatabase,执行startupnomountpfile=/home/oracle/initstandby.ora;

执行alterdatabasemountstandbydatabase;

 

9)启动logapply服务

在从数据库运行下面的命令,启动相关服务:

SQL>alterdatabaserecovermanagedstandbydatabasedisconnectfromsession;

Databasealtered.

10)打开到从数据库的归档

在主库顺序执行下面的命令:

SQL>altersystemsetlog_archive_dest_2='service=standby'scope=both;

SQL>altersystemsetlog_archive_dest_state_2=enablescope=both;

添加数据库运行需要的临时表空间。

altertablespacetempaddtempfile'/dev/raw/clustdb/raw_R0_L1_c9_1000'size1000m;

至此,整个配置过程结束,系统可以正常运行。

3.验证物理备份数据库

以上操作完成后,需要进行验证,看对主数据库的操作是否可以在从数据库看到结果?

验证包括以下四步,下面分别介绍:

1)在从数据库验证已经存在的归档日志:

在从数据库执行下面的语句:

SQL>selectsequence#,first_timefromv$archived_logorderbysequence#;

SEQUENCE#FIRST_TIM

-------------------

109-MAR-04

210-MAR-04

310-MAR-04

可以看到有3个归档日志。

2)在主数据库强制归档:

在主数据库上执行下面的语句:

SQL>altersystemarchivelogcurrent;

Systemaltered.

3)在从数据库再次验证归档日志:

重复1)的内容,可以看到:

SQL>selectsequence#,first_timefromv$archived_logorderbysequence#;

SEQUENCE#FIRST_TIM

-------------------

109-MAR-04

210-MAR-04

310-MAR-04

410-MAR-04

可以看到,比1)中多了一个归档日志4,也就是2)中归档之后从主数据库传送到从数据库的归档日志。

4)验证最新的归档日志是否被应用:

归档日志传送到从数据库之后,还要被应用,从而使主从数据库数据一致,达到备份的目的。

下面的查询可以验证:

SQL>selectsequence#,appliedfromv$archived_logorderbysequence#;

SEQUENCE#APP

-------------

1YES

2YES

3YES

4YES

第二列的值为“yes”,则说明相应的归档日志已经被应用,在主数据库的操作已经在从数据库完成同步。

另:

执行下面的命令可以把从数据库转换成只读模式,进行查询:

SQL>alterdatabaserecovermanagedstandbydatabasecancel;

SQL>alterdatabaseopenreadonly;

 

2006-10-16

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高中教育 > 高中教育

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1