




已阅读5页,还剩6页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
物理standby创建及维护一:服务器的环境配置双机DATAGUARD配置,首先需要满足的基础环境就是两台独立运行且互访通畅的服务器。 参照即将作为主机的服务器配置,包括系统版本,内存配置,硬盘空间等软硬件参数对我们的备库服务器进行准备。因为实际应用环境中,当主机出现不可挽回的故障后,备机将切换成为主机,承受主机等同的运行负荷。 在对硬盘进行分区时,为满足简易搭建,分区应该主备相同。当搭建完成,通过操作系统对网络进行测试,保证通信正常。 二:oracle安装准备 参照主机ORACLE版本对备机ORACLE进行安装,必须保证大版本相同,软件路径名称一致。三:Primary数据库配置及相关操作1、将primary数据库置为FORCE LOGGING 模式。1.1强制归档查询SQL select force_logging from v$database; 1.2 数据库置为FORCE LOGGING 模式SQL alter database force logging;2、创建密码文件(如果不存在的话)oracle密码文件在windows下默认的位置是$ORACLE_HOME/database目录,默认的文件名是pwdSID.ora。3、配置Standby Redo Logoracle 提供了一些标准的建议如下:1 确保standby redo log 的文件大小与primary 数据库online redo log 文件大小相同。这个很好理解的吧,就是为了接收和应用方便嘛。2创建适当的日志组,一般而言,standby redo 日志文件组数要比primary 数据库的online redo 日志文件组数至少多一个。Standby redo log 的操作方式与online redo log 几乎一模一样,只不过在创建或删除时需要多指定一个standby 关键字,例如添加:SQL alter database add standby logfile (e:lmisSTANDBYREDO01.LOG) size 50M;删除也同样简单:SQL alter database drop standby logfile group 4;验证standby redo log 文件组是否成功创建SQL SELECT GROUP#,THREAD#,SEQUENCE#,ARCHIVED,STATUS FROM V$STANDBY_LOG;4、创建primary 数据库客户端初始化参数文件注:主要此处修改项较多,为了方便,我们首先创建并修改pfile,然后再通过pfile 重建spfile,你当然也可以通过alter system set 命令直接修改spfile 内容。SQL create pfile=e:lmis.ora from spfile;文件已创建。下列参数为primary 角色需添加的相关初始化参数:DB_UNIQUE_NAME=lmisprmLOG_ARCHIVE_CONFIG=DG_CONFIG=( lmisprm, lmisstd)LOG_ARCHIVE_DEST_1=LOCATION= E:lmisarchiveVALID_FOR=(ALL_LOGFILES,ALL_ROLES)DB_UNIQUE_NAME= lmisprmlog_archive_dest_2=SERVICE= lmisstd LGWR SYNC AFFIRM VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME= lmisstdLOG_ARCHIVE_DEST_STATE_1=ENABLELOG_ARCHIVE_DEST_STATE_2=ENABLEREMOTE_LOGIN_PASSWORDFILE=EXCLUSIVELOG_ARCHIVE_FORMAT=%t_%s_%r.arc以下参数为standby 角色相关的参数,建议在Primary 数据库的初始化参数中也进行设置,这样在role transition后(Primary 转为Standby)也能正常运行:FAL_CLIENT= lmisprmFAL_SERVER=lmisstdDB_FILE_NAME_CONVERT= E:lmisdatafile,E:lmisdatafileLOG_FILE_NAME_CONVERT= E:lmislogfile,E:lmislogfileSTANDBY_FILE_MANAGEMENT=AUTO注意:上面列举的这些参数仅只是对于primary/standby 两角色可能会相关的参数,还有一些基础性参数比如*_dest,*_size 等数据库相关的参数在备机具体配置时也需要根据实际情况做出适当修改。5 确定primary 服务器的数据文件位置-数据文件 select 表空间, 数据文件, 容量 from (select TABLESPACE_NAME 表空间, FILE_NAME 数据文件, BYTES / 1024 / 1024 容量 from dba_data_files union all select TABLESPACE_NAME 表空间, FILE_NAME 数据文件, BYTES / 1024 / 1024 容量 from dba_temp_files) order by 表空间, 数据文件 表空间数据文件容量1DATAE:LMISDATAFILEINF01.DBF10242INDXE:LMISDATAFILEINDX01.DBF5123LMISE:LMISDATAFILEDATA01.DBF20484LMISE:LMISDATAFILEDATA02.DBF10245LMISE:LMISDATAFILEDATA03.DBF10246RBSGE:LMISDATAFILERGSG01.DBF20487SYSAUXE:LMISDATAFILESYSAUX01.DBF10248SYSTEME:LMISDATAFILESYSTEM01.DBF10249TEMPE:LMISDATAFILETEMP01.DBF102410TOOLSE:LMISDATAFILETOOLS01.DBF1024-联机重做日志文件SELECT group#,status,type,member FROM V$LOGFILE; GROUP#STATUSTYPEMEMBER11ONLINEE:LMISLOGFILEREDO01.LOG22ONLINEE:LMISLOGFILEREDO02.LOG33ONLINEE:LMISLOGFILEREDO03.LOG44STANDBYE:LMISLOGFILESTANDBYREDO01.LOG55STANDBYE:LMISLOGFILESTANDBYREDO02.LOG66STANDBYE:LMISLOGFILESTANDBYREDO03.LOG77STANDBYE:LMISLOGFILESTANDBYREDO04.LOG6 确保数据库处于归档模式SQL archive log list;如果当前primary 数据库并未处于归档模式,可通过下列命令将数据库置为归档模式:SQL SHUTDOWN IMMEDIATE;SQL STARTUP MOUNT;SQL ALTER DATABASE ARCHIVELOG;SQL ALTER DATABASE OPEN;7 通过pfile 重建spfileSQL shutdown immediateSQL create spfile from pfile=e:lmis.ora;四:手把手的创建物理standby1、复制数据文件到standby 服务器根据主机配置中第5步的查询查果将primary服务器的数据文件和日志文件复制到standy服务器(路径要保持一致)。2、创建控制文件-primary 库操作SQL STARTUP MOUNT;SQL ALTER DATABASE CREATE STANDBY CONTROLFILE AS E:LMISLOGFILECONTROL01.CTL;注意哟,控制文件通常需要有多份,你要么手工将上述文件复制几份,要么用命令多创建几个出来。另外,创建完控制文件之后到standby 数据库创建完成这段时间内,要保证primary 数据库不再有结构性的变化(比如增加表空间等等),不然primary 和standby 同步时会有问题。3、创建初始化参数文件注:主要此处修改项较多,为了方便,我们首先创建并修改pfile,然后再通过pfile 重建spfile,你当然也可以通过alter system set 命令直接修改spfile 内容。primary服务器执行SQL create pfile from spfile;文件已创建。修改初始化参数文件中的参数(黑色加粗字体为需要修改的内容)DB_NAME=lmisDB_UNIQUE_NAME=lmisstdLOG_ARCHIVE_CONFIG=DG_CONFIG=(lmisprm,lmisstd)CONTROL_FILES= E:LMISLOGFILECONTROL01.CTL,E:LMISLOGFILECONTROL02.CTLDB_FILE_NAME_CONVERT=E:lmisdatafile,E:lmisdatafileLOG_FILE_NAME_CONVERT=E:lmislogfile,E:lmislogfileLOG_ARCHIVE_FORMAT=ARC%S_%R.%TLOG_ARCHIVE_DEST_1=LOCATION=E:lmisarchiveVALID_FOR=(ALL_LOGFILES,ALL_ROLES)DB_UNIQUE_NAME=lmisstdLOG_ARCHIVE_DEST_2=SERVICE=lmisprm LGWR SYNC AFFIRM VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=lmisprmLOG_ARCHIVE_DEST_STATE_1=ENABLELOG_ARCHIVE_DEST_STATE_2=ENABLEREMOTE_LOGIN_PASSWORDFILE=EXCLUSIVESTANDBY_FILE_MANAGEMENT=AUTOFAL_CLIENT=lmisstdFAL_SERVER= lmisprm注意:上面列举的这些参数仅只是对于primary/standby 两角色可能会相关的参数,还有一些基础性参数比如*_dest,*_size 等数据库相关的参数在具体配置时也需要根据实际情况做出适当修改。4、复制文件到standby 服务器注意需要复制所有数据文件,备份的控制文件及客户端初始化参数文件。5、配置standby 数据库 5.1 通过ORADIM 创建新的OracleServiceWINNT oradim NEW SID lmis STARTMODE manual5.1、创建密码文件复制primary服务器上的密码文件。密码文件在windows下默认的位置是$ORACLE_HOME/database目录,默认的文件名是pwdSID.ora。53 配置listener 及net service names(方式多样,不详述)。Standby 服务器和primary服务器都需要配置,一个监听,两个服务名(pri,std),服务名要使用dedicate模式(SERVER = DEDICATED)。5.4 通过该pfile 创建spfileSQL create spfile from pfile=D:backupinitjsspdg.ora;文件已创建。6、启动standby注意哟,咱们前面说过的,物理standby 极少情况下可以以read-write 模式打开,某些情况下可以以readonly模式打开,所以默认情况下,加载到mount 状态即可,11G可以打开数据库。SQL STARTUP;7 启动日志实时应用SQL ALTER DATABASE RECOVER MANAGED STANDBY DATABASE USING CURRENT LOGFILE DISCONNECT FROM SESSION;提示:disconnect from session子句并非必须,该子句用于指定启动完应用后自动退出到命令操作符前,如果不指定的话,当前session 就会一直停留处理redo 应用,如果想做其它操作,就只能新建一个连接。8、查看同步情况8.1 连接到primary 数据库,查询已经存在的归档日志文件。SQL SELECT SEQUENCE#, FIRST_TIME, NEXT_TIME FROM V$ARCHIVED_LOG ORDER BY SEQUENCE#;8.2 连接到standby 数据库,查询已经存在的归档日志文件。SQL SELECT SEQUENCE#, FIRST_TIME, NEXT_TIME -FROM V$ARCHIVED_LOG ORDER BY SEQUENCE#;SEQUENCE# FIRST_TIME NEXT_TIME- - -8 11-JUL-07 17:50:45 11-JUL-07 17:50:539 11-JUL-07 17:50:53 11-JUL-07 17:50:5810 11-JUL-07 17:50:58 11-JUL-07 17:51:033 rows selected.8.3 在primary服务器,执行ALTER SYSTEM SWITCH LOGFILE 语句进行日志切换SQL ALTER SYSTEM SWITCH LOGFILE;8.4,在standby 服务器上校验新的日志是否归档SQL SELECT SEQUENCE#, FIRST_TIME, NEXT_TIME - FROM V$ARCHIVED_LOG ORDER BY SEQUENCE#;SEQUENCE# FIRST_TIME NEXT_TIME- - -8 11-JUL-07 17:50:45 11-JUL-07 17:50:539 11-JUL-07 17:50:53 11-JUL-07 17:50:5810 11-JUL-07 17:50:58 11-JUL-07 17:51:0311 11-JUL-07 17:51:03 11-JUL-07 18:34:114 rows selected.8.5 在standby 服务器上校验新的重做日志是否被应用SQL SELECT SEQUENCE#,APPLIED FROM V$ARCHIVED_LOG ORDER BY SEQUENCE#;SEQUENCE# APP- -8 YES9 YES10 YES11 IN-MEMORY提示:APPLIED 列值为YES 或 IN-MEMORY 表明对应的归档日志已经被应用五:第二部分物理角色转换1,角色转换前的准备工作1.1检查各数据库的初始化参数,主要确认对不同角色相关的初始化参数都进行了正确的配置。1.2 确保可能成为primary 数据库的standby 服务器已经处于archivelog 模式。1.3确保standby 数据库的临时文件存在并匹配primary 数据库的临时文件。2,物理standby的Switchover2.1 检查是否支持switchover 操作-primary 数据库操作SQL SELECT SWITCHOVER_STATUS FROM V$DATABASE;SWITCHOVER_STATUS-TO STANDBY1 row selected如果该列值为TO STANDBY 或SESSIONS ACTIVE则表示primary 数据库支持转换为standby 角色,否则的话你就需要重新检查一下Data Guard 配置,比如看看LOG_ARCHIVE_DEST_n 之类参数值是否正确有效等等。2.2 启动switchover -primary 数据库操作首先将primary 转换为standby 的角色,通过下列语句:SQL ALTER DATABASE COMMIT TO SWITCHOVER TO PHYSICAL STANDBY WITH SESSION SHUTDOWN;数据库已更改。执行完毕后,primary 数据库将会转换为standby 数据库,并自动备份控制文件到trace。2.3 重启动到mount 或open状态-原primary 数据库操作SQL SHUTDOWN ABORT;SQL STARTUP MOUNT;2.4 检查是否支持switchover 操作-待转换standby 数据库操作待原primary 切换为standby 角色之后,检查待转换的standby 数据库switchover_status 列,看看是否支持角色转换。SQL SELECT SWITCHOVER_STATUS FROM V$DATABASE;SWITCHOVER_STATUS-TO_PRIMARY1 row selected此时待转换standby 数据库switchover_status 列值应该是TO_PRIMARY或SESSIONS ACTIVE,如否则检查其初始化参数文件中的设置,提示一下,比着原primary 数据库的初始化参数改改。2.5 转换角色到primary -待转换standby 数据库操作通过下列语句转换standby 到primary 角色:SQL ALTER DATABASE COMMIT TO SWITCHOVER TO PRIMARY WITH SESSION SHUTDOWN;数据库已更改。2.6 完成转换,打开新的primary 数据库SQL alter database open;数据库已更改。注:如果数据库处于open read-only 模式的话,需要先shutdown 然后直接startup 即可。2.7 备机上启动日志实时应用SQL ALTER DATABASE RECOVER MANAGED STANDBY DATABASE USING CURRENT LOGFILE DISCONNECT FROM SESSION;3,物理standby 的failoverfailover 之后,原primary 数据库默认不再是data guard 配置的一部分。如果待转换角色的standby 处于maximum protection 或maximum availability 模式的话,归档日志应该是连续存在的,这种情况下你可以直接从第3 步执行,否则建议你按照操作步骤从第1 步开始执行。一般情况下failover 都是表示primary 数据库瘫痪,最起码也是起不来了,因此这种类型的切换基本上不需要primary 数据库做什么操作。所以下列步骤中如果有提到primary 和standby 执行的,只是建议你如果primary还可以用,那就执行一下,即使它能用你却不执行,也没关系,不影响standby 数据库的切换。3.1 检查归档文件是否连续查询待转换standby 数据库的V$ARCHIVE_GAP 视图,确认归档文件是否连接:SQL SELECT THREAD#, LOW_SEQUENCE#, HIGH_SEQUENCE# FROM V$ARCHIVE_GAP;THREAD# LOW_SEQUENCE# HIGH_SEQUENCE#- - -1 90 92如果返回的有记录,按照列出的记录号复制对应的归档文件到待转换的standby 服务器。这一步非常重要,必须确保所有已生成的归档文件均已存在于standby 服务器,不然可能会导致数据不一致造成转换时报错。文件复制之后,通过下列命令将其加入数据字典:SQL ALTER DATABASE REGISTER PHYSICAL LOGFILE filespec1;3.2 检查归档文件是否完整分别在primary/standby 执行下列语句:SQL select distinct thread#,max(sequence#) over(partition by thread#) a from v$archived_log;该语句取得当前数据库各线程已归档文件最大序号,如果primary 与standby 最大序号不相同,必须将多出的序号对应的归档文件复制到待转换的standby 服务器。不过既然是failover,有可能primary 数据库此时已经无法打开,甚至无法访问,那你只好听天由命喽。 33 停止备机日志应用SQL ALTER DATABASE RECOVER MANAGED STANDBY DATABASE CANCEL;3.4 启动failover执行下列语句:SQL ALTER DATABASE RECOVER MANAGED STANDBY DATABASE FINISH;数据库已更改。FORCE 关键字将会停止当前活动的RFS 进程,以便立刻执行failover。3.5 检查是否支持failover 操作检查待转换的standby 数据库switchover_status 列,看看是否支持角色转换。SQL SELECT SWITCHOVER_STATUS FROM V$DATABASE;SWITCHOVER_STATUS-TO PRIMARY1 row selected此时待转换standby 数据库switchover_status 列值应该是TO_PRIMARY或SESSIONS ACTIVE,如否则检查其初始化参数文件中的设置,提示一下,比着原primary 数据库的初始化参数改改。3.6 切换物理standby 角色为primarySQL ALTER DATABAS
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年设计科技行业设计师人工智能辅助工具应用前景研究报告
- 政务物流管理平台创新创业项目商业计划书
- 家居阳台绿化创新创业项目商业计划书
- 2025年潮流文化产业潮流文化与街头艺术市场研究报告
- 体育产业股权变更与赛事运营合作协议
- 药品不良反应风险管理操作手册
- 员工报销费用管理办法详解
- 2025汽车销售贷款服务合同模板
- 电极制造工节假日后复工安全考核试卷含答案
- 汽车热处理生产线操作工节假日后复工安全考核试卷含答案
- 机加工安全生产培训考核试题及答案(班组级)(精)
- 电梯从业证考试试题及答案解析
- 第二十四届上海市青少年计算机创新应用竞赛 python校内选拔试题及答案
- 2024年武汉商学院公开招聘辅导员笔试题含答案
- 江苏省宿迁市泗阳县2024-2025学年高二下册期末调研测试语文试题【附答案】
- 2025年《传染病防治法》综合培训试题(附答案)
- 储能电站项目实施方案
- 墙布工厂工程定制方案(3篇)
- 2025年工勤技师考试题库及答案
- 新鲜的牛肉采购合同范本
- 2025至2030年中国室内亲子游乐场行业市场评估分析及投资发展盈利预测报告
评论
0/150
提交评论