1、DataGuard安装手册Oracle10G DataGuard安装手册一、建立新Instance的相关dump目录 一般在%ORACLE_BASEadmininstance name 目录下建立以下六个目录 adump bdump cdump dpdump pfile udump 二、设置主数据库(Primary database)为Archive模式 A、检查数据库当前Archive模式 SQL archive log list; Database log mode No Archive Mode Automatic archival Disabled Archive destinatio
2、n USE_DB_RECOVERY_FILE_DEST Oldest online log sequence 38 Current log sequence 40 B、设置其为归档模式 从非归档模式转到归档模式,数据需在mount模式下 SQL show parameter archive (显示Archive_destc参数名称) 有三参数:1、log_archive_dest_n 设置归档的路径名称 2、log_archive_dest_state_n 设置归档为有效:enable 3、log_archive_format 设置归档生成文件名称格式 SQL alter system set
3、 log_archive_dest_1=location=D:OradatajoinuArchive scope=both; System altered. 其格式为:location=归档存储的指定路径全称 SQL shutdown immediate; Database closed. Database dismounted. ORACLE instance shut down. SQL startup mount; ORACLE instance started. Total System Global Area 612368384 bytes Fixed Size 1292036 by
4、tes Variable Size 356518140 bytes Database Buffers 247463936 bytes Redo Buffers 7094272 bytes Database mounted. SQL alter database archivelog; Database altered. SQL alter database open; Database altered. SQL archive log list; Database log mode Archive Mode Automatic archival Enabled Archive destinat
5、ion D:OradatajoinuArchive Oldest online log sequence 38 Next log sequence to archive 40 Current log sequence 40 SQL三、DataGuad必须使用force logging模式 检查是否启用了flashback database 和force_logging Force logging为一次性设置参数。 SQL select flashback_on,force_logging from v$database; FLASHBACK_ON FOR - - NO NO 如果没有修改数据库
6、为force logging模式 SQL alter database force logging四、添加standby logfile为主数据库添加备用联机日志文件,这里要保证备日志文件与主库联机日志文件相同大小。添加备用日志文件是规则: 备用日志最少应该比redo log 多一个。推荐的备重做日志数依赖于主数据库上的线程数。 (每线程日志文件最大数目 + 1 ) * 线程数 alter database add standby logfile group 4 (/oracle2/app/oracle/oradata/std_redo04a.log,/oracle2/app/oracle/o
7、radata/std_redo04b.log) size 50m, group 5 (/oracle2/app/oracle/oradata/std_redo05a.log,/oracle2/app/oracle/oradata/std_redo05b.log) size 50m, group 6 (/oracle2/app/oracle/oradata/std_redo06a.log,/oracle2/app/oracle/oradata/std_redo06b.log) size 50m, group 7 (/oracle2/app/oracle/oradata/std_redo07a.l
8、og,/oracle2/app/oracle/oradata/std_redo08b.dbf) size 50m; 否则备库在应用时报如下信息:RFS1: No standby redo logfiles createdRFS1: Archived Log: /oracle2/arch/1_30_633287861.dbf在主库添加完standby logfile后,当主库切换后备库后会自动使用备库的redo logfile,具体应用信息如下:RFS1: Successfully opened standby log 4: /oracle2/app/oracle/oradata/10g/red
9、o04.logRFS1: Successfully opened standby log 4: /oracle2/app/oracle/oradata/10g/redo04.log五、UNIX和Windows下参数设置方法 Windows: set 环境变量=Value UNIX : export 环境变量=Value六、创建密码文件 A、检查是否使用密码文件,以及具有SYSDBA权限的用户 SQL select * from v$pwfile_users; USERNAME SYSDB SYSOP - - - SYS TRUE TRUE SQL B、密码文件相关的设置 1、设置初始化参数re
10、mote_login_passwordfile: 在oracle数据库实例的初始化参数文件中,此参数控制着密码文件的使用及其状态。它可以有以下几个选项: none:指示oracle系统不使用密码文件,特权用户的登录通过操作系统进行身份验证; exclusive:指示只有一个数据库实例可以使用此密码文件。只有在此设置下的密码文件可以包含有除internalsys以外的用户信息,即允许将系统权限sysopersysdba授予除internalsys以外的其他用户。 shared:指示可有多个数据库实例可以使用此密码文件。在此设置下只有internalsys帐号能被密码文件识别,即使文件中存有其他用
11、户的信息,也不允许他们以sysopersysdba的权限登录。此设置为缺省值。 在remote_login_passwordfile参数设置为exclusive、shared情况下,oracle系统搜索密码文件的次序为:在系统注册库中查找ora_sid_pwfile参数值(它为密码文件的全路径名);若未找到,则查找ora_pwfile参数值;若仍未找到,则使用缺省值oracle_homedatabasepwdsid.ora;其中的sid代表相应的oracle数据库系统标识符。 2、收回权限和授予权限 grantsysdbatouser_name; revokesysdbafromuser_na
12、me; 3、 C、创建密码文件 $orapwd file=D:OradatajoinustdParafilePWDjoinustd.ora password=password entries=20; 如果是Windowns下,需要输入以下命令创建Windows服务(必须用系统管理员权限) $oradim -NEW -SID joinustd -INTPWD D:OradatajoinustdParafilePWDjoinustd.ora -STARTMODE manual Instance created. 需要注意的是,同一个Data Guard 配置中所有数据库必须都拥有独立的密码文件,并
13、且必须保证同一个Data Guard 配置中所有数据库服务器的SYS 用户拥有相同密码以保证redo 数据的顺利传输,因为redo传输服务通过认证的网络会话来传输redo 数据,而会话使用包含在密码文件中的SYS 用户密码来认证。七、创建主数据库(Primary Database)备份 A、备份数据库 RMAN crosscheck backup; using channel ORA_DISK_1 RMAN delete noprompt backupset; using channel ORA_DISK_1 RMAN run 2 allocate channel t1 type disk;
14、3 backup format D:OradatajoinuBackupDBjoinuUC_%d_S_%s_P_%p_T_%t database; 4 released channel: ORA_DISK_1 allocated channel: t1 channel t1: sid=134 devtype=DISK Starting backup at 07-APR-10 channel t1: starting full datafile backupset channel t1: specifying datafile(s) in backupset input datafile fno
15、=00002 name=D:ORADATAJOINUUNDOTBS01.DBF input datafile fno=00004 name=D:ORADATAJOINUUSERS01.DBF input datafile fno=00006 name=D:ORADATAJOINUUSERS02.DBF input datafile fno=00007 name=D:ORADATAJOINUUSERS03.DBF input datafile fno=00008 name=D:ORADATAJOINUUSERS04.DBF input datafile fno=00009 name=D:ORAD
16、ATAJOINUINDEX01.DBF input datafile fno=00010 name=D:ORADATAJOINUINDEX02.DBF input datafile fno=00001 name=D:ORADATAJOINUSYSTEM01.DBF input datafile fno=00003 name=D:ORADATAJOINUSYSAUX01.DBF input datafile fno=00005 name=D:ORADATAJOINUEXAMPLE01.DBF channel t1: starting piece 1 at 07-APR-10 channel t1
17、: finished piece 1 at 07-APR-10piece handle=D:ORADATAJOINUBACKUPDBJOINUUC_JOINU_S_14_P_1_T_715694707 tag=TAG20100407T120507 comment=NONE channel t1: backup set complete, elapsed time: 00:00:45Finished backup at 07-APR-10 Starting Control File and SPFILE Autobackup at 07-APR-10 Piece handle=D:ORADATA
18、FLASH_RECOVERY_AREAJOINUAUTOBACKUP2010_04_07O1_MF_S_715694753_5VR1525W_.BKP comment=NONE Finished Control File and SPFILE Autobackup at 07-APR-10 released channel: t1 RMAN B、备份归档文件 RMAN list archivelog all; List of Archived Log Copies Key Thrd Seq S Low Time Name - - - - - - 1 1 40 A 06-APR-10 D:ORA
19、DATAJOINUARCHIVEARC00040_0714235413.001 RMAN crosscheck archivelog all; allocated channel: ORA_DISK_1 channel ORA_DISK_1: sid=134 devtype=DISK validation succeeded for archived log archive logfilename=D:ORADATAJOINUARCHIVEARC00040_0714235413.001 recid=1 stamp=715683988 Crosschecked 1 objects RMAN ru
20、n 2 allocate channel t1 type disk; 3backup format D:OradatajoinuBackupArchivejoinuARC_%d_S_%s_P_%p_T_%t 4 archivelog all delete input; 5 released channel: ORA_DISK_1 allocated channel: t1 channel t1: sid=134 devtype=DISK Starting backup at 07-APR-10 current log archived channel t1: starting archive
21、log backupset channel t1: specifying archive log(s) in backup set input archive log thread=1 sequence=40 recid=1 stamp=715683988 input archive log thread=1 sequence=41 recid=2 stamp=715701086 channel t1: starting piece 1 at 07-APR-10 channel t1: finished piece 1 at 07-APR-10 piece handle=D:ORADATAJO
22、INUBACKUPARCHIVEJOINUARC_JOINU_S_16_P_1_T_715701086 tag=TAG20100407T135126 comment=NONE channel t1: backup set complete, elapsed time: 00:00:02 channel t1: deleting archive log(s) archive log filename=D:ORADATAJOINUARCHIVEARC00040_0714235413.001 recid=1 stamp=715683988 archive log filename=D:ORADATA
23、JOINUARCHIVEARC00041_0714235413.001 recid=2 stamp=715701086 Finished backup at 07-APR-10 Starting Control File and SPFILE Autobackup at 07-APR-10 piece handle=D:ORADATAFLASH_RECOVERY_AREAJOINUAUTOBACKUP2010_04_07O1_MF_S_715701089_5VR7C26X_.BKP comment=NONE Finished Control File and SPFILE Autobackup
24、 at 07-APR-10 released channel: t1 RMAN list archivelog all; specification does not match any archive log in the recovery catalog RMAN七、编辑lsnrctl和tnsnames.ora文件 A. lsnrctl 文件 # listener.ora Network Configuration File: C:OracleDBnetworkadminlistener.ora# Generated by Oracle configuration tools.SID_LI
25、ST_LISTENER = (SID_LIST = (SID_DESC = (SID_NAME = PLSExtProc) (ORACLE_HOME = C:OracleDB) (PROGRAM = extproc) ) (SID_DESC = (GLOBLE_NAME = joinu) (ORACLE_HOME = C:OracleDB) (sid_name = joinu) ) (SID_DESC = (GLOBLE_NAME = joinustd) (ORACLE_HOME = C:OracleDB) (sid_name = joinustd) ) ) B.tnsname.ora 文件#
26、 tnsnames.ora Network Configuration File: C:OracleDBnetworkadmintnsnames.ora# Generated by Oracle configuration tools.JOINU = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = IP Adress)(PORT = 1521) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = joinu) ) ) JOINUSTD = (DESCRIPTION = (ADDRESS =
27、 (PROTOCOL = TCP)(HOST = IP Adress)(PORT = 1521) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = joinustd) ) ) 八、在主数据库中为备用数据库创建控制文件 SQL alter database create standby controlfile as D:OradatajoinustdParafilejoinustdDG01.ctl; Database altered. SQL 注:控制文件通常需要有多份,你要么手工将上述文件复制几份,要么用命令多创建几个出来。另外,创建完控
28、制文件之后到standby 数据库创建完成这段时间内,要保证primary 数据库不再有结构性的变化(比如增加表空间等等),不然primary 和standby 同步时会有问题。九、创建备用数据库的init的文件 A、从主数据库中创建备用数据库的init文件 SQL create pfile=D:OradatajoinustdParafileSPFILEjoinustd.ora from spfile; File created. SQL B、修改参数文件SPFILEjoinustd.ora内容 1、修改Standby数据库的相关的dump目录 *.audit_file_dest=C:Orac
29、leadminjoinuadump -audit_file_dest=C:Oracleadminjoinustdadump*.background_dump_dest=C:Oracleadminjoinubdump -background_dump_dest=C:Oracleadminjoinustdbdump*.core_dump_dest=C:Oracleadminjoinucdump -core_dump_dest=C:Oracleadminjoinustdcdump *.user_dump_dest=C:Oracleadminjoinuudump -user_dump_dest=C:O
30、racleadminjoinustdudump 2、修改Standby数据库的控制文件路径 *.control_files=D:Oradatajoinucontrol01.ctl,D:Oradatajoinucontrol02.ctl,D:Oradatajoinucontrol03.ctl -*.control_files=D:OradatajoinustdParafileJOINUSTDDG01.ctl,D:OradatajoinustdParafileJOINUSTDDG02.ctl,D:OradatajoinustdParafileuJOINUSTDDG03.ctl 3、修改FRA和归档参数 *.db_recovery_file_dest=D:Oradataflash_recovery_area-db_recovery_file
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1