DataGuard 日常维护

合集下载

医院服务器网络系统日常维护手册

医院服务器网络系统日常维护手册

医院服务器网络系统日常维护手册1、硬件检查检查服务器、存储、交换机等硬件设备是否有亮警告黄灯或故障红灯(特别注意硬盘指示灯)。

2、检查系统日志是否报错右击桌面我的电脑管理系统工具事件查看器,注意有元红色打叉图标(特别注意系统类型所列的打红)。

3、检查RMAN备份是否正常完成RMAN备份一般存在E盘或F盘的RMAN目录下(如果不清楚RMAN备份路径可以在控制面板的任务计划打到RMAN备份的任务,右击属性即可查看),目录下是否存在后缀名为BAK的文件,打开full_log.txt文件查看内容,正常情况下应有“备份集已完成,经过时间:xx:xx:xx”、“完成backup于xx(日)-xx(月)-xx(年)”、“恢复管理器完成。

”等信息。

4、检查数据库日志是否报错数据库日志一般存放在当前服务器R:\ORACLE\ADMIN\HOSPITAL\BDUMP\ALERT_HOSPITAL.LOG中,检查的重点是看下当天的实时归档有没备份成功,数据库是否有报错误。

在发生错误的情况下,必须记录下错误代码,以便查明问题。

5、检查磁盘空间是否充足,定期备份或删除归档日志文件(归档日志一般存在ARCHIVE 文件夹内)先检查rman备份是否正常,如果当天备份正常,将一周前的所有归档文件迁移出服务器另外备份或直接删除。

6、定期检查数据库表空间状态使用oracle管理工具DBA Studio或Enterprise manager console登录系统,查看表空间使用率,超过95%的表空间就应该手工扩大表空间容量。

表空产容量扩大方法:增加新的数据库文件或扩大原数据文件大小。

32位系统还要检查单个数据文件是否接近4G大小,如果接近也应增加新的数据文件。

7、检查远程备份是否正常(没有远程备份不必检查)检查远程备份计算机与服务器相同备份路径是否存在后缀名为BAK的相同文件(由任务计划在晚上自动拷贝备份文件)。

8、检查DATAGUARD容灾是否正常(没有此容灾时不必检查)在做DATAGUARD容灾服务器的桌面上有日常检查批处理文件夹,检查新的归档日志文件是否应用到容灾库中,并检查归档文件夹内的归档文件是否为最新的归档。

运维手册_数据库_DataGuard日常运维手册

运维手册_数据库_DataGuard日常运维手册

文档标识文件状态:[] 草稿[√] 正式发布[ ] 正在修改Oracle RAC+DataGuard运维手册版本:1.0.0编制周光晖2015年01月20审核批准年月日生效日期:年月日修订历史记录日期版本修订说明作者目录第一章引言 (3)**. 编写目的 (3)**. 定义、首字母缩写词和缩略语 (4)第二章......................................................................................................... D ATA G UARD状态查询4**. 检查主备库的D ATA G UARD状态信息 (4)**. 检查进程 (4)**. 检查归档状态 (4)**. 检查最后应用的日志S EQUENCE (5)**. 查看是否使用实时应用 (5)**. 检查GAP (5)**. 检查保护模式 (5)**. 相关视图 (6)第三章................................................................................................................... SWITCHOVER 6**. 确认主库状态是否支持切换操作 (6)**. 执行主库转换 (7)**. 关闭并MOUNT新备库 (7)**. 确认老备库状态 (7)**. 切换目标备库为主库 (7)**. 打开新主库 (8)**. 启动新备库的日志应用 (8)**. 开启新备库的ADG (8)第一章引言1.1. 编写目的本文档描述了Oracle 11gR2 RAC+ADG操作手册。

包含RAC DOWN机测试,日常查询状态,启停RAC等指令同时包含oracle 11g R2 ACTIVE DATAGUARD 的日常维护指令。

1.2. 定义、首字母缩写词和缩略语第二章DataGuard状态查询2.1. 检查主备库的DataGuard状态信息SQL> Alter session set nls_date_format ='‘YYYY-MM-DD HH24:MISS';SQL> SELECT MESSAGE FROM V$DATAGUARD_STATUS;使用V$DATAGUARD_STATUS结合alert日志信息,判断DataGuard使用过程中的错误信息,查看当前日志应用的状态。

DATAGUARD实施和维护总结

DATAGUARD实施和维护总结

DATAGUARD实施和维护总结1、DATAGUARD原理STANDBY一旦创建,DATAGUARD就会通过将主数据库的REDO传递给STANDBY数据库,然后在STANDBY中应用REDO实现数据库的同步。

有两种类型的STANDBY:物理STANDBY和逻辑STANDBY物理STANDBY提供与主数据库完全一样的拷贝(块到块),数据库SCHEMA,包括索引都是一样的。

它是直接应用REDO实现同步的。

逻辑STANDBY则不是这样,在逻辑STANDBY中,逻辑信息是相同的,但物理组织和数据结构可以不同,它和主库保持同步的方法是将接收的REDO转换成SQL语句,然后在STANDBY上执行SQL语句。

逻辑STANDBY除灾难恢复外还有其它用途,比如用于用户进行查询和报表。

DATAGUARD包含三个服务(日志传输、日志应用和角色转换)日志传输服务控制REDO数据的传输(传输日志,实施数据库保护模式)--------------STANDBY上通过起用RFS进程接收REDO数据。

日志应用服务则一方面自动应用日志,另一方面自动检测STANDBY缺少的REDO,并从主数据库或其它STANDBY 中自动查询出丢失的REDO。

DATAGUARD的几种保护模式:最大保护,最大可用,最大性能最大保护是指除非REDO在至少一个STANDBY中可用,否则事务不能提交。

如果在某个STANDBY中不可用,则主数据库的操作被停止。

最大可用是指如果STANDBY不可用,主数据库仍然可以处理事务,只是在问题被纠正后,STANDBY和主数据库进行再同步。

这样的一个问题是:当再同步之前有必要FAILOVER时,有些数据可能会丢失。

最大性能是指主数据库的提交操作不等待STANDBY。

物理STANDBY可能的模式:只读模式(OPEN READONLY)和恢复模式(MANANGED RECOVERY)2、物理DATAGUARD实施主数据库的准备工作:FORCE LOGGING,ENABLE ARCHIVING,一个本地归档目的地。

课课家教育-Oracle11g DataGuard容灾实施与维护实战视频课程

课课家教育-Oracle11g DataGuard容灾实施与维护实战视频课程

课课家教育-Oracle11g DataGuard容灾实施与维护实战视频课程课程目标:本套Oracle视频教程学完能够完成dataguard单机对单机的物理standby搭建,dataguard的日常维护,三种保护模式的切换,以及主备互换,故障failove切换等技能适合人群:oracle爱好者,想提高ORACLE高级技能.DataGuard技术是Oracle的一个重要容灾产品,在实际企业环境中使用相当广泛,本套Oracle视频教程培训学完能掌握:1、熟悉Oracle数据库容灾项目的实施与基本维护2、掌握Oracle Dataguard架构与基本概述3、熟悉Oracle Dataguard主库配置4、熟悉Oracle Dataguard备库配置5、熟悉Dataguard三种保护模式转换6、熟悉Dataguard物理standby和逻辑standby区别7、掌握Dataguard实时应用8、掌握Dataguard主备互换9、掌握dataguard故障切换failover目录第1节01-第1课-DataGuard概述及环境规划第2节第2课-DataGuard主库配置-100:13:48第3节第3课-DataGuard主库配置-200:18:03第4节第4课-DataGuard备库配置-100:04:45第5节第5课-DataGuard备库配置-200:09:03第6节第6课-使用RMAN Duplicate技术创建物理standby-1 00:10:27第7节第7课-使用RMAN Duplicate技术创建物理standby-2 00:07:11第8节第8课-添加Standby日志00:02:41第9节第9课-查询DataGuard状态00:03:31第10节第10课-开启同步00:02:50第11节第11课-数据同步测试-100:05:01第12节第12课-数据同步测试-200:03:20第13节第13课-DataGuard配置参数总结00:07:28第14节第14课-DataGuard日常维护-100:08:33第15节第15课-DataGuard日常维护-200:08:15第16节第16课-DataGuard三种保护模式00:03:36第17节第17课-SYNC-ASYNC-AFFIRM-NOAFFIRM参数00:04:35第18节第18课-DataGuard三种保护模式转换00:03:35第19节第19课-主备互换00:09:44第20节第20课-Failover切换00:05:09课程网址:/course-4226.html。

