oracle dg物理和逻辑,Oracle DG 物理Standby环境搭建
Oracle Data Guard, 分逻辑Standby和物理Standby。 下面讲的是物理Standby环境的搭建步骤。
一、启用Force Logging
将Primary数据库置为Force Logging模式。通过下列语句:
查看状态:
SQL> SELECT DATABASE_ROLE,FORCE_LOGGING FROM V$DATABASE;
DATABASE_ROLE FORCE_LOGGING
---------------- ---------------
PRIMARY NO
修改模式
SQL> alter database force logging;
Database altered.
取消Force logging 模式:
SQL> alter database no force logging;
Database altered.
说明:为什么要改成Force Logging
有一些DDL语句可以通过指定NOLOGGING子句的方式避免写REDO(目的是提高速度,某些时候确实有效)。指定数据库为Force Logging模式后,数据库将会记录除临时表空间或临时回滚段外所有的操作,而忽略类似NOLOGGING之类的指定参数。如果在执行Force Logging时有NOLOGGING之类的语句在执行,那么Force Logging会等待,直到这类语句全部执行。
Force Logging是作为固定参数保存在控制文件中,因此其不受重启之类操作的影响(只执行一次即可),如果想取消,可以通过ALTER DATABASE NO FORCE LOGGING语句关闭强制记录。
二、创建密钥文件(如果不存在的话)
同一个Data Guard配置中所有数据库必须都拥有独立的密钥文件,并且必须保证同一个Data Guard配置中,所有数据库服务器的SYS用户拥有相同密码,以保证REDO数据的顺利传输,因为REDO传输服务是通过认证的网络会话来传输REDO数据,而会话使用包含在密钥文件中的SYS用户密码来认证。
如果使用DBCA建库则Oracle会自动创建密钥文件,该文件默认路径在%ORACLE_HOME%/database目录下,如果在该目录没能找到对应的密钥文件也没关系,Oracle提供了一个创建密钥文件的命令:orapwd,位于%ORACLE_HOME%/bin目录下,该命令有两种调用方式:带参调用和不带参调用。
不带参调用时,会返回该命令的调用方式和参数形式,例如:
[oracle@localhost ~]$ orapwd
Usage: orapwd file= password= entries= force=
where
file - name of password file (mand),
password - password for SYS (mand),
entries - maximum number of distinct DBA and force - whether to overwrite existing file (opt),
OPERs (opt),
There are no spaces around the equal-to (=) character.
其中:
file:指定密钥文件名称和路径。
password:SYS用户密码。
entries:指定该数据库能够拥有SYSDBA权限的用户最大数。
force:如果文件存在是否覆盖。
orapwd命令使用非常简单,file和password为必填参数。
需要注意Windows平台和Linux/UNIX平台密钥文件的命名规则并不相同:
Windows平台命名规则:PWD[sid].ora
Linux/UNIX平台命令规则:orapw[sid] -- 注意:没有文件名,(大小写敏感)
示例如下:
[oracle@localhost dbs]$ orapwd file=/u01/app/oracle/product/10.2.0/db_1/dbs/orapworcl password=admin entries=30
三、配置Standby Redologs
对于最大保护和最高可用性模式,建议为Standby数据库配置Standby Redologs(不配置也可以,Oracle将在Standby数据库端自动创建归档文件,并虚拟为一组Standby Redologs),并使用LGWR SYNC模式传输REDO数据。
1.关于Standby Redologs
Oracle建议DBA在创建Standby数据库时,就考虑Standby Redologs配置的问题。Standby Redologs与Online Redologs非常类似,应该说两者只是服务对象不同,其他参数属性,甚至操作的命令格式几乎都一样,DBA在设计Standby Redologs的时候完全可以借鉴创建Online Redologs的思路,如创建几个文件组,每组多个文件冗余之类的。除些之外呢,Oracle提供了一些标准的建议,如下所示:
(1)确保Standby Redologs的文件大小与Primary数据库Online Redologs文件大小相同。这个很好理解,就是为了接收和应用方便嘛。
(2)创建适当数目的日志组。一般而言,Standby Redologs日志组要比Primary数据库的Online Redologs日志文件组数至少多一个。建议Standby Redologs日志组数量基于Primary数据库的线程数来确定(这里的线程数可以理解为RAC环境中的节点数)。
有一个推荐的公式可供参考:(每线程的日志组数+1)×最大线程数。
例如Primary数据库有两个线程,每个线程分配两组日志,则Standby日志组数建议为6组,使用这个公式可以降低Primary数据库实例LGWR进程锁住的可能性。
提 示: 逻辑Standby数据库有可能需要视工作量,增加更多的Standby Redologs组(或增加归档进程),因为逻辑Standby数据库有可能需要同时写Online Redologs文件。
2.管理Standby Redologs
Standby Redologs的操作方式与Online Redologs几乎一模一样,只不过在创建或删除时需要多指定一个Standby关键字。
查看redo log:
SQL> SELECT GROUP#,TYPE,MEMBER FROM V$LOGFILE;
GROUP# TYPE MEMBER
---------- ------- --------------------------------------------------
3 ONLINE /u01/app/oracle/oradata/orcl/redo03.log
2 ONLINE /u01/app/oracle/oradata/orcl/redo02.log
1 ONLINE /u01/app/oracle/oradata/orcl/redo01.log
添加一个新的Standby Redologs组(注意组号不要与当前存在的Online Redologs组重复),并为该组指定一个成员:
SQL> ALTER DATABASE ADD STANDBY LOGFILE GROUP 4 ('/u01/app/oracle/oradata/orcl/redo04.log') size 50M;
SQL> ALTER DATABASE ADD STANDBY LOGFILE GROUP 5 ('/u01/app/oracle/oradata/orcl/redo05.log') size 50M;
SQL> ALTER DATABASE ADD STANDBY LOGFILE GROUP 6 ('/u01/app/oracle/oradata/orcl/redo06.log') size 50M;
SQL> ALTER DATABASE ADD STANDBY LOGFILE GROUP 7 ('/u01/app/oracle/oradata/orcl/redo07.log') size 50M;
删除Standby Redologs组也同样简单:
SQL> ALTER DATABASE DROP STANDBY LOGFILE GROUP 4;
可以通过动态性能视图V$LOGFILE查看当前数据库中创建的Standby Redologs,例如:
SQL> SELECT GROUP#,TYPE,MEMBER FROM V$LOGFILE;
GROUP# TYPE MEMBER
---------- ------- --------------------------------------------------
3 ONLINE /u01/app/oracle/oradata/orcl/redo03.log
2 ONLINE /u01/app/oracle/oradata/orcl/redo02.log
1 ONLINE /u01/app/oracle/oradata/orcl/redo01.log
4 STANDBY /u01/app/oracle/oradata/orcl/redo04.log
5 STANDBY /u01/app/oracle/oradata/orcl/redo05.log
6 STANDBY /u01/app/oracle/oradata/orcl/redo06.log
7 STANDBY /u01/app/oracle/oradata/orcl/redo07.log
提示:通过该视图中的TYPE列区分该条记录是Online Redologs或是Standby Redologs。
通过查看Standby Redologs的专用视图V$STANDBY_LOG来查看当前数据库中创建的Standby Redologs,如:
SQL> SELECT GROUP#,THREAD#,SEQUENCE#,ARCHIVED,STATUS FROM V$STANDBY_LOG;
GROUP# THREAD# SEQUENCE# ARC STATUS
---------- ---------- ---------- --- ----------
4 0 0 YES UNASSIGNED
5 0 0 YES UNASSIGNED
6 0 0 YES UNASSIGNED
7 0 0 YES UNASSIGNED
从可靠性方面考虑,DG的设计初衷就是当发生故障时快速切换Primary和Standby的角色,以达到快速恢复应用访问的目的。一旦发生切换,原Primary数据库就变成了Standby数据库,就得需要Standby Redologs,为了减少真正切换时应做的工作,建议在Primary数据库也创建Standby Redologs,这样即使发生切换,也不会影响Primary作为Standby身份的正常运行。
四、设置初始化参数
对于Primary数据库,有几个与角色相关的初始化参数需要进行设置,这些参数初始时有些用来控制REDO传输服务(即Primary数据库生成的REDO数据传给谁以及怎么传),有些用来指定角色,还有几个与Standby角色相关的初始化参数,也建议进行配置,以便switchover/failover操作后,Primary/Standby数据库仍能正常工作,建议不管是Primary数据库,还是Standby数据库,对于角色相关的初始化参数都进行配置。
五、将Primary数据库置于归档模式
要创建一个Data Guard环境,Primary数据库必须处于归档模式。
对于非归档模式的数据库该为归档模式,步骤如下:
1. SQL> alter system set log_archive_dest_1='location=/oracle/oracle10g/log/archive_log';
2.关闭数据库
SQL> shutdown immediate
3.启动数据mount状态:
SQL> startup mount;
4、修改数据库为归档模式:
SQL> alter database archivelog;
5、打开数据库,查询:
SQL> alter database open;
oracle dg物理和逻辑,Oracle DG 物理Standby环境搭建相关推荐
- oracle dg物理和逻辑,Oracle DG介绍(物理无实例)
DG是dataguard,也叫standby,是oracle提供的一种容灾解决方案,只有企业版可用,标准版是不能用的,DG最多可以有一个主节点,9个 DG是dataguard,也叫standby,是O ...
- ORACLE DG专题3--手把手部署DG 物理备库
前言 笔者前文已介绍了ORACLE DG的成员身份与数据保护模式等相关理论知识,从本文开始,将进入ORACLE DG理论与实践相结合模式,深入理解ORACLE DG的内在原理与基本运维技能.本文讲述如 ...
- 【DG】基于同一个主机建立物理备库和逻辑备库 (四)--添加一个物理dg节点
[DATAGUARD] 基于同一个主机建立物理备库和逻辑备库 (四)--添加一个物理dg节点 BLOG文档结构图 [DATAGUARD] 基于同一个主机建立物理备库和逻辑备库(一): http://b ...
- oracle逻辑备份和物理备份,oracle数据库物理备份和逻辑备份区别
oracle数据库物理备份和逻辑备份区别 ORACLE中数据备份分为物理备份和逻辑备份两种.物理备份就是转储ORACLE物理文件(如数据文件.控制文件.归档日志文件等),一旦数据库发生故障,可以利用这 ...
- Oracle 物理读 逻辑读 一致性读 当前模式读总结浅析
Oracle 物理读 逻辑读 一致性读 当前模式读总结浅析 在ORACLE数据库中有物理读(Physical Reads).逻辑读(Logical Reads).一致性读(Consistant Get ...
- Oracle逻辑读,物理读
逻辑读和物理读 当执行计划创建成功后,就可以执行类似于update这样的语句.第一步是要在缓存高速缓冲区中查找数据快,数据快包含了要更新的行片段信息.通过内存中一个叫做最近最小使用列表的结构去进行查找 ...
- 【DB笔试面试750】在Oracle中,请简单描述DG的架构。
♣ 题目部分 在Oracle中,请简单描述DG的架构. ♣ 答案部分 DG架构图如下所示: 图 3-20 DG架构图 DG架构按照功能可以分成3个部分: (1)日志发送(Redo Send) (2)日 ...
- oracle物理读优化,oracle 性能优化 06_sql优化
一.SQL优化概述 1.查找需要优化的TOP SQL,可以通过AWR报告,v$sql,v$sqlarea视图获取,CPU开销,逻辑读,物理读,执行次数, 解析次数,执行时间等 2.优化可能的选择 合理 ...
- oracle dg 体系结构,ORACLE DG 详解(oracle dataguard)
DG的原理: DG分为物理standy,逻辑standy 物理standy: 物理STANDBY提供与主数据库完全一样的拷贝(块到块),数据库SCHEMA,包括索引都是一样的.它是直接应用REDO实现 ...
最新文章
- 物体检测中的评价指标【文末赠书】
- SAP RETAIL 事务代码RWBE查询界面上的Plant Group
- Python简介-01-Python的起源
- 你尽管“口嗨”,不打脸算我输
- 略读《大教堂与市集》
- 有段时间没更新了。。。放上我在做的东东的截图
- linux云服务器 个人,使用ownCloud在Linux安装你的个人云服务
- skhynix nvme toolbox怎么选择磁盘_为啥我的NVMe固态硬盘跑分比别人少一半!?莫慌,2张图完美解决...
- “宇宙最强”GPU —— NVIDIA Tesla V100 面向开发者开放试用!
- 使Iframe的宽高自适应,并且兼容IE 和NC浏览器- -
- mysql事物超时回滚_查询超时和事务回滚的处理办法
- Java 项目实战 坦克大战(一)--准备
- 移远EC20 R2.0 AT指令拨号流程
- 网上赚钱怎么赚?锁定一个项目,才是赚钱的王道!
- 信息爆炸,物质丰富,你不得不知的奥卡姆剃刀原则
- 记录下:订单模块初步完成
- 由OJ提交结果联想到内存页面大小的一些小猜想
- java实现12小时制和24小时制的时间
- 顶刊TPAMI!目标检测中的不均衡问题综述!
- 模型评估方法(混淆矩阵)
热门文章
- 【经验谈】开发工程师人生之路
- java android统计图_Android统计图表之柱状图(条形图)
- mysql opti_MySQL基础操作
- 直接学python行不行_是否可以直接学python或者java而不学c++?
- Linux C: IO库函数,文件流缓冲,变参函数
- 题库练习7(最小公倍数、求立方根、字符串逆序、记负均正、字符串分割)
- OS / Linux / 系统阻塞在系统调用中时如果收到信号,系统如何处理?
- python3协程 queue_使用gevent库+queue模块实现多协程爬虫,提高爬取效率!
- 0xbc指令 st75256_DDOS终极加速列车算法
- 如何清除浮动(float)所带来的影响