- 博客(91)
- 收藏
- 关注
原创 一步一步学DataGuard(25)RMAN备份来创建之实践
目标:通过rman备份,在同一台服务器创建standby,primary数据库名为jssweb,要创建的standby,db_unique_name命名为jssrman,因为是在同一台服务器,所以需要对standby的数据文件和日志文件路径做下重定义,这里我们选择通过初始化参数的形式重定义文件路径。一、做好准备工作1、创建standby实例需要首先通过ORADIM命令创建一个新的O
2008-04-18 13:26:00 1128
原创 一步一步学DataGuard(26)RMAN备份来创建之实践2
完成善后工作善后工作通常很不起眼但是很重要,1、修改primary数据库中的相关参数SQL> show parameter db_uniqueNAME TYPE VALUE------------------------------------ ----------- ------------
2008-04-18 13:26:00 1694
原创 一步一步学DataGuard(24)RMAN备份来创建之热身
如果你看过三思之前的几个笔记系列,那么对于rman想必已经非常熟悉,操作这个必然也不成问题,如果你还没有看过,建议你先回去看看,然后再回来操作必然也没有问题,如果你一定不准备看,没关系,只要你严格按照实践部分的步骤操作,我相信你一定也可以创建成功,操作应该也没有问题,不过如果这样你也觉着没有问题,那么我要告诉你,可能就这是最大的问题:不知道做过什么,不知道该做什么,不知道为什么要做,一旦需求稍变,
2008-04-18 13:24:00 1298
原创 一步一步学DataGuard(23)Standby之Log应用服务
前面我们已经接触了很多相关的概念,我们都知道DataGuard通过应用redo维持primary与各standby之间的一致性,在后台默默无闻支撑着的就是传说中的Log应用服务。Log应用服务呢,又分两种方式,一种是redo应用(物理standby使用,即介质恢复的形式),另一种是sql应用(逻辑standby使用,通过LogMiner分析出sql语句在standby端执行)。一、Log应
2008-04-18 13:23:00 1419
原创 一步一步学DataGuard(21)Standby之Redo传输服务(2)
什么时候发送这小节包含两个内容,发送什么,以及发送给谁:1、通过VALID_FOR属性指定传输及接收对象valid_for,字面理解就是基于xx有效,再配合其redo_log_type,database_role属性,我们基本上可以将其理解为:为指定角色设置日志文件的归档路径,主要目的是为了辅助一旦发生角色切换操作后数据库的正常运转。redo_log_type可设置为:ONLINE
2008-04-18 13:15:00 1119
原创 一步一步学DataGuard(22)Standby之选择数据保护模式
关于有三模同学的光荣事迹大家应该都听说了,有不认识的请自觉重温"名词先混个脸熟"篇,下面让三思就有三模同学的高超本领为大家做个展示。为了便于大家更好的理解,我们先画一个表,表中描述了不同保护模式下LOG_ARCHIVE_DEST_n参数应该设置的属性:
2008-04-18 13:15:00 1279
原创 一步一步学DataGuard(20)Standby之Redo传输服务(1)
很多人看电影或者电视剧时往往都以为,影响剧情发展的关键是主角的命运,那么,我不得不又说,你只看到了问题的表面,真正影响剧情发展的...............是导演。对于data guard的数据应用而言,幕后的导演是LOG_ARCHIVE_DEST_n。本章节我们要学习的内容会很多,这一次,希望你能理清要学习的重点。 关于redo传输服务(Redo Transport Servic
2008-04-18 13:14:00 1101
原创 一步一步学DataGuard(19)逻辑standby之高级管理4
特殊事件的控制时间紧任务急,呵呵,这里三思就只描述流程,过程就不做演示了,相信你的智力,你一定能看懂。1、导入传输表空间v 第一步:屏蔽guard保护,逻辑standby端操作SQL> ALTER SESSION DISABLE GUARD;v 第二步:导入传输表空间,逻辑standby端操作具体操作步骤可参考三思之前的笔记:使用可传输表空间的特性复制数据!
2008-04-18 13:13:00 695
原创 一步一步学DataGuard(18)逻辑standby之高级管理3
一、 修改逻辑standby端数据 我们前面提到,逻辑standby一个极具实用价值的特性即是可以边查询边应用,因此将其做为报表服务器专供查询是个很不错的想法,而且逻辑standby相对于物理standby而言更具灵活性,比如我们可以在逻辑standby上,对一些表创建primary库上并不方便创建的索引,约束,甚至可以做dml,ddl操作(当然,需要注意不要破坏了与primary之间同步的逻
2008-04-15 15:13:00 1430
原创 一步一步学DataGuard(19)逻辑standby之高级管理4
特殊事件的控制 时间紧任务急,呵呵,这里三思就只描述流程,过程就不做演示了,相信你的智力,你一定能看懂。 1、 导入传输表空间 v 第一步:屏蔽guard保护,逻辑standby端操作 SQL> ALTER SESSION DISABLE GUARD; v 第二步:导入传输表空间,逻辑standby端操作 具体操作步骤可参考三思之前的笔记:使用可传输表空间的特
2008-04-15 15:13:00 1020
原创 一步一步学DataGuard(16)逻辑standby之高级管理1
一、 监控逻辑standby 与物理standby的管理一样,oracle提供了一系列动态性能视图来查看逻辑standby的状态,有一些我们前面已经接触过,而有一些,我们还从未用过。。。。。 1、 DBA_LOGSTDBY_EVENTS 可以把该视图看成逻辑standby操作日志,因此如果发生了错误,可以通过该视图查看近期逻辑standby都做了些什么。默认情况下,该视图保留100
2008-04-15 15:10:00 1166
原创 一步一步学DataGuard(15)逻辑standby之failover
逻辑standby之failover 前面学习物理standby的failover时我们提到过,failover有可能会丢失数据(视当前的数据库保护模式而定),对于逻辑standby也一样;物理standby在做failover演示时还提到过,所有的操作都会在standby端执行,对于逻辑standby这也一样,甚至对于明确提及在前primary执行的,你不执行,也没关系,毕竟对于fail
2008-04-15 15:09:00 1552
原创 一步一步学DataGuard(14)逻辑standby之switchover
关于角色转换的一些概念在物理standby章节的时候已经讲了很多,在概念和操作方式上二者基本一致,不过如果你真正深刻理解了物理standby和逻辑standby,你会意识到,对于逻辑standby而言,不管是switchover还是failover,怎么操作起来,都这么怪怪的呢~~~ 逻辑standby之switchover 要在primary和逻辑standby之间切换角色,一般是从
2008-04-15 15:08:00 1378
原创 一步一步学DataGuard(13)逻辑standby之创建示例
假设当前架构为一个primary+二个物理standby,我们转换其中一个物理standby成为逻辑standby,专用于查询服务,另一个物理standby用于执行备份操作及提供灾备。这里我们直接借用之前创建的物理standby,只演示创建过程,我们假设当前primary数据库状态良好,没有任何不被逻辑standby支持的对象或类型。为了方便区分当前操作的数据库,我们设置一下操作符:SQL
2008-04-14 16:29:00 1091
原创 一步一步学DataGuard(12)逻辑standby之创建步骤
创建步骤1、创建物理standby最方便的创建逻辑standby的方式就是先创建一个物理standby,然后再将其转换成逻辑standby,因此第一步就是先创建一个物理standby。注意,在将其转换为逻辑standby前,可以随时启动和应用redo,但是如果你决定将其转换为逻辑standby,就必须先停止该物理standby的redo应用,以避免提前应用含LogMiner字典的
2008-04-14 16:28:00 1550
原创 一步一步学DataGuard(11)逻辑standby之准备创建
准备工作正如我们打小就被叮嘱饭前一定要洗手,在创建逻辑standby之前,准备工作同样必不可少。在创建逻辑standby之前,首先检查primary数据库的状态,确保primary数据库已经为创建逻辑standby做好了全部准备工作,比如说是否启动了归档,是否启用了forced logging等,这部分可以参考创建物理standby时的准备工作。除此之外呢,由于逻辑standby是
2008-04-14 16:27:00 1459
原创 一步一步学DataGuard(10)物理standby之高级管理3
对open resetlogs的primary数据库standby的恢复 当primary数据库被以resetlogs打开之后,dg提供了一些方案,能够让你快速的恢复物理standby ,当然这是有条件的,不可能所有的情况都可以快速恢复。 我们都知道alter database open resetlogs之后,数据库的scn被重置,也就是此时其redo数据也会从头开始。当物理standby接
2008-04-14 16:26:00 2510
原创 一步一步学DataGuard(9)物理standby之高级管理2
管理影响standby的primary数据库事件 为预防可能的错误,你必须知道primary数据库的某些事件可能影响standby数据库,并且了解如何处理。 某些情况下,primary数据库的某些改动会自动通过redo数据传播到standby数据库,因此不需要在standby数据库做额外的操作,而某些情况,则需要你手工调整。 下列事件会由redo传输服务及redo应用自动处理,
2008-04-14 16:25:00 1057
原创 一步一步学DataGuard(8)物理standby之高级管理1
世上没有永恒的主角,能够留住永恒的反是那些默默无闻的小角色,这一节出场的都是重量级选手,它们虽然不是主角,但他们比主角更重要(有时候)。一、READ ONLY/WRITE模式打开物理STANDBY前面提到关于物理standby可以有效分担primary数据库压力,提升资源利用,实际上说的就是这个。以read only或read write模式打开物理standby,你可以转移一些查
2008-04-14 16:24:00 1056
原创 一步一步学DataGuard(7)物理standby之failover
物理standby的failover注意几点:l failover之后,原primary数据库默认不再是data guard配置的一部分。l 多数情况下,其它逻辑/物理standby数据库不直接参与failover的过程,因此这些数据库不需要做任何操作。l 某些情况下,新的primary数据库配置之后,需要重新创建其它所有的standby数据库。另外,如果待转换角色的stand
2008-04-14 16:23:00 1162
原创 一步一步学DataGuard(6)物理standby之switchover
第1节的时候我们就提到了角色切换,我们也听说了其操作简单但用途广泛,同时我们也猜测其属于primary与standby之间的互动,那么在primary和standby数据库(之一)上都需要有操作,并且切换又分了:switchover和failover,前者是无损切换,不会丢失数据,而后者则有可能会丢失数据,并且切换后原primary数据库也不再是该data guard配置的一部分了.针对不同sta
2008-04-14 16:21:00 1403
原创 一步一步学DataGuard(5)物理standby之创建示例
为了最大的降低硬件需求,此处创建的data guard处于同一台机器,但其创建过程与多机并无区别。做为演示用的示例足够了,我们分两阶段配置,分别是配置primary数据库和配置standby数据库,如下:一、Primary数据库配置及相关操作1、确认主库处于归档模式SQL> archive log list;数据库日志模式 存档模式自动存档
2008-04-14 16:20:00 1114
原创 一步一步学DataGuard(4)物理standby之创建步骤(2)
一、手把手的创建物理standby1、创建备份(手工复制数据文件或通过RMAN) ---primary库操作2、创建控制文件 --primary库操作通过下列语句为standby数据库创建控制文件SQL> alter database create standby controlfile as d:/backup/jsspdg01.ctl;注意哟,控制文件通
2008-04-14 16:19:00 1143
原创 一步一步学DataGuard(2)基础之术语再了解大概
同一个Data Guard配置包含一个Primary数据库和最多九个Standby数据库。Primary的创建就不说了,Standby数据库初始可以通过primary数据库的备份创建。一旦创建并配置成standby后,dg负责传输primary数据库redo data到standby数据库,standby数据库通过应用接收到的redo data保持与primary数据库的事务一致。一、
2008-04-14 16:11:00 1213
原创 一步一步学DataGuard(3)物理standby之创建步骤(1)
一、准备工作不管物理standby还是逻辑standby,其初始创建都是要依赖primary数据库,因为这个准备工作中最重要的一部分,就是对primary数据库的配置。1、打开Forced Logging模式将primary数据库置为FORCE LOGGING模式。通过下列语句:SQL> alter database force logging;提示:关于FORCE LOG
2008-04-14 16:11:00 1576
原创 一步一步学DataGuard(1)基础之名词先混个脸熟
它有无数个名字,有人叫它dg,有人叫它数据卫士,有人叫它data guard,在oracle的各项特性中它有着举足轻理的地位,它就是(掌声)......................Oracle Data Guard。而对于我而言,我一定要亲切的叫它:DG(注:主要是因为打着方便)。 不少未实际接触过dg的初学者可能会下意识以为dg是一个备份恢复的工具。我要说的是,这种形容不完全错,d
2008-04-14 16:10:00 1199
原创 使用Oracle可传输表空间的特性复制数据(7)实战RMAN备份传输表空间
一、检查平台是否支持跳过(如有不明请详见第三节示例)二、检查待传输表空间是否自包含跳过(如有不明请详见第三节示例)三、检查备份跳过(如有不明请详见"一步一步学RMAN"系列)四、生成可传输集E:/oracleScript/backup>set oracle_sid=jsswebE:/oracleScript/backup>rman target
2008-01-15 15:44:00 734
原创 使用Oracle可传输表空间的特性复制数据(6)RMAN备份也创建
前面各章从理论到实践详细论述了关于可传输表空间,还有个集(Transportable Tablespace Sets)的创建,其中都提到了很重要一点,就是被传输的表空间在传输过程中必须置为read-only。而在实际操作过程中,对于某些生产数据库,将表空间置为read-only是件非常复杂的事情甚至完全不允许,有了RMAN的Transportable Tablespace,这一切都得以避免。RMA
2008-01-15 15:43:00 1116
原创 使用Oracle可传输表空间的特性复制数据(5)实战CONVERT
设定:源数据库:JSSWEB ,Oracle10.2.0.1 ,Windows 2003(32-bit)目标数据库:JSSCON ,Oracle10.2.0.1 ,RHEL U2 (32-bit),已安装好数据库软件。注:我知道,我明白,我理解,字节顺序相同,按照前面说的应该不需要使用CONVERT转换的嘛!没错你说的对,我们这是演示,你别当真,更别糊涂,相同字节顺序是不需要conv
2008-01-15 15:41:00 714
原创 使用Oracle可传输表空间的特性复制数据(4)转换字节顺序
对于oracle10g的可传输表空间特性而言,我觉着最另人兴奋的就是跨平台的传输了(尽管仍非所有平台都支持)。这意味着一旦数据库涉及到操作系统平台的变更,再不用像之前那样通过exp/imp这类慢的要死的应用来操作了。更加值的庆幸的是,转换这个操作并不复杂,归根结底,它只是一个命令(挠头,难道真的只有一个吗,不像oracle风格啊,oracle一向是喜欢出选择题的),是的,只有一个--CONVERT
2008-01-11 17:14:00 874
原创 使用Oracle可传输表空间的特性复制数据(3)跨平台的传输实践
终于要进入实践了,我们假设现有数据库a:SID=jssweb做为源数据库,数据库b:SID=jsstts做为目标数据库。从数据库a复制表空间jssweb到数据库b。下面是具体操作步骤:一、确认平台是否支持(Determine if Platforms are Supported and Endianness)检查平台版本以及Endian,确认是否支持我们的传输条件。如果是不同平台间的传
2008-01-11 17:10:00 952
原创 使用Oracle可传输表空间的特性复制数据(2)操作步骤
下列步骤列出了传输一个表空间的大致过程。1、检查平台对于跨平台的传输,查询V$TRANSPORTABLE_PLATFORM视图检查两平台的endian format。如果相同平台的传输可以跳过此步。2、选择自包含表空间集(self-contained set of tablespaces)提示:啥叫自包含呢,自包含表示用于传输的内部表空间集没有任何对象引用指向外部表空间
2008-01-09 16:18:00 923
原创 使用Oracle可传输表空间的特性复制数据(1)基础概念
一、关于可传输表空间(Transportable Tablespaces) 可传输表空间的特性主要用于进行库对库的表空间复制,要进行传输的表空间必须置于read-only模式。如果生产库不允许表空间置为只读模式,没关系,方法还是有的,通过RMAN备份也可以创建可传输表空间集。要使用可传输表空间的特性,oracle至少是8i企业版或更高版本。如果是相同操作系统平台相互导入,则8i及以上版本均
2008-01-08 15:07:00 1001
原创 日期时间及数字的格式化参数大全(4)
一、数值格式串 说明及示例---------- -----------------------------------------------------------, 在指定位置附加逗号(便于阅读),注意逗号不能出现于格式字串首位,并且对于小数点的数字无效例如:SQL> select to_char(389999.00,99,999,999) from dual;
2008-01-08 15:06:00 1007
原创 日期时间及数字的格式化参数大全(2)
DL 根据数据库nls_date_format参数中的设置及nls_language,nls_territory参数中的格式返回长日期形式,有点儿绕,呵呵你试试就知道了例如:SQL> select to_char(sysdate,DL) from dual;TO_CHAR(SYSDATE,DL)------------------------2007年12月14日
2008-01-08 15:05:00 834
原创 日期时间及数字的格式化参数大全(3)
应用示例:1、与指定日期在同一周,周1的日期是:SQL> select to_date(2007-12-6, yyyy-mm-dd)2 - to_char(to_date(2007-12-6, yyyy-mm-dd), d) + 23 from dual; TO_DATE(2----------2007-12-03 SQL> selec
2008-01-08 15:05:00 678
原创 日期时间及数字的格式化参数大全(1)
经常遇到有朋友问询关于日期时间格式化的问题(或可以通过格式化轻易解决),经过参考Oracle SQL Reference官方文档,并附上详细的应用示例综合成文,希望能够对大家学习和使用有所帮助。本篇可视为"oracle著名及非著名函数介绍"的补充!
2008-01-08 15:04:00 714 1
原创 RMAN高级应用之Duplicate复制数据库(5)补充
一、跳过表空间(Skipping Tablespaces in RMAN DUPLICATE DATABASE)有时候,并非数据库的所有表空间都需要备份,比如你在创建副本数据库时,想跳过那些read-only或OFFLINE的表空间,这个简单,来来来,跟我一起做,左三圈右三圈脖子扭扭屁股扭扭,不是跳舞,是放松放松,你已经连续盯着屏幕这么久,而且都是看些蝌蚪儿字,要注意保护眼睛啊,黑黑~~~
2007-12-07 13:15:00 3706
原创 RMAN高级应用之Duplicate复制数据库(4)实战
经过前面的准备工作,大展拳脚的时刻终于来临了。在正在创建复制之前,我们先来描述一下需求,一个明确的、清晰的、可实现的需求更加有助于我们操作的实施,所以语言描述能力也是一项非常高超的技巧,下面大家看我举例,一个清晰的需求描述:NOCATALOG模式本地完整复制目标库JSSWEB到副本数据库JSSDUP。 看看,都学着点吧,什么叫言简意赅,言简意赅就是NOCATALOG模式本地完整复制目标库
2007-12-06 12:26:00 923
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人