数据库服务器日常维护工作

数据库服务器日常维护工作

数据库服务器日常维护工作
1、服务器维护:
(1)定期观察服务器情况,发现异常及时通知信息管理处,信息管理处指派维护人员,维护人员到位后,帮忙输入密码进入系统,同时进行维护时须在场监督。

(2)病毒防范,发现病毒及时通告信息管理处并进行杀毒。

(3)管理好服务器管理员各种账号和密码,防范别人拷贝和浏览有关HR系统数据库中相关保密内容。

(4)管理服务器共享内容,不要随意共享服务器内容。

(5)机房需要进行停电时、网络调整等,配合信息管理处,如:关机、重启服务器等工作。

2、数据库维护:
(1)备份数据库:系统将设置自动备份数据(数据库和数据库日志),只需定期(每周一次)拷贝备份数据到其他存储设备(如:刻录CD,个人计算机、磁带等);
观察硬盘容量,如发现硬盘空间不够时,清理掉已经备份出来的备份数据。

(2)数据库出现异常时,如数据库坏了,需要恢复数据库,信息管理处指派技术人员,技术人员到位后,帮忙输入密码进入数据库,同时进行数据库恢复必须在
场监督,禁止防范技术人员拷贝和浏览不要求内容。

(3)数据库出现其它异常问题时,技术人员到位后,帮忙输入密码进入系统,同时技术人员进行数据库修复时必须在场监督。

3、定期更改服务器的用户密码和远程控制软件的密码。

服务器放置
服务器放置在机房(机房具有UPS、网络保证等);服务器管理员可以通过远程控制软件进行管理。

双机备份dgrac的区别

双机备份dgrac的区别

双机备份,dg,rac的区别Data Guard是Oracle的远程复制技术,它有物理和逻辑之分,但是总的来说,它需要在异地有一套独立的系统,这是两套硬件配置可以不同的系统,但是这两套系统的软件结构保持一致,包括软件的版本,目录存储结构,以及数据的同步(其实也不是实时同步的),这两套系统之间只要网络是通的就可以了,是一种异地容灾的解决方案。

而对于RAC,则是本地的高可用集群,每个节点用来分担不用或相同的应用,以解决运算效率低下,单节点故障这样的问题,它是几台硬件相同或不相同的服务器,加一个SAN(共享的存储区域)来构成的。

Data Guard由两个多两个以上的独立的数据库构成,他们各自有各自的存储,Oracle 负责他们之间的切换和数据同步双机热备由两台计算机和一个共享存储设备构成,通过第三方软件(HA Rose等)实现切换,不需要做数据同步建议应用RAC+Dataguard,RAC保证可用性,Dataguard在RAC组独立磁盘上和另外一台主机上,保证可靠性。

双机就是人们所说的双机热备,数据库放在共享设备上,同一时刻只能有一台主机接管,另一台待用,这种方式只能保护实例,不能保护db,而且备机长期处于闲置,对资源是一种极大的浪费!如果原本是双机,建议转换为RAC规划好应用,DML操作从一个节点跑,查询操作从另一个节点跑,通常不需要太多调优就可以利用闲置的另外一台机器了RAC服务器共用一套存储,同时提供服务,没有主备之分.宕一个其它的可以继续服务.双机热备,共用一套存储,一个提供服务一个备份,主机宕了切换到备份服务器提供服务. data guard完全两套系统,存储是单独的,用日志同步.RAC:实例层冗余DG:数据库层冗余热备:仅仅只是数据冗余个人理解:RAC:实例冗余,而且还可以做到数据库的loadbalance。

DG:多份数据,所以能做到数据冗余,但是只有主节点提供服务。

热备:与RAC最大的差异可能就是RAC有多个实例,一个数据库。

Dataguard 维护文档

Dataguard 维护文档

SELECT DEST_ID,VALID_TYPE,VALID_ROLE,VALID_NOW FROM V$ARCHIVE_DEST;
三.常见错误
3.1.0
standby服务器里存在日志,但日志无法恢复.
ORA-19909: datafile 1 belongs to an orphan incarnation
alter system set log_archive_dest_state_2 = 'enable';
5):新备库(原主库)开启Redo apply
ALTER DATABASE RECOVER MANAGED STANDBY DATABASE DISCONNECT;
-rw-r----- 1 oracle oinstall 1024 Mar 29 16:50 1_119_714650269.arch
-rw-r----- 1 oracle oinstall 1024 Mar 29 16:50 1_120_714650269.arch
scp 1_116_714650269.arch 1_117_714650269.arch 1_118_714650269.arch 1_119_714650269.arch 1_120_714650269.arch 192.168.143.219:/archive
正常状况,可以切换。
2:查询结果为空的
Dataguard配置不正确,确认dataguard配置,
(例如:
所有LOG_ARCHIVE_DEST_n参数是否正确。
tnsnames.ora里面是否配置正确,是否可以连通。
密码文件Orapw$ORACLE_SID是否正确,可用sqlplus sys/sys@beadb as sysdba 测试。

DATAGUARD实施和维护总结

DATAGUARD实施和维护总结

DATAGUARD实施和维护总结1、DATAGUARD原理STANDBY一旦创建,DATAGUARD就会通过将主数据库的REDO传递给STANDBY数据库,然后在STANDBY中应用REDO实现数据库的同步。

有两种类型的STANDBY:物理STANDBY和逻辑STANDBY物理STANDBY提供与主数据库完全一样的拷贝(块到块),数据库SCHEMA,包括索引都是一样的。

它是直接应用REDO实现同步的。

逻辑STANDBY则不是这样,在逻辑STANDBY中,逻辑信息是相同的,但物理组织和数据结构可以不同,它和主库保持同步的方法是将接收的REDO转换成SQL语句,然后在STANDBY上执行SQL语句。

逻辑STANDBY除灾难恢复外还有其它用途,比如用于用户进行查询和报表。

DATAGUARD包含三个服务(日志传输、日志应用和角色转换)日志传输服务控制REDO数据的传输(传输日志,实施数据库保护模式)--------------STANDBY上通过起用RFS进程接收REDO数据。

日志应用服务则一方面自动应用日志,另一方面自动检测STANDBY缺少的REDO,并从主数据库或其它STANDBY中自动查询出丢失的REDO。

DATAGUARD的几种保护模式:最大保护,最大可用,最大性能最大保护是指除非REDO在至少一个STANDBY中可用,否则事务不能提交。

如果在某个STANDBY中不可用,则主数据库的操作被停止。

最大可用是指如果STANDBY不可用,主数据库仍然可以处理事务,只是在问题被纠正后,STANDBY和主数据库进行再同步。

这样的一个问题是:当再同步之前有必要FAILOVER时,有些数据可能会丢失。

最大性能是指主数据库的提交操作不等待STANDBY。

物理STANDBY可能的模式:只读模式(OPEN READONLY)和恢复模式(MANANGED RECOVERY)2、物理DATAGUARD实施主数据库的准备工作:FORCE LOGGING,ENABLE ARCHIVING,一个本地归档目的地。

数据库日常运行维护方案

数据库日常运行维护方案

Oracle数据库日常运行维护方案2019年3月1项目背景及目标1.1 项目背景XXX信息化建设经过多年的发展和完善,已经建立成熟的网络环境及业务及管理的各类应用系统,目前在线运行的PC 近XX台,近年来建设的XX业务管理等若干应用信息系统多数是基于Oracle数据库系统的应用。

这些Oracle 数据库产品的标准服务都已经过了服务期。

而各系统随着数据量的逐年增加,陆续出现了性能问题,有必要进行数据库系统的升级及性能优化,以确保应用系统的正常运行,为XXX提供更好的信息服务。

1.2 项目目标➢尽早发现性能瓶颈,及时调整,保障数据库稳定高效工作;对各个系统数据库进行补丁升级服务,安装补丁前需要对补丁的可行性及风险即你想那个分析,并制定升级计划和应急回退计划。

同时要做好系统备份准备及详细的测试工作,确保系统的稳定性、安全性,保障系统业务数据的安全;➢数据库架构的合理化;➢提升应用系统性能,完成各系统数据库的性能调优工作,包括:外部资源调优、行的重新安排调优、SQL 性能调优、表格和索引存储参数设置调优等。

➢各业务持续性得到有效的保证。

2需求分析通过对xxx 技术要求进行详实的分析以及xxx信息系统建设的了解,各应用系统的Oracle产品日常运行维护项目主要从如下几个方面进行:1、由于 xxx 有些系统软件建设的较早,目前存在不同版本的数据库共存的现象,包括:Oralce8、Oracle9I、Oracle10g以及Oracle11g等。

而 Oracle9I 版本之前的数据库 SQL 编程语句还不是业界通用的标准化的语句,它与后面版本的 SQL 编程语句有很大的差别,所以在这方面的性能优化需要做好充分备份的准备。

2、正是由于这些系统建设的较早,基于当时的实际情况,应用系统或数据库都还存在一些不足,针对这些情况软件开发商都开发出相应的补丁提供给用户进行升级以防范风险。

所以在对各个系统数据库进行补丁升级服务之前,需要对补丁的可行性、安全性及风险进行充分的测试和分析。

DataGuard技术和维护交流v1.0

DataGuard技术和维护交流v1.0

DataGuard Physical Standby Data Guard 的 Redo应用
Data Guard Broker 重做应用 网络 重做传IGITAL DATA STORAGE

物理备用数据库是主数据库的一个块到块的副本 使用数据库恢复功能来应用更改 可以以只读方式打开,用于生成报表和查询 还可用于备份和减轻生产数据库的负载
DataGurad技术总结和维护交流
Oracle DataGurad配置、切换和运维管理
专业服务部 华北区 张青龙 2012/12/8
2013/6/13
1
Oracle DataGurad技术及应用 Oracle DataGuard的配置说明 Oracle DataGuard的主备切换 Oracle DataGuard的日常运维
• 主要功能:
– Oracle的数据可用性和数据保护技术(本地可用、灾难备份) – 自动创建和维护一个或者多个与生产数据库同步的备份 – 如果主数据库当前不可用,备用数据库可以很容易的接管主数 据库的角色 – 备用数据库做为备用角色时也可以用于查询,报告,测试,或 者备份 – 所有的特性都包含在Oracle Database Enterprise Edition中
用户事务
在线 Redo Logs
活动的备用 数据库
LGWR SGA Redo Buffer LNS RFS
MRP LSP 备用 Redo Logs
主数据库
MRP –物理的 LSP – 逻辑的
查询,报告 测试,备份
Oracle 网络
DataGuard的复制类型
• 物理复制( Physical Standby )是数据块级别的复制, 这种技术是基于日志的多重分发和日志重做的技术 • 物理复制的优缺点:

核心业务系统数据库日常维护及紧急预案

核心业务系统数据库日常维护及紧急预案

核心业务系统日常维护及紧急预案目录一:系统维护组工作职责 (3)二:日常例行检查 (3)三:日常监控 (4)3.1数据库方面 (4)3.2应用服务器方面 (5)四.核心业务系统数据服务器应急方案 (6)1.人为操作失误 (6)2.数据库系统崩溃 (6)3.主数据库服务器崩溃(但磁盘阵列正常) (7)4.主数据库服务器崩溃(磁盘阵列不可用) (7)一:系统维护组工作职责系统维护组的职责很就是维护业务系统的正常运作,在工作时间保证业务系统的正常使用。

由于整个业务系统的正常运行,涉及到应用服务器(weblogic),数据库(oracle),网络,操作系统,服务器硬件等,其中任何一个环节不正常,都会导致整个应用系统无法正常使用。

系统维护组主要有下面的几个工作职责1.设计整个业务系统运行架构2.安装操作系统,调优操作系统3.安装新的应用服务器4.安装数据库,调优数据库5.调优应用服务器6.监控系统的正常运行,包括操作系统,数据库,中间件,网络7.监控一线操作人员登陆业务系统,业务使用系统情况二:日常例行检查对于每天业务系统正式使用前的例行检查,从整个业务系统来看,有下面几个方面具体监控检测方法详见《核心系统日常监控操作说明》1.网络是否通畅(ping服务器),后期考虑从各个网段测试2.操作系统是否正常(做远程登陆测试)3.系统负载是否正常(cpu,ram,io,process),用top检查4.数据库运行是否正常(做登陆尝试)5.检查alert_SID.log文件,看是否有ora错误6.检查数据库容量以及剩余空间情况7.Apache是否正常(做http连接测试)8.应用服务器是否正常(做http连接测试)9.应用服务器和数据库连接是否正常(通过应用服务器做db测试)10.整个业务系统是否正常(做http登陆测试)11.检查磁盘空间是否足够(df)12.检查操作系统最后一次用户登陆(last)13.检查操作系统log情况(/var/log/ messages)14.检查普通用户su 为root情况(/var/log/ secure)三:日常监控具体监控检测方法详见《核心系统日常监控操作说明》3.1数据库方面1.定时做statspack统计,里面包含了很多的系统信息,基本足够用2.监控listener情况,看是否正常3.监控cpu负载情况4.监控内存使用情况,以及内存交换情况5.监控进程运行情况,是否有排队现象6.监控altert_SID.log文件,看是否有ORA错误7.监控网络流量8.监控磁盘io情况9.监控进程是否有长时间高cpu负载情况10.监控系统session等待事件11.监控是否有长时间锁对象情况12.监控是否及时归档13.监控data guard恢复情况14.检查备份是否可用3.2应用服务器方面1.监控cpu负载情况2.控内存使用情况,以及内存交换情况3.控进程运行情况,是否有排队现象4.监控网络流量5.监控磁盘io情况6.监控jvm运行情况,主要是内存回收和分配情况,便于性能调优7.监控应用服务器数据库连接池情况8.监控用户连接情况,从apache和应用服务器两方面监控四.核心业务系统数据服务器应急方案核心系统数据库主要会有以下几个方面的问题1.人为操作失误如drop table,truncate table等,或者update 语句没有写上正确的where 条件,导致系统数据出现问题对于这种错误,首先要加强对系统维护人员的权限管理,做到在满足日常维护的情况下,尽量赋予少的权限,减少人工失误。

Oracle_DataGuard建立维护恢复V1.2

Oracle_DataGuard建立维护恢复V1.2

Oracle_DataGuard建立维护恢复V1.2编辑整理:尊敬的读者朋友们:这里是精品文档编辑中心,本文档内容是由我和我的同事精心编辑整理后发布的,发布之前我们对文中内容进行仔细校对,但是难免会有疏漏的地方,但是任然希望(Oracle_DataGuard建立维护恢复V1.2)的内容能够给您的工作和学习带来便利。

同时也真诚的希望收到您的建议和反馈,这将是我们进步的源泉,前进的动力。

本文可编辑可修改,如果觉得对您有帮助请收藏以便随时查阅,最后祝您生活愉快业绩进步,以下为Oracle_DataGuard建立维护恢复V1.2的全部内容。

[DataGuard创建与维护文档V1.2]北京×××物流科技有限公司版本历史目录一。

DATAGUARD基础知识 (4)1.1。

环境的准备 (4)1.2. Dataguard基本概念 (4)1.2.1. DataGuard的发展史 (4)1。

2.2. ................................................ 运行要求 5 1。

2.3。

.................................... DataGuard的备用模式 5 1。

2。

4. ........................................... 数据保护模式 8 1。

2.5. .................................. Log Transport Services 91.2.6。

...................................... Log apply services 101。

2。

7. ............................... Role Management Services 101.2.8。

.................................. Log transport services 10 1。

oracle11gr2dataguard日常维护及故障处理

oracle11gr2dataguard日常维护及故障处理

Oracle 11G R2 DataGuard日常维护及故障处理1.关于Forced Logging模式有一些DDL语句可以通过指定NOLOGGING子句的方式避免写redo log(目的是提高速度,某些时候确实有效),指定数据库为FORCE LOGGING模式后,数据库将会记录除临时表空间或临时回滚段外所有的操作而忽略类似NOLOGGING之类的指定参数。

如果在执行force loggi ng时有nologging之类的语句在执行,则force logging会等待直到这类语句全部执行。

F ORCE LOGGING是做为固定参数保存在控制文件中,因此其不受重启之类操作的影响(只执行一次即可)打开force loggingSQL > alter database force logging;关闭force loggingSQL > alter database no force logging;查看force logging的状态:SQL > select FORCE_LOGGING from v$database;2.关于主备库的密码密码文件位置$Oracle_HOME/dbs/orapwSID,主备库的密码必须要一致,否则可能出现日志无法传输故障,最好是使用scp传过去较为方便3.关于listener.ora和tnsnames.oralistener.ora为数据库的监听配置文件,tnsnames.ora为网络服务名配置文件修改listener.ora是需要重启监听程序,而tnsnames.ora是不需要重启的,我们可以使用默认的listener.oraLISTENER =(DESCRIPTION_LIST =(DESCRIPTION =(ADDRESS = (PROTOCOL = TCP)(HOST = localhost.localdomain)(PORT = 1521)) ))ADR_BASE_LISTENER = /opt/oracle以上是动态注册,如果是静态注册的话,则是SID_LIST_LISTENER =(SID_LIST =(SID_DESC =(SID_NAME = PLSExtProc)(ORACLE_HOME = /opt/oracle/product/11.2.0/db_1)(PROGRAM = extproc))(SID_DESC =(GLOBAL_DBNAME =db1)(ORACLE_HOME = /opt/oracle/product/11.2.0/db_1)(SID_NAME = db1)))tnsnames.ora则只需要添加服务名db1 =(DEST_NAME(DESCRIPTION =(ADDRESS_LIST =(ADDRESS = (PROTOCOL = TCP)(HOST = db1)(PORT = 1521)) )(CONNECT_DATA =(SERVER = DEDICATED)(SERVICE_NAME = db1)))db2=(DESCRIPTION =(ADDRESS_LIST =(ADDRESS = (PROTOCOL = TCP)(HOST = db2)(PORT = 1521)) )(CONNECT_DATA =(SERVER = DEDICATED)(SERVICE_NAME = db2)))以上按照自己的实际情况进行修改以上配置好了,就可以相互的tnsping db1或tnsping db2进行测试4.参数文件说明参数文件说明:增加以下参数,如果在初始化参数已经有配置,则看需要做相应的修改。

数据库服务器日常维护工作

数据库服务器日常维护工作

数据库服务器日常维护工作数据库服务器日常维护工作1.硬件维护1.1.服务器状态检查- 每天检查服务器的电源状态、风扇运转情况以及硬盘活动指示灯等硬件运行情况。

- 确保服务器运行稳定,没有异常故障。

1.2.温度和湿度监测- 定期检查服务器所在机房的温度和湿度,确保环境符合要求。

- 如果环境异常,及时采取措施进行调节。

1.3.硬盘维护- 每周定期进行磁盘清理,清除不必要的文件和日志,释放存储空间。

- 定期进行磁盘碎片整理,提升磁盘读写效率。

- 使用监控工具检测硬盘健康状态,如有异常,及时更换。

1.4.内存和 CPU 维护- 监控服务器的内存占用率和 CPU 使用率,及时调整配置或优化程序。

- 定期检查内存插槽、内存条等硬件连接是否正常,确保正常运行。

2.软件维护2.1.操作系统更新- 定期安装最新的操作系统更新补丁,修复安全漏洞和功能问题。

- 确保操作系统与数据库软件兼容,并及时进行版本升级。

2.2.数据库软件维护- 定期备份数据库,确保数据安全。

- 监控数据库性能,如查询慢、连接断开等问题,及时进行优化和修复。

- 对数据库进行定期的优化和索引重建,提升查询效率。

- 定期清理无用的数据库对象,减少数据库的存储空间占用。

2.3.监控和警报设置- 配置监控工具,监测数据库服务器的运行状态。

- 设置合适的警报规则,及时报警并采取相应措施处理异常情况。

3.安全管理3.1.访问控制- 确保只有授权人员可以访问数据库服务器,并对数据库进行相应操作。

- 设置账号密码复杂度要求,定期更换密码,增加数据库安全性。

3.2.安全审计- 开启数据库的安全审计功能,记录所有访问和操作的日志。

- 定期检查和分析审计日志,发现潜在的安全隐患。

3.3.数据加密- 配置数据库服务器的数据加密功能,保护敏感数据的安全性。

- 使用合适的加密算法和密钥管理策略,确保数据的机密性。

附件:1.服务器设备清单2.数据库软件版本信息3.监控工具配置文件法律名词及注释:1.数据保护条例:指个人数据保护方面的法律法规,如欧盟的《通用数据保护条例(GDPR)》。

D备份软件日常维护手册

D备份软件日常维护手册

HP Data Protector 日常维护1.1 验证 license 信息DP 图形界面 Help About 中所有 license 信息将被显示,如果输入的 license 不正确, 此处将提示出来。

1.2 DP 软件的执行程序DP 软件的执行程序存放在 /opt/omni 目录下 /opt/omni/lbin/opt/omni/sbin/opt/omni/binrds: Active [888] crs: Active [792] mmd : Active [848]omniinet : Active [804]Sending of traps disabled.Status: All Data Protector relevant processes/services up and running.Ps -ef | grep omni 正常状况下应看到如下信息/opt/omni/lbin/crs/opt/omni/lbin/rds/opt/omni/lbin/mmd1.5DP 备份确认1.5.1 在图形界面的 backup 模块中可以查看已经定义好的备份任务1.5.2 对于正在进行中的备份或者恢复任务则可以通过 DP 图形用户接口中的 Monitor 模块 查看,在 DP Monitor 中将会看到 DP 当前正在执行的备份、恢复操作的详细信息。

当执行 完毕,记录将会被写到 DP Internal Database 模块中。

1.5.3 可以在 DP “Internal Database ”界面下确认已经完成的备份任务1.3 DP 软件的手工启动方法DP 软件的手工启动方法如下:/opt/omni/sbin/omnisv -status/opt/omni/sbin/omnisv -start/opt/omni/sbin/omnisv -stop1.4DP 软件的后台进程--- 观察 DP 后台进程的状态 --- 手工启动 DP 进程 --- 手工停止 DP 进程观察 DP 后台进程的状态有如下 /opt/omni/sbin/omnisv -statusProcNameStatus 2 种方法: 正常状况下应看到如下信息 [PID]HP Data Protector 相关恢复步骤2.1 一般文件系统的恢复2.2Oracle 的恢复注:Oracle 的恢复实际是调用Oracle rman 完成备份/恢复,存储到OV DP 中的,因此建议DBA 直接通过rman 脚本完成恢复工作会具有较大的灵活性。

物理Data Guard维护篇(二)

物理Data Guard维护篇(二)

Data Guard维护篇(二)1、创建表空间或者数据文件先看搭建Data Guard时的两个参数:DB_FILE_NAME_CONVERT = ’file1’, ‘file2’LOG_FILE_NAME_CONVERT = ‘file1’, ‘file2’以上两个参数的作用相似,即primary数据库和standby数据库的数据文件或者日志文件的路径可以不相同,通过该参数实现自动装换,file1为转换前文件名,file2为转换后文件名STANDBY_FILE_MANAGEMENT=AUTO/MANUAL该参数作用是设置在数据库数据文件发生修改时,standby数据库数据文件相应的管理方式,AUTO为自动管理,MANNUAL则是需要手动管理通过测试来了解一下:首先将STANDBY_FILE_MANAGEMENT的值置为AUTO(stadnby数据库)standby > alter system set standby_file_management = auto;System altered.standby > show parameter standby_file_management;NAME TYPE V ALUE--------------------------------------------- --------------- ---------------standby_file_management string AUTOprimary数据库创建一个新的表空间primary > create tablespace DG_TEST datafile '/u01/app/oracle/oradata/orcl/dg_test01.dbf' size10m;Tablespace created.primary > col file_name for a45primary > col tablespace_name for a20primary > /FILE_NAME TABLESPACE_NAME--------------------------------------------- - -------------------/u01/app/oracle/oradata/orcl/users01.dbf USERS/u01/app/oracle/oradata/orcl/sysaux01.dbf SYSAUX/u01/app/oracle/oradata/orcl/undotbs01.dbf UNDOTBS1/u01/app/oracle/oradata/orcl/system01.dbf SYSTEM/u01/app/oracle/oradata/orcl/example01.dbf EXAMPLE/u01/app/oracle/oradata/orcl/dg_test01.dbf DG_TEST手动切换一下日志primary > alter system switch logfile;System altered.standby数据库执行REDO应用并查看一下是数据文件信息standby > alter database recover managed standby database disconnect from session;Database altered.standby > alter database recover managed standby database cancel;Database altered.standby > col file_name for a45standby > col tablespace_name for a20standby > select file_name,tablespace_name from dba_data_files;FILE_NAME TABLESPACE_NAME--------------------------------------------- --------------------/u01/app/oracle/oradata/orcl_s/users01.dbf USERS/u01/app/oracle/oradata/orcl_s/sysaux01.dbf SYSAUX/u01/app/oracle/oradata/orcl_s/undotbs01.dbf UNDOTBS1/u01/app/oracle/oradata/orcl_s/system01.dbf SYSTEM/u01/app/oracle/oradata/orcl_s/example01.dbf EXAMPLE/u01/app/oracle/oradata/orcl_s/dg_test01.dbf DG_TEST此时会发现,在primary数据库创建的表空间,已经在standby数据库体现出来,并且根据DB_FILE_CONVERZT参数的设置,将新的数据文件创建在了一个standby指定的路径下将STANDBY_FILE_MANAGEMENT参数设置为MANUALstandby > alter system set standby_file_management = manual;System altered.standby> show parameter standby_file_management;NAME TYPE V ALUE------------------------------------ ----------- ------------------------------standby_file_management string MANUALprimary数据库添加一个新的数据文件primary > alter tablespace DG_TEST add datafile '/u01/app/oracle/oradata/orcl/dg_test02.dbf' size 10m;Tablespace altered.primary > alter system switch logfile;System altered.standby 数据库再次查看结果standby > select status from v$instance;STA TUS------------MOUNTEDstandby > alter database recover managed standby database disconnect from session;Database altered.此时如果取消REDO应用会报错,原因是REDO中指定的新添加的数据文件在standby数据库中没有自动创建SQL> alter database recover managed standby database cancel;alter database recover managed standby database cancel*ERROR at line 1:ORA-16136: Managed Standby Recovery not activeSQL> col name for a45SQL> col file# for 999999SQL> select name,file# from v$datafile;NAME FILE#--------------------------------------------- -------/u01/app/oracle/oradata/orcl_s/system01.dbf 1/u01/app/oracle/oradata/orcl_s/undotbs01.dbf 2/u01/app/oracle/oradata/orcl_s/sysaux01.dbf 3/u01/app/oracle/oradata/orcl_s/users01.dbf 4/u01/app/oracle/oradata/orcl_s/example01.dbf 5/u01/app/oracle/oradata/orcl_s/dg_test01.dbf 6/u01/app/oracle/10.2.0/db_1/dbs/UNNAMED00007 77 rows selected可以看到,这里虽然也多出了一个数据文件,但明显跟我们新添加的数据文件不匹配,这时就需要DBA介入了,修改一下该数据文件的路径standby > alter database create datafile '/u01/app/oracle/10.2.0/db_1/dbs/UNNAMED00007' as'/u01/app/oracle/oradata/orcl_s/dg_test021.dbf';Database altered.再次启动REDO应用并打开数据库查看结果standby > alter database recover managed standby database disconnect;standby > alter database recover managed standby database cancel;Database altered.standby > alter database open;Database altered.standby > col tablespace_name for a20standby > col file_name for a45standby > select tablespace_name,file_name from dba_data_files;TABLESPACE_NAME FILE_NAME-------------------- ---------------------------------------------USERS /u01/app/oracle/oradata/orcl_s/users01.dbfSYSAUX /u01/app/oracle/oradata/orcl_s/sysaux01.dbfUNDOTBS1 /u01/app/oracle/oradata/orcl_s/undotbs01.dbfSYSTEM /u01/app/oracle/oradata/orcl_s/system01.dbfEXAMPLE /u01/app/oracle/oradata/orcl_s/example01.dbfDG_TEST /u01/app/oracle/oradata/orcl_s/dg_test01.dbfDG_TEST /u01/app/oracle/oradata/orcl_s/dg_test021.dbf7 rows selected.2、删除表空间(在删除表空间时也是同样的效果)在参数STANDBY_FILE_MANAGEMENT设置为AUTO的时候无需人为的进行管理,与添加datafile一致,但是当该参数设置为MANUAL时,有一点需要注意:设置standby数据库STANDBY_FILE_MANAGEMENT参数为MANUALSQL> alter system set standby_file_management=manual;System altered.SQL> show parameter standby_file_managementNAME TYPE V ALUE------------------------------------ ----------- ---------------- --------------standby_file_management string MANUALprimary数据库删除一个数据文件SQL> alter tablespace dg_test drop datafile '/u01/app/oracle/oradata/orcl/dg_test02.dbf';SQL> alter system switch logfile;System altered.primary启动REDO,接收数据SQL> alter database recover managed standby database disconnect from session;SQL> alter database recover managed standby database cancel;Database altered.SQL> alter database open;Database altered.SQL> select file_name,tablespace_name from dba_data_files;FILE_NAME TABLESPACE_NAME--------------------------------------------- --------------------/u01/app/oracle/oradata/orcl_s/users01.dbf USERS/u01/app/oracle/oradata/orcl_s/sysaux01.dbf SYSAUX/u01/app/oracle/oradata/orcl_s/undotbs01.dbf UNDOTBS1/u01/app/oracle/oradata/orcl_s/system01.dbf SYSTEM/u01/app/oracle/oradata/orcl_s/example01.dbf EXAMPLE/u01/app/oracle/oradata/orcl_s/dg_test01.dbf DG_TEST表面上dg_test02.dbf数据文件已经被删除,可是在操作系统中并未真正删除该数据文件SQL> !ls /u01/app/oracle/oradata/orcl_s/dg_test01.dbf orcl2control01.ctl redo01.log sysaux01.dbf undotbs01.dbfdg_test02.dbf orcl2control02.ctl redo02.log system01.dbf users01.dbfexample01.dbf orcl2control03.ctl redo03.log temp01.dbf还需手动去删除废弃的数据文件SQL> !rm -rf /u01/app/oracle/oradata/orcl_s/dg_test02.dbf3、重命名数据文件重命名数据文件时,不管STANDBY_FILE_MANGEMENT的值设置AUTO或者是MANUAL,都需要DBA手动的去在DG环境中进行修改standby > show parameter standby_file_management;NAME TYPE V ALUE------------------------------------ ----------- ----------------- -------------standby_file_management string AUTO主库重命名数据文件primary > alter tablespace DG_TEST offline;Tablespace altered.primary > ! mv /u01/app/oracle/oradata/orcl/dg_test_01.dbf/u01/app/oracle/oradata/orcl/dg_test_02.dbfprimary > alter tablespace DG_TEST rename datafile'/u01/app/oracle/oradata/orcl/dg_test_01.dbf' to '/u01/app/oracle/oradata/orcl/dg_test_02.dbf'; Tablespace altered.primary > alter tablespace DG_TEST online;Tablespace altered.primary > select name from v$datafile;NAME----------------------------------------------------/u01/app/oracle/oradata/orcl/system01.dbf/u01/app/oracle/oradata/orcl/undotbs01.dbf/u01/app/oracle/oradata/orcl/sysaux01.dbf/u01/app/oracle/oradata/orcl/users01.dbf/u01/app/oracle/oradata/orcl/example01.dbf/u01/app/oracle/oradata/orcl/dg_test_02.dbf6 rows selected.primary > alter system switch logfile;System altered.standby数据库查看是否有变化standby > alter database recover managed standby database disconnect from session;Database altered.standby > alter database recover managed standby database cancel;Database altered.standby > alter database open;Database altered.standby > select file_name,tablespace_name from dba_data_files;FILE_NAME TABLESPACE_NAME--------------------------------------------- --------------------/u01/app/oracle/oradata/orcl_s/users01.dbf USERS/u01/app/oracle/oradata/orcl_s/sysaux01.dbf SYSAUX/u01/app/oracle/oradata/orcl_s/undotbs01.dbf UNDOTBS1/u01/app/oracle/oradata/orcl_s/system01.dbf SYSTEM/u01/app/oracle/oradata/orcl_s/example01.dbf EXAMPLE/u01/app/oracle/oradata/orcl_s/dg_test_01.dbf DG_TEST6 rows selected.从上面的结果来看,即使是STANDBY_FILE_MANAGEMENT参数设置为AUTO,对数据文件的修改也无法体现到standby数据库手工在standby数据库对数据文件再次重命名(standby数据库无需将表空间置为offline)standby > ! mv /u01/app/oracle/oradata/orcl_s/dg_test_01.dbf/u01/app/oracle/oradata/orcl_s/dg_test_02.dbfstandby > alter database rename file '/u01/app/oracle/oradata/orcl_s/dg_test_01.dbf' to'/u01/app/oracle/oradata/orcl_s/dg_test_02.dbf';alter database rename file '/u01/app/oracle/oradata/orcl_s/dg_test_01.dbf' to'/u01/app/oracle/oradata/orcl_s/dg_test_02.dbf'*ERROR at line 1:ORA-01511: error in renaming log/data filesORA-01275: Operation RENAME is not allowed if standby file management isautomatic.在STANDBY_FILE_MANGEMENT参数设置为AUTO时不允许去重命名文件,将该参数的值改为MANUAL即可standby > alter system set standby_file_management=manual;System alterstandby > alter database rename file '/u01/app/oracle/oradata/orcl_s/dg_test_01.dbf' to'/u01/app/oracle/oradata/orcl_s/dg_test_02.dbf';Database altered.standby > alter database recover managed standby database disconnect from session;Database altered.standby > alter database recover managed standby database cancel;Database altered.standby > alter database open;Database altered.standby > select file_name,tablespace_name from dba_data_files;FILE_NAME TABLESPACE_NAME--------------------------------------------- --------------------/u01/app/oracle/oradata/orcl_s/users01.dbf USERS/u01/app/oracle/oradata/orcl_s/sysaux01.dbf SYSAUX/u01/app/oracle/oradata/orcl_s/undotbs01.dbf UNDOTBS1/u01/app/oracle/oradata/orcl_s/system01.dbf SYSTEM/u01/app/oracle/oradata/orcl_s/example01.dbf EXAMPLE/u01/app/oracle/oradata/orcl_s/dg_test_02.dbf DG_TEST6 rows selected.数据文件已经重命名我们想要的结果4、DG的监控primary > select PROCESS,CLIENT_PROCESS,SEQUENCE#,STATUS fromv$managed_standby;PROCESS CLIENT_P SEQUENCE# STATUS--------- -------- ---------- ------------ARCH ARCH 50 CLOSINGARCH ARCH 50 CLOSINGv$managed_standby视图用于显示standby数据库相关进程的当前状态,以上是常用的几个进程,其中:PROCESS:进程名称,如ARCH,FRS,MRPO等CLIENT_P:对应的primary数据库的进程名称SEQUENCE#:归档序号STA TUS:进程状态,对应的有以下几个值:ALLOCATED:准备连接primary数据库ATTACHED:正在连接primary数据库CONNECTED:已经连接到primary数据库IDLE:空闲中RECEIVING:归档文件接收中OPENING:归档文件处理中CLOSING:归档文件已经处理完毕,结尾中WRITING:REDO数据库写向归档文件中WAIT_FOR_LOG:等待新的REDO数据中WAIT_FOR_GAP:归档有中断,正在等待中断部分的REDO数据APPL YING_LOG:应用REDO数据中查看REDO应用进程primary > selectDEST_NAME,DB_UNIQUE_NAME,ARCHIVED_THREAD#,ARCHIVED_SEQ#,APPLIED_ THREAD#,APPLIED_SEQ# from v$archive_dest_status where status='V ALID';检查归档文件信息primary > select NAME,CREATOR,SEQUENCE#,COMPLETION_TIME from v$archived_log; NAME CREATOR SEQUENCE# COMPLETIO ---------------------------------------- ------- ---------- ---------orcl_s.2_tns ARCH 46 03-MAR-14 /u01/arch/1_47_840520047.dbf ARCH 47 03-MAR-14orcl_s.2_tns ARCH 47 03-MAR-14 /u01/arch/1_48_840520047.dbf ARCH 48 03-MAR-14 orcl_s.2_tns ARCH 4803-MAR-14/u01/arch/1_49_840520047.dbf ARCH 49 03-MAR-14 orcl_s.2_tns ARCH 49 03-MAR-14 /u01/arch/1_50_840520047.dbf ARCH 50 03-MAR-14 orcl_s.2_tns ARCH 50 03-MAR-14物理standby通过V$LOG_HISTORY视图查看归档历史standby > select FIRST_TIME,FIRST_CHANGE#,NEXT_CHANGE#,SEQUENCE# fromv$log_history;FIRST_TIM FIRST_CHANGE# NEXT_CHANGE# SEQUENCE#--------- ------------- ------------ ----------26-FEB-14 446075 474322 126-FEB-14 474322 506399 226-FEB-14 506399 530816 326-FEB-14 530816 570738 427-FEB-14 570738 574176 527-FEB-14 574176 616246 628-FEB-14 616246 648807 728-FEB-14 648807 649453 828-FEB-14 649453 650960 928-FEB-14 650960 652228 1028-FEB-14 652228 672928 11查询当前数据库的信息primary > selectDB_UNIQUE_NAME,DA TABASE_ROLE,OPEN_MODE,PROTECTION_MODE,PROTECTI ON_LEVEL,SWITCHOVER_STA TUS from v$database;查看当前REDO应用和REDO传输状态standby > select process,status,thread#,sequence#,block#,blocks from v$managed_standby; PROCESS STATUS THREAD# SEQUENCE# BLOCK# BLOCKS --------- ------------ ---------- ---------- --------------------ARCH CONNECTED 0 0 0 0 ARCH CONNECTED 0 0 0 0RFS IDLE 0 0 0 0查看是否启用的实时应用primary > select RECOVERY_MODE from v$archive_dest_status where DEST_ID=2;RECOVERY_MODE-----------------------UNKNOWN查看DATA GUARD时间primary > select MESSAGE from v$dataguard_status;MESSAGE------------------------------------------------------------------------------------------------------------------- ARC0: Archival startedARC1: Archival startedARC1: Becoming the 'no FAL' ARCHARC1: Becoming the 'no SRL' ARCHARC2: Archival startedARC0: Becoming the heartbeat ARCHARCH: Possible network disconnect with primary databaseARCH shutting downARC2: Archival stoppedARC0: Attempting destination LOG_ARCHIVE_DEST_2 network reconnect (3113)ARC0: Destination LOG_ARCHIVE_DEST_2 network reconnect abandoned。

(完整word版)OracleDataguard操作手册20160912

(完整word版)OracleDataguard操作手册20160912

Oracale dataguard操作手册第一.dataguard的好处:它是在主节点与备用节点间通过日志同步来保证数据的同步,可以实现数据库的快速切换与灾难性恢复,提供了灾难保护并防止数据丢失。

Data Guard只是在软件上对数据库进行设置,并不需要额外购买任何组件。

用户能够在对主数据库影响很小的情况下,实现主备数据库的同步。

而主备机之间的数据差异只限于在线日志部分,因此可以被用作数据容灾解决方案。

第二.选用什么DG模式?DG有三种模式,最大保护(Maximum protection),最大性能(Maximum performance),最大可用性(Maximum availability),默认的就是最大性能模式。

再实际的应用种使用最大性能模式比较多。

三种保护模式:可以在V$DATABASE中查看到DataGuard的保护模式SELECT PROTECTION_MODE, PROTECTION_LEVEL FROMV$DATABASE;第三.物理standby还是逻辑standby?1,物理stand by直接从primary接受archived log,然后直接做恢复,效率较高,因为是使用最底层的块级别上的复制。

逻辑stand by是把primary接收过来的archived log解析为sql语句,然后做同步,效率较低,因为是执行SQL语句。

2,Physical standby的APPLY节点为MOUNT状态,Logical standby节点为OPEN状态,可分担primary上部分的查询和报表服务。

3,Physical standby可以实现与Primary来回switchover;logical standby切为Primary ,不能再切回来。

4,Physical standby可以切换为Logical standby ,但是logical 不能转换为Physical。

综合以上采取:物理standby模式,效率高,数据完整性好。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

DataGuard 日常维护数据库采用Oracle 10g版本.Dataguard采用最大性能模式.第一部分日常维护一正确打开主库和备库1 主库:SQL> STARTUP MOUNT;SQL> ALTER DATABASE ARCHIVELOG;SQL> ALTER DATABASE OPEN;2 备库:SQL> STARTUP MOUNT;SQL> ALTER DATABASE RECOVER MANAGED STANDBY DATABASE DISCONNECT FROM SESSION;二正确关闭顺序1 备库:SQL> ALTER DATABASE RECOVER MANAGED STANDBY DATABASE CANCEL;SQL>SHUTDOWN IMMEDIATE;2 主库SQL>SHUTDOWN IMMEDIATE;三备库Read-Only模式打开当前主库正常OPEN状态备库处于日志传送状态.1 在备库停止日志传送SQL> recover managed standby database cancel;2 备库Read-only模式打开SQL> alter database open read only;3 备库回到日志传送模式SQL> recover managed standby database disconnect from session; Media recovery complete.SQL> select status from v$instance;STATUS------------MOUNTED四日志传送状态监控1 主库察看当前日志状况SQL> select sequence#,status from v$log;SEQUENCE# STATUS---------- ----------------51 ACTIVE52 CURRENT50 INACTIVE2 备库察看RFS(Remote File Service)接收日志情况和MRP应用日志同步主库情况SQL> SELECT PROCESS, STATUS, THREAD#, SEQUENCE#, BLOCK#, BLOCKS2 FROM V$MANAGED_STANDBY;PROCESS STATUS THREAD# SEQUENCE# BLOCK# BLOCKS--------- ------------ ---------- ---------- ---------- ----------ARCH CONNECTED 0 0 0 0ARCH CONNECTED 0 0 0 0RFS RECEIVING 0 0 0 0MRP0 WAIT_FOR_LOG 1 52 0 0RFS RECEIVING 0 0 0 0可以看到备库MPR0正等待SEQUENCE#为52的redo.3 察看备库是否和主库同步SQL> SELECT ARCHIVED_THREAD#, ARCHIVED_SEQ#,APPLIED_THREAD#, APPLIED_SEQ#2 FROM V$ARCHIVE_DEST_STATUS;ARCHIVED_THREAD# ARCHIVED_SEQ# APPLIED_THREAD#APPLIED_SEQ#---------------- ------------- --------------- ------------0 0 0 00 0 0 00 0 0 00 0 0 00 0 0 00 0 0 00 0 0 00 0 0 00 0 0 00 0 0 01 51 1 50可以看到备库已经将SEQUENCE#51的日志归档,已经将SEQUENCE#50的redo应用到备库.由于已经将SEQUENCE#51的日志归档,所以SEQUENCE#51以前的数据不会丢失.4 察看备库已经归档的redoSQL> SELECT REGISTRAR, CREATOR, THREAD#, SEQUENCE#,FIRST_CHANGE#,2 NEXT_CHANGE# FROM V$ARCHIVED_LOG;REGISTR CREATOR THREAD# SEQUENCE# FIRST_CHANGE#NEXT_CHANGE#------- ------- ---------- ---------- ------------- ------------SRMN SRMN 1 37 572907 573346RFS ARCH 1 38 573346 573538RFS ARCH 1 39 573538 573623RFS ARCH 1 40 573623 573627RFS ARCH 1 41 573627 574326RFS ARCH 1 42 574326 574480RFS ARCH 1 49 601476 601532RFS ARCH 1 50 601532 606932RFS ARCH 1 51 606932 6072565 察看备库已经应用的redoSQL> SELECT THREAD#, SEQUENCE#, FIRST_CHANGE#,NEXT_CHANGE#2 FROM V$LOG_HISTORY;THREAD# SEQUENCE# FIRST_CHANGE# NEXT_CHANGE#---------- ---------- ------------- ------------1 1 366852 3682221 2 368222 3695901 3 369590 3710711 4 371071 3723881 5 372388 3767811 6 376781 3977441 7 397744 4077381 8 407738 4130351 9 413035 4130371 50 601532 6069321 51 606932 607256可以看到备库已经将SEQUENCE#为51的归档文件应用到备库.6 察看备库接收,应用redo数据过程.SQL> SELECT MESSAGE FROM V$DATAGUARD_STATUS;MESSAGE-------------------------------------------------------------------------------- ARC0: Archival startedARC0: Becoming the 'no FAL' ARCHARC0: Becoming the 'no SRL' ARCHARC1: Archival startedARC1: Becoming the heartbeat ARCHRedo Shipping Client Connected as PUBLIC-- Connected User is ValidRFS[1]: Assigned to RFS process 19740RFS[1]: Identified database type as 'physical standby'Primary database is in MAXIMUM PERFORMANCE mode Attempt to start background Managed Standby Recovery processMESSAGE-------------------------------------------------------------------------------- MRP0: Background Managed Standby Recovery process started Managed Standby Recovery not using Real Time Apply Clearing online redo logfile 7 /oraguard/redo1/redo_7_1.log Clearing online redo logfile 7 completeMedia Recovery Waiting for thread 1 sequence 47RFS[1]: No standby redo logfiles createdRedo Shipping Client Connected as PUBLIC-- Connected User is ValidRFS[2]: Assigned to RFS process 19746RFS[2]: Identified database type as 'physical standby'Primary database is in MAXIMUM PERFORMANCE modeMESSAGE-------------------------------------------------------------------------------- Committing creation of archivelog '/arch/1_47_552308270.arc' Media Recovery Log /arch/1_47_552308270.arcMedia Recovery Waiting for thread 1 sequence 48MRP0: Background Media Recovery cancelled with status 16037 MRP0: Background Media Recovery process shutdown Managed Standby Recovery CanceledAttempt to start background Managed Standby Recovery process MRP0: Background Managed Standby Recovery process started Managed Standby Recovery not using Real Time ApplyMedia Recovery Waiting for thread 1 sequence 48RFS[1]: No standby redo logfiles createdMESSAGE-------------------------------------------------------------------------------- Committing creation of archivelog '/arch/1_48_552308270.arc'Media Recovery Log /arch/1_48_552308270.arcMedia Recovery Waiting for thread 1 sequence 49RFS[1]: No standby redo logfiles createdCommitting creation of archivelog '/arch/1_49_552308270.arc'Media Recovery Log /arch/1_49_552308270.arcMedia Recovery Waiting for thread 1 sequence 50RFS[1]: No standby redo logfiles createdCommitting creation of archivelog '/arch/1_50_552308270.arc'Media Recovery Log /arch/1_50_552308270.arcMedia Recovery Waiting for thread 1 sequence 51MESSAGE--------------------------------------------------------------------------------RFS[1]: No standby redo logfiles createdCommitting creation of archivelog '/arch/1_51_552308270.arc'Media Recovery Log /arch/1_51_552308270.arcMedia Recovery Waiting for thread 1 sequence 52可以看到RFS接收到sequence#为51的归档文件并存至备库归档目录/arch/1_51_552308270.arc.Oracle自动应用文件/arch/1_51_552308270.arc进行备库与主库同步Oracle继续等待主库sequence 52的归档文件五备库归档目录维护1 找到备库归档目录SQL> show parameter log_archive_dest_1NAME TYPE------------------------------------ --------------------------------VALUE------------------------------log_archive_dest_1 stringLOCATION=/archVALID_FOR=(ALL_LOGFILES,ALL_ROLES)DB_UNIQUE_NAME=ora2log_archive_dest_10 string2 维护策略每周2,4,7删除已经应用的归档文件具体参见附录二第二部分主库正常切换一人工干预主库正常切换1 在主库端检验数据库可切换状态SQL> SELECT SWITCHOVER_STATUS FROM V$DATABASE; SWITCHOVER_STATUS-----------------TO STANDBY1 row selectedSWITCHOVER_STATUS:TO STANDBY表示可以正常切换.如果SWITCHOVER_STATUS的值为SESSIONS ACTIVE,表示当前有会话处于ACTIVE状态2 开始主库正常切换如果SWITCHOVER_STATUS的值为TO STANDBY 则:SQL> ALTER DATABASE COMMIT TO SWITCHOVER TO PHYSICAL STANDBY;如果SWITCHOVER_STATUS的值为SESSIONS ACTIVE 则:SQL> ALTER DATABASE COMMIT TO SWITCHOVER TO PHYSICAL STANDBY WITH SESSION SHUTDOWN;成功运行这个命令后,主库被修改为备库3 重启先前的主库SQL> SHUTDOWN IMMEDIATE;SQL> STARTUP MOUNT;4 在备库验证可切换状态SQL> SELECT SWITCHOVER_STATUS FROM V$DATABASE; SWITCHOVER_STATUS-----------------TO_PRIMARY1 row selected5 将目标备库转换为主库如果SWITCHOVER_STATUS的值为TO STANDBY 则:SQL> ALTER DATABASE COMMIT TO SWITCHOVER TO PRIMARY;如果SWITCHOVER_STATUS的值为SESSIONS ACTIVE 则:SQL> ALTER DATABASE COMMIT TO SWITCHOVER TO PRIMARY WITH SESSION SHUTDOWN;成功运行这个命令后,备库被修改为主库6 重启目标备库SQL> SHUTDOWN IMMEDIATE;SQL> STARTUP;7 先前主库启动日志传送进程SQL> alter database recover managed standby database disconnect;总结: 这样主库的一次正常切换完成.切换后的状态,原先的主库变为备库,原先的备库变为主库.二通过运行脚本实现主库正常切换1 主库切换为备库在主库上运行脚本/admin/dataGuard/switchover/primary_to_standby.sh2 备库切换为主库在备库上运行脚本/admin/dataGuard/switchover/standby_to_primary.sh脚本1成功运行后,再运行脚本2,不能同时运行两个脚本.经过这次切换后原来的主库变为备库,原先的备库变为主数据并且OPEN对应用提供服务.3 复原最初状态在原备库上运行脚本/admin/dataGuard/switchover/primary_to_standby.sh成功完成后在原主库上运行脚本/admin/dataGuard/switchover/standby_to_primary.sh第三部分主库灾难切换一人工干预主库灾难切换二通过运行脚本实现主库灾难切换SQL>alter database recover managed standby database cancel;SQL>shutdown immediateSQL>startup mountSQL>ALTER DATABASE SET STANDBY DATABASE TO MAXIMIZE PERFORMANCE;SQL>alter database recover managed standby database finish;-- switchSQL>alter database commit to switchover to primary with session shutdown; -- openSQL>shutdown immediateSQL>startup附:一有选择察看redo传送与应用情况select message from v$dataguard_statuswhere message_num>&message_num;二备库归档目录维护脚本在crontab 中定制每日执行removeCommand.sh即可。

相关文档
最新文档