单实例迁移到RAC(普通文件系统到ASM)
RAC(ASM)到单机OGG配置案例
RAC(ASM)到单机OGG配置案例环境说明:源端DB:操作系统:AIX 7100-02-07-1524数据库:oracle_11.2.0.1.0 RACgoldengate:for_11g_ppc目标端DB:操作系统:windows 7数据库:oracle_11.2.0.1.0goldengate:for_11g_x86注意:本实验是模拟在不同平台同版本上面安装和配置OGG,并实现简单的DML复制,至于复杂的其他方面希望大家能自己多多实验。
作者:姓名:ZhangQYQQ:5056357配置步骤:1、检查源端和目标端正确的IP解析:源端:# cat /etc/hosts# 10.2.0.2 x25sample # x.25 name/address# 2000:1:1:1:209:6bff:feee:2b7f ipv6sample # ipv6 name/address 127.0.0.1 loopback localhost # loopback (lo0) name/address ::1 loopback localhost # IPv6 loopback (lo0)name/address172.16.16.101 zqdb192.169.79.11 zqdb172.16.16.165 oradg192.169.79.12 oradg172.16.16.166 gc1-scan.zqdb172.16.16.168 zqdb-vip172.16.16.169 oradg-vip目标端:C:\Windows\System32\drivers\etc\hosts无特殊配置2、设置LIBPATH,为了安装OGG所用的动态链接库。
如果没有配置这个路径的话,在安装OGG的过程中会报找不到动态链接库的错误,用户可以自己尝试一下。
源端:# su - oraclezqdb:/home/oracle>$vi .profile".profile" 25 lines, 756 charactersPATH=/usr/bin:/etc:/usr/sbin:/usr/ucb:$HOME/bin:/usr/bin/X11:/sbin:.export PATHif [ -s "$MAIL" ] # This is at Shell startup. In normalthen echo "$MAILMSG" # operation, the Shell checksfi # periodically.OGG_HOME=/oracle/ogg/12.1.2ORACLE_BASE=/oracle/ora11gORACLE_HOME=/oracle/ora11g/product/11gORACLE_SID=ora11g1export ORACLE_BASE ORACLE_HOME ORACLE_SIDORA_NLS33=$ORACLE_HOME/ocommon/nls/admin/dataNLS_LANG=AMERICAN_AMERICA.ZHS16GBKLD_LIBRARY_PATH=$ORACLE_HOME/lib:/usr/lib:/libexport ORA_NLS33 NLS_LANG LD_LIBRARY_PATHPATH=$PATH:$ORACLE_HOME/bin:$OGG_HOMEexport PATHLIBPATH=$ORACLE_HOME/lib32:$ORACLE_HOME/libexport LIBPATHexport DISPLAY=172.17.2.203:0.0export PS1="`hostname`":'$PWD>$'目标端:无特殊配置3、在源端创建专用的表空间、schema、并授权。
ASM与文件系统进行互相迁移
一、ASM文件迁移说明ASM文件迁移指的是将位于文件系统上的数据库文件迁移到ASM磁盘组里;或者是将位于ASM 磁盘组上的数据库文件迁移到文件系统上。
如下图所示:二、从文件系统迁移到ASM磁盘组第一步:修改spfilesql>alter system set control_files=’+dgdata1’,’+dgdata1’ scope=spfile;第二步:备份控制文件$rman target /rman>backup current controlfile format ‘/home/oracle/controlfile.ctl’;第三步:启动数据库到NOMOUNTrman>shutdown immediaterman>startup nomount备注:因为修改了spfile中控制文件的位置,所以数据库启动的时候会出现找不到控制文件的问题,所以将数据库启动到NOMOUNT状态,然后再恢复控制文件。
第四步:恢复控制文件rman>resotore controlfile from ‘/home/oracle/controlfile.ctl’;备注:RMAN根据spfile文件中control_files的值将控制文件恢复到指定路径下。
第五步:启动数据库到MOUNTrman>alter database mount;备注:因为控制文件已经恢复,系统可以顺利读取控制文件,所以将数据库启动到MOUNT以便进行下一步数据库文件的迁移。
第六步:复制数据库文件到ASM磁盘组rman>backup as copy database format ‘+dgdata1’;备注:backup as copy 命令是以副本的方式备份数据库,其作用和操作系统的COPY命令是一样的,只是二者的执行者不同而已。
至于数据库文件复制过去的名字则无需指定,它由ASM自动生成。
而且backup as copy 命令只备份数据文件,不备份日志文件,也不备份临时文件。
Oracle-RAC以及ASM安装全过程整理
RAC以及ASM安装全过程整理RAC以及ASM安装全过程整理更改主机名第一步:#hostname oratest第二步:修改/etc/sysconfig/network中的hostname第三步:修改/etc/hosts文件设置hosts文件可参考:[root@amdocs01 mapper]# cat /etc/hosts# Do not remove the following line, or various programs# that require network functionality will fail.localhostamdocs02amdocs02-vipamdocs02-priv设置IPeth01eth1绑定裸设备先在逻辑卷组上分出逻辑卷,全部为裸设备,必须包含:逻辑盘:ocrlv ,votelv 是必须的,因为后面安装ASM要用到data01,data02,data03,data04,data05,softlv,oralv可选1、裸设备定义:一块没有分区的硬盘,称为原始设备(RAWDEVICE)或者是一个分区,但是没有用EXT3,OCFS等文件系统格式化,称为原始分区(RAWPARTITION)以上两者都是裸设备2、裸设备的绑定有文件系统的分区是采用mount的方式挂载到某一个挂载点的(目录)而裸设备不能mount,只能绑定到/dev/raw/下的某一个设备名比如/dev/raw/raw13、裸设备的绑定方法先介绍第一种方法:修改/etc/sysconfig/rawdevices,添加以下内容,这里sdd1和sdd2是原始分区名或者原始设备(硬盘)名,raw1和raw2是/dev目录下的原始设备名,编号从raw1到raw8191,也就是最多可以绑定255个裸设备/dev/raw/raw1/dev/sdd1/dev/raw/raw2/dev/sdd2然后修改裸设备的属主和访问权限chown oracle:dba /dev/raw/raw1chown oracle:dba /dev/raw/raw2chmod 660 /dev/raw/raw1chmod 660 /dev/raw/raw2最后使得裸设备生效,并且在机器启动的时候就自动加载执行/sbin/chkconfig rawdevices on保证机器启动的时候裸设备能够加载,这一步很重要裸设备的绑定方法第二种方法,修改文件的方法#!/bin/sh## This script will be executed *after* all the other init scripts. # You can put your own initialization stuff in here if you don't # want to do the full Sys V style init stuff.touch /var/lock/subsys/localraw /dev/raw/raw1 /dev/mapper/vg00-ocrlvraw /dev/raw/raw2 /dev/mapper/vg00-votelvraw /dev/raw/raw3 /dev/mapper/vg00-data01raw /dev/raw/raw4 /dev/mapper/vg00-data02raw /dev/raw/raw5 /dev/mapper/vg00-data03raw /dev/raw/raw6 /dev/mapper/vg00-data04chmod 775 /dev/raw/raw1chmod 775 /dev/raw/raw2chmod 775 /dev/raw/raw3chmod 775 /dev/raw/raw4chmod 775 /dev/raw/raw5chmod 775 /dev/raw/raw6chown oracle:dba /dev/raw/raw1chown oracle:dba /dev/raw/raw2chown oracle:dba /dev/raw/raw3chown oracle:dba /dev/raw/raw4chown oracle:dba /dev/raw/raw5chown oracle:dba /dev/raw/raw6chown oracle:dba /dev/raw/raw7modprobe hangcheck-timer hangcheck-tick=30 hangcheck_margin=1804、裸设备的读写不能用cp等命令操作,写入内容用dd命令,可以参阅相关资料5、清空裸设备相当于格式化啦bs是快的大小,blocksizecount是快的数量,这两者相乘大于裸设备的容量即可ddif=/dev/zeroof=/dev/raw/raw1bs=8192count=12800ddif=/dev/zeroof=/dev/raw/raw2bs=8192count=12800-------另外,注意:rhel4使用udev来管理设备手动修改/dev/raw/raw1不能永久生效要想使得权限持久生效raw/*:root:disk:0660改成raw/*:oracle:dba:0660重启机器如果/dev/下没有/raw/目录,可以自己手工建立。
VSPHERE环境使用RDM共享裸盘的ORACLE-RAC虚拟机迁移
VSPHERE环境使用RDM共享裸盘的ORACLE RAC虚拟机迁移v0.1版本控制分发控制一、环境配置信息 (4)二、方案目的 (7)三、操作过程 (8)1、从存储映射新的LUN给ESXI主机 (8)2、关闭数据库集群及虚拟机 (8)3、将虚拟机上共享盘从虚拟机配置中移除 (9)4、将两台虚拟机进行迁移 (11)5、将原有的共享盘和新的共享盘映射给虚拟机 (14)6、虚拟机开机并检查数据库运行情况 (19)7、配置新存储映射的共享盘 (20)8、在ASM磁盘组中添加新磁盘(在一个节点执行即可) (21)9、将老共享盘从磁盘组中删除 (23)10、将老磁盘从ESXI映射去除 (26)四、过程总结 (26)一、环境配置信息三台服务器组成VSPHERE集群,两台使用共享盘的虚拟机,rac-1和rac-2,共同使用的一块10G做为ORACLE OCR和一块50G的盘做为数据盘,使用的是RDM方式直接映射的裸盘:rac-1共三块盘,硬盘2和硬盘3为共享盘:rac-2共三块盘,硬盘2和硬盘3为共享盘:为了测试方便,从SCSI(模拟存储映射的LUN)映射过来两块盘10G和50G做为ORACLE RAC的共享盘:RAC1和RAC2两台虚拟机上的硬盘1为操作系统的安装硬盘,在本地硬盘上:二、方案目的使用共享盘的虚拟机在SPHERE环境中是不允许迁移的,本方案将使用共享盘(以ORACLE RAC为例)的虚拟机及共享盘数据迁到新存储(比如VSAN、存储LUN 等)上。
共享盘使用存储映射的LUN做为RDM映射给ORACLE RAC,同时将数据库从共享盘迁移到VSAN上并踢除原数据库使用的共享盘,实现虚拟机和数据库向新VSAN环境或存储的迁移三、操作过程1、从存储映射新的LUN给ESXI主机在每个ESXI主机上执行重新扫描存储后,可以看到从存储新映射给ESXI主机的两块盘,如下框所示:2、关闭数据库集群及虚拟机关闭数据库集群软件(两台节点都操作):关闭虚拟机(两台节点都操作):3、将虚拟机上共享盘从虚拟机配置中移除两台虚拟机硬盘2和硬盘3为共享盘,先将其移除,但不删除文件。
如何将数据库从文件系统迁移到ASM存储里
如何将数据库从文件系统迁移到ASM存储里由于ASM磁盘组里的文件不能通过普通的操作系统命令访问,因此如果要将数据库从文件系统迁移到ASM磁盘组里,则必须通过RMAN。
注意,迁移之前,如果启用了闪回数据库功能,则需要先关闭闪回数据库功能。
将数据库整体迁移到ASM的过程如下所示(本数据库启用了归档):<!--[if !supportLists]-->1)<!--[endif]-->修改初始化参数control_files和Flash Recovery Area:SQL> alter database backup controlfile to '/u01/control.ctl';SQL> alter system set control_files='+DgroupA' scope=spfile;SQL> alter system set db_recovery_file_dest='+DgroupB';<!--[if !supportLists]-->2)<!--[endif]-->正常关闭数据库。
SQL> shutdown immediate;<!--[if !supportLists]-->3)<!--[endif]-->启动RMAN,并将数据库启动到nomount阶段。
[oracle@book ora10g]$ rman target /RMAN> startup nomount;<!--[if !supportLists]-->4)<!--[endif]-->恢复刚才备份的控制文件,由于我们设置了初始化参数control_files,将其指向了磁盘组DgroupA,因此恢复出来的控制文件会存放在DgroupA里。
RMAN> restore controlfile from '/u01/control.ctl';Starting restore at 18-OCT-07using target database control file instead of recovery catalogallocated channel: ORA_DISK_1……output filename=+DGROUPA/ora10g/controlfile/current.256.636273263Finished restore at 18-OCT-07<!--[if !supportLists]-->5)<!--[endif]-->将数据库mount起来。
RAC 安装和配置及ASM最佳实践
8
在Linux上安装Oracle10g RAC
在安装的各个阶段运行 CVU (Cluster Verification Utility) 使用最新的被支持的操作系统版本并且正确设置核心参数 参考OTN上被验证了的多种配置 (只对Linux) - 包含了10g RAC在Linux上的很多配置情况 (包括不 同的Linux版本、不同的硬件配置、不同的存储方式等) - 详细列出了主机型号、CPU类型、内存大小、存储设备 的类型和容量、磁盘阵列(RAID)、网络设备、操作系统 及kernel的版本、oracle软件版本和补丁情况、安装的操 作系统package和oracle package、操作系统参数配置 、测试过的存储方式(如ASM或RAW DEVICE等)、驱动 器模块及配置情况的反馈等 - 详细情况请参考以下网址:
CRS Home (如果已安装CRS软件)
– –
<crs_home>/bin/cluvfy <crs_home>/cv/rpm/cvuqdisk-1.0.1-1.rpm (linux only)
Oracle Home (如果已安装RAC数据库软件)
–
$ORACLE_HOME/bin/cluvfy
© 2005-2006 Oracle Corporation All rights reserved.
在linux上安装oracle10grac在安装的各个阶段运行cvuclusterverificationutility包含了10grac在linux上的很多配置情况包括不同的linux版本不同的硬件配置不同的存储方式等详细列出了主机型号cpu类型内存大小存储设备的类型和容量磁盘阵列raid网络设备操作系统及kernel的版本oracle软件版本和补丁情况安装的操作系统package和oraclepackage操作系统参数配置测试过的存储方式如asm或rawdevice等驱动器模块及配置情况的反馈等详细情况请参考以下网址
探索ORACLE之ASM概念(完整版)
探索ORACLE之ASM概念(完整版)⼀、 ASM(⾃动存储管理)的来由:ASM是Oracle 10g R2中为了简化Oracle数据库的管理⽽推出来的⼀项新功能,这是Oracle⾃⼰提供的卷管理器,主要⽤于替代操作系统所提供的LVM,它不仅⽀持单实例,同时对RAC的⽀持也是⾮常好。
ASM可以⾃动管理磁盘组并提供有效的数据冗余功能。
使⽤ASM(⾃动存储管理)后,数据库管理员不再需要对ORACLE中成千上万的数据⽂件进⾏管理和分类,从⽽简化了DBA的⼯作量,可以使得⼯作效率⼤⼤提⾼。
⼆、什么是ASMASM它提供了以平台⽆关的⽂件系统、逻辑卷管理以及软RAID服务。
ASM可以⽀持条带化和磁盘镜像,从⽽实现了在数据库被加载的情况下添加或移除磁盘以及⾃动平衡I/O以删除“热点”。
它还⽀持直接和异步的I/O并使⽤Oracle9i中引⼊的Oracle数据管理器API(简化的I/O系统调⽤接⼝)。
ASM是做为单独的Oracle实例实施和部署,并且它只需要有参数⽂件,不需要其它的任何物理⽂件,就可以启动ASM实例,只有它在运⾏的时候,才能被其它数据访问。
在Linux平台上,只有运⾏了OCSSD服务(Oracle安装程序默认安装)了才能和访问ASM。
三、使⽤ASM的好处:1、将I/O平均分部到所有可⽤磁盘驱动器上以防⽌产⽣热点,并且最⼤化性能。
2、配置更简单,并且最⼤化推动数据库合并的存储资源利⽤。
3、内在的⽀持⼤⽂件4、在增量增加或删除存储容量后执⾏⾃动联系重分配5、维护数据的冗余副本以提⾼可⽤性。
6、⽀持10g,11g的数据存储及RAC的共享存储管理7、⽀持第三⽅的多路径软件8、使⽤OMF⽅式来管理⽂件四、 ASM冗余:ASM使⽤独特的镜像算法:不镜像磁盘,⽽是镜像盘区。
作为结果,为了在产⽣故障时提供连续的保护,只需要磁盘组中的空间容量,⽽不需要预备⼀个热备(hot spare)磁盘。
不建议⽤户创建不同尺⼨的故障组,因为这将会导致在分配辅助盘区时产⽣问题。
某政府部门ORACLE数据库系统数据迁移实施报告
XXXX局资源库系统数据库迁移项目实施报告2010-11-27目录1. 概述 (3)1.1. 项目背景 (3)1.2. 面临的问题 (3)1.3. 解决方案 (3)2. 实施计划 (3)2.1. 数据库迁移的流程 (3)2.2. 时间进度完成情况 (4)2.3. 实施结果 (5)3. 实施过程 (5)3.1. 服务器62和63的安装与配置 (5)3.1.1. 操作系统环境准备 (5)3.1.1.1. 修改内核参数 (5)3.1.1.2. 创建Oracle软件安装所需文件系统 (6)3.1.1.3. 创建数据库迁移用文件系统 (7)3.1.2. 安装Oracle 10g for Itanuim 软件 (7)3.1.2.1. 安装准备 (7)3.2. 数据库迁移过程 (12)3.2.1. 备份生产数据库(10.88.82.131) (12)3.2.2. 复制131备份数据至62服务器 (15)3.2.3. 恢复62上的9.2.0.1数据库 (15)3.2.4. 升级数据库至9.2.0.8 (22)3.2.5. 升级数据库至10.2.0.5 (24)3.2.6. 将数据库的文件系统转换为ASM (32)3.2.7. 将单实例转换为RAC (35)3.2.8. 迁移完的其它设置 (39)3.2.9. 测试 (41)1.概述1.1. 项目背景XXXX局资源库数据库目前版本为9.2.0.1,运行于两台HP主机上,服务器配置ServiceGuard 集群软件,对数据库提供双机热备保护。
数据规模约120GB。
数据库运行于非归档模式,使用rman备份数据库。
1.2. 面临的问题由于应用系统的特点,对数据库的可用性要求很高,要求数据库7×24可用。
业务的发展,对数据库系统提出了更多的容量和处理能力要求,数据库系统压力越来越大,系统的处理能力接近极限。
随着系统使用年限的增加,系统的维护成本也逐年提高,系统已渐渐不能适应业务的需求,需要对系统进行扩容改装。
如何将ASM数据库文件从一个磁盘组移动到另一个磁盘组
在ASM磁盘组之间移动文件的首选方法是使用RMAN。
RMAN对于自动存储管理至关重要,负责跟踪ASM文件名以及删除过时的ASM文件。
由于无法通过正常的操作系统接口访问ASM文件,因此RMAN是复制ASM文件的首选方式。
注意:从12c开始,您可以使用ALTER DATABASE MOVE DATAFILE SQL语句来重命名或重新定位在线数据文件。
以下示例将数据文件从Oracle ASM的一个位置移动到另一个Oracle ASM 位置。
ALTER DATABASE MOVE DATAFILE '+dgroup_01/data/orcl/datafile/user1.dbf' TO '+dgroup_02/data/orcl/datafile/user1.dbf';移动数据文件从一个磁盘组到另一个磁盘组的步骤如下:1) 确定要移动的数据文件2) 确定要将文件移动到的目标磁盘组3) 将文件离线4) 使用RMAN或DBMS_FILE_TRANSFER将文件复制到新的磁盘组5) 重命名文件以指向新的位置6) 恢复文件7) 将文件上线8) 验证新文件的位置9) 删除原始位置的文件以下是详细过程:1)确定要移动的数据文件在数据库实例中执行SQL:ORCL> SELECT FILE_NAME FROM DBA_DATA_FILES:+ASMDSK2/orcl/datafile/users.256.565313879 <======= Move this to ASMDSK1.+ASMDSK1/orcl/sysaux01.dbf+ASMDSK1/orcl/undotbs01.dbf+ASMDSK1/orcl/system01.dbf2)确定要将文件移动到的目标磁盘组在ASM实例中执行SQL:ASM> SELECT GROUP_NUMBER, NAME FROM V$ASM_DISKGROUP;GROUP_NUMBER NAME------------ ---------1 ASMDSK13)将文件离线4)使用RMAN或DBMS_FILE_TRANSFER将文件复制到新的磁盘组方法一:使用DBMS_FILE_TRANSFER包SQL:ORCL>create or replace directory orcl1 as '+asmdsk1/orcl/datafile';SQL:ASM> Alter disgroup asmdsk2 add directory '+asmdsk2/test';SQL:ORCL> create or replace directory orcl2 as '+asmdsk2/test';SQL:ORCL>BEGINDBMS_FILE_TRANSFER.COPY_FILE(source_directory_object => 'ORCL1',source_file_name => 'users.259.565359071',destination_directory_object => 'ORCL2',destination_file_name => 'USERS01.DBF');END; Database altered.方法二:使用RMAN copy$ rman target system@orcl10target database Password:connected to target database: ORCL (DBID=1089529226)RMAN>RMAN> COPY DATAFILE '+ASMDSK2/orcl/datafile/users.256.565313879' TO '+ASMDSK1';Starting backup at 03-AUG-05using target database controlfile instead of recovery catalogallocated channel: ORA_DISK_1channel ORA_DISK_1: sid=146 devtype=DISKchannel ORA_DISK_1: starting datafile copyinput datafile fno=00004name=+ASMDSK2/orcl/datafile/users.256.565313879output filename=+ASMDSK1/orcl/datafile/users.259.565359071 tag=TAG20050803T121109 recid=2 stamp=565359071channel ORA_DISK_1: datafile copy complete, elapsed time: 00:00:03Finished backup at 03-AUG-055)重命名文件以指向新的位置6)恢复文件7)将文件上线8)验证新文件的位置9)删除原始位置的文件注意:大多数自动存储管理文件不需要手动删除,因为作为Oracle管理的文件,当它们不再需要时会被自动移除。
Oracle单实例迁移到RAC实例--使用RMAN异机恢复
Oracle单实例迁移到RAC实例--使⽤RMAN异机恢复Oracle 官⽹有关单实例迁移到RAC的⼀个步骤说明:How to Convert 10g Single-Instance database to 10g RAC using Manual Conversion procedure [ID 747457.1]RMAN 备份异机恢复并创建新DBID⼀. ⼤致操作步骤如下:1. 安装Clusterware 和 ASM 实例2. 备份源库,并将备份集copy到rac 节点上3. 在RAC 上还原并修改初始化参数⽂件,还原控制⽂件和数据⽂件4. 增加undo 表空间和redo log 线程组,创建密钥⽂件5. 配置RAC监听6. 将数据库等资源添加到CRS注意:迁移的2个db版本版本要⼀致。
包括⼩版本。
⽐如10.2.0.4.0.我这个测试的时候是从10.2.0.1.0 迁移到10.2.0.4.0. 结果在open resetlogs的时候报错了,必须要先升级后,才能打开。
Redhat 5.4 Orcle RAC 数据库从10.2.0.1升级到 10.2.0.4⼆. 具体操作步骤2.1 安装Clusterware 和ASM 实例这个参考Blog:Redhat 5.4 Oracle 10g RAC Openfiler+Multipath + RAW+ ASM 安装⽂档安装之后的进程如下:[oracle@rac1 u01]$ sh crs_stat.shName Target State Host------------------------------ ---------- --------- -------ora.rac1.ASM1.asm ONLINE ONLINE rac1ora.rac1.gsd ONLINE ONLINE rac1ora.rac1.ons ONLINE ONLINE rac1ora.rac1.vip ONLINE ONLINE rac1ora.rac2.ASM2.asm ONLINE ONLINE rac2ora.rac2.gsd ONLINE ONLINE rac2ora.rac2.ons ONLINE ONLINE rac2ora.rac2.vip ONLINE ONLINE rac22.2 在源库⽤RMAN 备份,并将备份⽂件copy到rac上相关备份脚本,参考Blog:Linux 平台下 RMAN 全备和增量备份 shell 脚本Nocatalog 下的RMAN 增量备份 shell脚本源库实例名:anqing,为了确认迁移成功,我们现在源库上创建⼀个表dave,并插⼊⼀条记录。
医院信息化方案-HIS数据库升级到Oracle 10g单节点升级到RAC集群的实现
HIS数据库升级到Oracle 10g RAC集群的实现广西钦州市第二人民医院 李香乐摘要:随着医院信息化程度的不断提高,医院的各项业务对信息系统的依赖程度越来越大,我院的HIS系统后台数据库为Oracle 10g,担负着整个医院收费管理、药房管理、医生护士工作、电子病历等重要业务。
由于数据库运行在单实例,万一数据库服务器宕机,那么整个医院的HIS系统将停止运行,导致的后果将不堪设想,造成医院的经济损失及负面的社会影响。
因此,当务之急,必须着手建立一个高可用的群集环境。
关键词: ORACLE HIS RAC1 需求分析:由于医院业务的实时性很强,HIS系统必须能够保证24小时不间断运行。
常见的集群类型有负载均衡(简称LB)和高可用性(简称HA),LB主要是把业务尽可能平均合理地分摊到集群各个节点,HA则侧重于提高系统的可用性,当某个节点发生了故障,业务将由其他节点来代替。
在实际的集群系统中,HA和LB这两种基本类型经常会发生混合与交杂。
RAC就同时具有HA和LB的两种能力[1]。
因此,需要将单实例升级到RAC集群来保证HIS系统24小时不间断运转。
2 系统规划:2.1 硬件规划:采用两台IBM 3850 M2服务器,每台配置两颗四核7320 CUP,16G 内存,提供了强劲处理能力。
存储采用IBM DS4700,配置双控制器,8个300G光纤硬盘,6个组成RAID 1+0,2个作为热备盘,既确保硬盘的冗余度,又确保了联机事务处理的I/O高并发能力。
2.2 软件规划: 操作系统安装Linux系统,版本RedHat AS 4 update 7 X64,不但稳定性可以与UNIX相媲美,而且还极少受病毒感染。
Oracle 10g软件分别装到两个节点的本地硬盘,数据文件使用ASM的方式存储在DS4700上,使磁盘性能接近裸设备,而管理更加简单方便。
3 实施步骤:3.1 搭建RAC环境: 分别在两台服务器上安装配置好Linux系统,安装配置好ASM 软件包,接着安装Oracle CRS和数据库文件,并创建数据库。
oracle10g RAC ASM rman备份到单节点文件系统恢复处理步骤
一、RAC 转换单机环境
1、创建pfile
2、relink oracle
cd $ORACLE_HOME/rdbms/lib
make -f ins_rdbms.mk rac_off
make -f ins_rdbms.mk ioracle
) SIZE 500M,
GROUP 6 (
'/oradata/datafs/app/redo601',
'/oradata/datafs/app/redo602'
) SIZE 500M,
GROUP 7 (
'/oradata/datafs/app/redo701',
set newname for datafile '+ATMDG/postdbs/pafetbs101.dbf' to '/oradata/datafs/app/pafetbs101.dbf';
set newname for datafile '+ATMDG/postdbs/pafetbs201.dbf' to '/oradata/datafs/app/pafetbs201.dbf';
run
{
allocate channel c1 type disk;
allocate channel c2 type disk;
allocate channel c3 type disk;
allocate channel c4 type disk;
set newname for datafile '+ATMDG/postdbs/datafile/system.256.842220161' to '/oradata/datafs/app/system.256.842220161';
oracle数据文件迁移到ASM
3、将数据文件设置成offline状态
alter database datafile 10 offline;
(rman) switch datafile 10 to copy;
(rman) recover database datafile 10;
alter database datafile 10 online;
适用于:
Oracle Database - Enterprise Edition - Version 11.2.0.1 tபைடு நூலகம் 11.2.0.4 [Release 11.2]
Information in this document applies to any platform.
症状:
datafile被错误的添加到了文件系统中,应该是放在asm磁盘组中的。
Database altered.
5.确认正确的文件名和路径
SQL> select file_name, file_id, online_status from dba_data_files where file_id=6;
FILE_NAME FILE_ID ONLINE_STATUS
Database altered.
4. recover 该datafile ,并且onlime 该datafile
SQL> alter database recover datafile 6;
Database altered.
SQL> alter database datafile 6 online;
方法二,
使用asmcmd cp命令 把datafile从文件系统移动(move)到asm磁盘组中--针对11gR2
使用NBU备份集恢复数据库(单机-RAC)
一、配置环境介绍新搭建了一套RAC环境(没有安装实例),文档中称作目标端,配置信息如下:Oracle版本:11.2.0.4SID :RAC1、RAC2此次恢复实验取总部OA(10.0.1.128)生产库备份数据,OA在文档中称作源端二、在新环境安装NBU客户端具体方法参考《01-隆基硅NBU实施文档.docx》1.执行oracle_link在client上的oracle账户下,执行oracle_link,将NBU与Oracle的tape库进行链接$ /usr/openv/netbackup/bin/oracle_link2.查看备份集在需要恢复的client上,利用bplist检查oracle以往备份的备份集[root@rac1 ~]# cd /usr/openv/netbackup/bin/[root@ bin]# ./bplist -C (源端主机名) -t 4 -R -l /./bplist -C -t 4 -R -l /3.修改用户属组查看目标端的Oracle用户属组ID是否与源端一致,如果不一致,需要修改(只需要用户一致,组不影响)groupmod -g 601 dbausermod -u 1002 oracle查找并修改文件(1001为Oracle用户原来的uid,602为文件原来的gid)。
RAC环境慎用,有部分软链接修改不了find /u01 -user 1001find / -user 1001 -exec chown oracle {} \;find / -group 602 -exec chgrp dba {} \;relink all三、在源端创建pfile文件SQL> create pfile='/tmp/ekp_init.ora' from spfile;修改目标端两个节点的Oracle环境变量四、创建必要的目录1. 修改导出来的pfile文件,创建必要目录(所有节点执行)[oracle@rac1 ~]$ mkdir -p /u01/app/oracle/admin/EKP/adump2.使用grid用户下在共享设备创建必要的目录[grid@rac1 ~]$ asmcmdASMCMD> lsARCH/DATA/OCR/ASMCMD> cd DATAASMCMD> mkdir EKPASMCMD> cd EKPASMCMD> mkdir TEMPFILEASMCMD> mkdir DATAFILEASMCMD> mkdir ONLINELOGASMCMD> mkdir PARAMETERFILEASMCMD> mkdir controlfile五、创建口令文件[oracle@rac1~]$ orapwd file=$ORACLE_HOME/dbs/orapw$ORACLE_SID password=oracle force=y[oracle@rac2~]$ orapwd file=$ORACLE_HOME/dbs/orapw$ORACLE_SID password=oracle force=y六、用源端 pfile 创建目标端数据库 spfile1.根据实际内存调整pfile文件注意adump路径,dbname,增加instance_number,undo参数,控制文件2.在目标端用 pfile.ora 在共享设备上创建spfileSQL> create spfile='+DATA/TMSPROD/spfileTMSPROD.ora' from pfile='/tmp/tms_pfile.ora';3.在所有节点上创建 pfile 内容指向共享设备上的spfile文件Vi /u01/app/oracle/product/11.2.0/db_1/dbs/initTMSPROD1.ora SPFILE='+DATA/TMSPROD/spfileTMSPROD.ora'七、还原控制文件1.启动数据库到nomountSQL> startup nomount pfile = '/tmp/ekp_init.ora';2.恢复控制文件,启动到mountrun{allocate channel c1 TYPE SBT_TAPE;SEND 'NB_ORA_SERV=LONGI-XA-NBU,NB_ORA_CLIENT=ekp-db2';restore controlfile from '/c-3745138837-20180806-02';release channel c1;}启动数据库到mount状态RMAN> alter database mount;八、还原数据文件1.set newnameset linesize 1000set pagesize 10002.还原run{allocate channel c1 type SBT_TAPE;allocate channel c2 type SBT_TAPE;allocate channel c3 type SBT_TAPE;allocate channel c4 type SBT_TAPE;set newname for datafile ... ...send 'NB_ORA_SERV=LONGI-XA-NBU,NB_ORA_CLIENT=ekp-db2';restore database;switch datafile all;recover database;release channel c1;release channel c2;release channel c3;release channel c4;}九、打开数据库SQL> alter database open resetlogs;删除dblink(根据实际情况选做)SQL> set lines 160set pagesize 500col db_link for a70select owner,db_link from dba_db_links ;select 'drop public database link '|| db_link|| ';' from dba_db_links where owner = 'PUBLIC';二、调整redo,undo1.redo1,删除还原的redo信息alter database drop logfile group #;2,增加新的redoalter database add logfile thread 1 group 1 '+DATA' size 50m;alter database add logfile thread 1 group 2 '+DATA' size50m;alter database add logfile thread 1 group 3 '+DATA' size50m;alter database add logfile thread 2 group 4 '+DATA' size50m;alter database add logfile thread 2 group 5 '+DATA' size50m;alter database add logfile thread 2 group 6 '+DATA' size50m;使新添加的redo生效SQL> alter database enable THREAD 2;3,查看redo信息select a.group#,a.THREAD#,a.status,b.member from v$log a,v$logfile b where a.group#=b.group#;2.undo1,增加undo表空间create undo tablespace UNDOTBS2 datafile '+DATA' size 500M autoextend on next 1g maxsize 10G;2,查看增加参数文件中undo_tablespace参数如果不需要修改数据库名称,则下面步骤可省略,直接检查修改参数文件中rac相关参数,然后修改环境变量,注册数据库信息十、调整数据库其他信息1.关闭数据库所有实例关闭实例检查参数文件,设置*.cluster_database=false然后把其中一个实例启动到mount状态下SQL> startup mount pfile ='/tmp/mes_pfile.ora'2.使用nid修改数据库名称nid target=system/oracle dbname=RAC3.修改参数文件修改环境变量实例名称和参数文件名称, cluster_database等SQL> startup mount pfile = '/tmp/ekp_init.ora';SQL> alter database open resetlogs;SQL> create spfile='+DATA' from pfile='/tmp/ekp_init.ora';修改pfile内容$ORACLE_HOME/dbs/initEKP1.ora然后修改其他节点的数据库的环境变量,参数文件,然后启动数据库SQL> alter database enable thread 2;SQL> alter system set cluster_database=true scope=spfile sid='*';4.修改TEMP表空间清除并建立tempfileselect TABLESPACE_NAME,FILE_NAME,status from dba_temp_files;select 'alter database tempfile '''||name||''' offline;' from v$tempfile;select 'alter database tempfile '''||name||''' drop;' from v$tempfile;alter tablespace TEMP_NAME add tempfile '+DATA' size 2G reuse autoextend on next 128m maxsize 30g;十一、将其他的信息注册到CRS里关闭所有节点数据库SQL> shutdown immediate[oracle@rac1 ~]$ srvctl add database -d EKP -o $ORACLE_HOME -p +data/ekp/PARAMETERFILE/spfile.3375.983445137[oracle@rac1 ~]$ srvctl add instance -d EKP -i EKP1 -n rac1[oracle@rac1 ~]$ srvctl add instance -d EKP -i EKP2 -n rac2[oracle@rac1 ~]$ srvctl start database -d EKP -o open十二、验证1.查看数据库启动情况[oracle@rac1 ~]$ srvctl status database -d EKP2.数据库配置信息[oracle@rac1 ~]$ srvctl config database -d EKP3.集群配置信息[grid@rac1 ~]$ crsctl stat res -t。
oracle 11gR2 RAC更换存储数据迁移方案
数据库更换存储迁移方案生产数据库环境数据库版本:Oracle 11g R2 RAC (11204)数据存储方式:共享存储,ASM管理ASM 组及名字: crsdg,datadg数据库实例名:zgdb1,zgdb2数据库数据量:100G操作系统版本:RedHat 5.8数据迁移实施步骤流程目前数据库的数据是存放在和其他业务共用的存储上,此次实施的目的是将数据迁移到新的存储上而不影响业务正常运行,迁移方案主要利用ASM 重平衡特性实现更换存储迁移数据,时间需要预计2天左右,大体迁移步骤就是如下几步操作:1.首先保证新存储和RAC当前节点间的可用性;2.将新存储划分LUN给2台数据库服务器,2台数据库服务器不替换,可以重新规划存储方案或者保持原存储方案,目前依照原存储规划方案;3.LUN磁盘映射给ORACLE集群,通过asmca或者asm命令行添加到ASM组中;4.迁移原OCR和votedisk表决盘到新ASM组;5.给现有ASM磁盘组添加ASM磁盘(新存储分配的),进行数据DATADG迁移,采用ASM重平衡的方式;6.删除原存储的ASM磁盘;7.检查系统、集群、数据库日志;新存储映射流程存储划分LUN映射1.存储和服务器之间连线;2.划分存储LUN,保证LUN数量及大小与之前旧存储划分一致;3.在数据库服务器安装多路径软件,保证2台服务链路一致;4.检查链路是否一致 powermt display dev=allLUN映射到ORACLE1.编辑/etc/udev/rules.d/50-udev.rules文件,添加新存储映射SUBSYSTEM=="block", KERNEL=="emcpowera", GROUP="asmadmin", OWNER="grid", MODE="0660"SUBSYSTEM=="block", KERNEL=="emcpowerb", GROUP="asmadmin", OWNER="grid", MODE="0660"SUBSYSTEM=="block", KERNEL=="emcpowerc", GROUP="asmadmin", OWNER="grid", MODE="0660"SUBSYSTEM=="block", KERNEL=="emcpowerd", GROUP="asmadmin", OWNER="grid", MODE="0660"SUBSYSTEM=="block", KERNEL=="emcpowere", GROUP="asmadmin", OWNER="grid", MODE="0660"SUBSYSTEM=="block", KERNEL=="emcpowerf", GROUP="asmadmin", OWNER="grid", MODE="0660"2.启动udev_start,识别存储路径3.切到grid用户,使用ASMCA,添加新的ASM磁盘组数据库双重备份数据库迁移实施之前,先把当前数据进行备份,防止迁移异常之后,能够及时恢复数据,使用2种方式对数据库进行备份;方式一:rman备份数据1.开启数据库归档,启动到mount下,alter database archivelog2.备份参数文件c reate pfile=’/home/oracle/backup/init.ora’ from spfile;3.备份数据库export ORACLE_SID= zgdb1rman target / log='/tmp/rman_full.log' append <<EOFrun{allocate channel c1 type disk;allocate channel c2 type disk;allocate channel c3 type disk;allocate channel c4 type disk;backup as compressed backupset filesperset 6 databaseformat '/home/oracle/backup/full_%d_%T_%s_%p';backup current controlfile format '/home/oracle/backup/ctl_%d_%T_%s_%p';}EOF4.备份密码文件cp $ORACLE_HOME/dbs/initpwzgdb1 /home/oracle/backup/5.数据库还原startup pfile=’/home/oracle/backup/init.ora’nomount;restore controlfile from '/home/oracle/rman/ctl_ ';alter database mount;restore database;recover database;alter database open;方式二:数据泵方式进行数据库备份1.创建directory目录create directory backup as '/home/oracle/backup';2.授权导出用户权限grant read,write on directory backup to system;3.备份数据expdp system/oracle directory=backup dumpfile=zgdb.dmp logfile=expdp.log schemas=hsman exclude=statistics cluster=n parallel=8;4.恢复数据impdp system/oracle directory=backup dumpfile=zgdb.dmp logfile=impdp.log schemas=hsman cluster=n parallel=8ASM迁移详细步骤集群迁移实施步骤1.grid用户下,使用asmca添加新的ASM组ocrvoting,3个10G LUN,采用normal方式;2.grid用户下,添加votediskcrsctl query css votediskcrsctl replace votedisk ocrvotingcreate pfile='/home/grid/asmpfile.ora' from spfile;create spfile='+ocrvoting' from pfile='/home/grid/asmpfile.ora';3.root用户下迁移ocrocrcheckocrconfig -add +ocrvotingocrconfig -replace +vocrvoting -replacement +crsdgocrconfig -delete +crsdgsqlplus / as sysasmalter diskgroup crsdg dismount;drop diskgroup crsdg including contents;4.检查votedisk和ocr状态crsctl query css votediskocrcheck数据迁移实施步骤1.查看数据磁盘状态sqlplus / as sysdbacol GROUP_NUMBER format 99col state format a10col name format a15col path format a20col failgroup format a20set line 200select GROUP_NUMBER,DISK_NUMBER,STATE,REDUNDANCY,TOTAL_MB,FREE_MB,name,path,failgroup from v$asm_disk order by GROUP_NUMBER;2.迁移数据磁盘组数据(PATH),时间较长;SQL> alter diskgroup DATA add disk '/DEV/EMCPOWER1' rebalance power 11;Diskgroup altered.SQL> alter diskgroup DATA add disk '/DEV/EMCPOWER2' rebalance power 11;Diskgroup altered.SQL> alter diskgroup DATA add disk '/DEV/EMCPOWER3' rebalance power 11;Diskgroup altered.由于指定rebalance power 11,ASM会自动均衡ASM磁盘组DATA里面存放的数据在各ASM磁盘的分布。
rac工作原理
rac工作原理RAC(Real Application Clusters)是一种数据库集群技术,用于提供高可用性和可伸缩性的Oracle数据库解决方案。
该技术使得多个计算机节点可以共享同一个数据库,从而实现数据库的并行处理和负载均衡。
RAC的工作原理可以简单概括为以下几个步骤:1. 数据库组成:RAC集群由多个独立的计算机节点组成,每个节点都安装有Oracle数据库实例。
这些节点通过高速网络互连,形成一个共享存储的集群。
2. 共享存储:RAC集群使用共享存储解决方案,通过存储区域网络(SAN)或网络附加存储(NAS)等技术将数据库文件存储在集群节点之外的共享存储设备上。
这样,所有节点都可以访问相同的数据库文件。
3. 共享缓存:每个节点都有自己的本地缓存区域(SGA),用于缓存常用的数据块。
同时,RAC集群还有一个全局缓存(Global Cache),用于缓存被其他节点修改的数据块。
这样,每个节点可以直接从本地缓存读取数据,而无需通过网络访问其他节点。
4. 缓存一致性:RAC通过缓存一致性协议来保证数据的一致性。
当一个节点修改了一个数据块时,它会通知其他节点使其本地的缓存失效,并请求其他节点将最新的数据块传送过来。
这样,所有节点的缓存都保持一致,从而避免数据冲突和不一致的情况。
5. 会话管理:RAC通过Oracle集群软件管理会话的分发和负载均衡。
当客户端连接到集群时,Oracle会根据负载均衡策略将会话分发到最空闲的节点上。
如果某个节点故障,会话会自动切换到其他可用节点上,从而实现高可用性。
综上所述,RAC通过共享存储、共享缓存和缓存一致性协议等机制,实现多个节点的并行处理和数据共享,从而提供高可用性和可伸缩性的数据库解决方案。
Oracle11gr2RAC到单实例的DG搭建(落地备份)
Oracle11gr2RAC到单实例的DG搭建(落地备份)⼀、实施⽅案这⼏天给客户的Oracle 11gr2 RAC搭建到单实例的DG,整理了⼀下步骤,理清⼀下思路,⽂中敏感信息已做模糊处理。
RAC⾄单实例的Dataguard为双节点各⾃传递⾃⼰当前线程的归档⾄备库。
由于节点1存储不⾜,备份在节点2上跑。
整体搭建思路如下:备库⽂件⽬录创建à主库force logging(已是归档模式)à备份节点⼆à复制节点⼆⼝令⽂件à创建备库pfileà创建备库à恢复备库à创建主备standby logfileà配置主备监听及TNSà修改主库(节点⼀、节点⼆)参数à打开备库并实时应⽤1.1 主备环境说明Primary Node1Node2Hostname hostname01hostname02Public10.10.10.14110.10.10.143VIP10.10.10.14210.10.10.144SCAN10.10.10.140Instance_name repprod1repprod2DB_name repprodService_names repprodDB_unique_name repprodStorage_mode ASMStandby NodeHostname hostnamedgIP10.10.10.191Instance_name RepproddgDB_name repprodService_names repproddgDB_unique_name repproddgStorage_mode Local disk1.2 ⽂件系统规划Primary Standby+DATADG/repprod/datafile/oradata/datafile+DATADG/repprod/tempfile/oradata/tempfile+ARCDG/repprod/onlinelog/oradata/onlinelog+DATADG/repprod/onlinelog+ARCDG//oradata/arch1.3 实施操作步骤1.3.1 备库存储和⽂件系统创建#standby库上新建各个数据⽂件的存放位置$mkdir -p /oradata/datafile --数据⽂件$mkdir -p /oradata/tempfile --临时⽂件$mkdir -p /oradata/onlinelog --redo⽇志$mkdir -p /oradata/controlfile --控制⽂件$mkdir -p /oradata/arch --归档⽂件#备库为全新安装oracle 11.2.0.4软件,需要⼿⼯建⽴以下⽬录,保持与主库⽬录⼀致。
oracle11gRAC的基本概念
oracle11gRAC的基本概念oracle 11g RAC 的一些基本概念(一)总的来说,oracle 11g r2 RAC提供了以下功能:1. 高可用:shared-everything 模式保证了单节点的故障不会停止服务,集群中的其他节点将快速接管2. 可扩展性:多节点分担负载,可以提供远超单机数据库能提供的处理能力。
且增删节点可以在线完成,不需要停机3. 易用性:多个数据库可以加入到一个集群中4. 低成本:RAC可以部署在标准硬件上,硬件上节省的成本抵消了购买license的成本Oracle 11g r2 还提供了一个叫RAC One Node的新功能。
Oracle发现一些RAC的部署纯粹只是为了高可用,而虚拟化越来越多的被用户所使用,并成为了一个新的趋势。
Oracle One Node建立在以下基础之上:Oracle Clusterware、Oracle ASM、Oracle database。
我们再来看一眼RAC的结构图相比较单机数据库,RAC需要一个共享存储;一个私有网络来进行集群内部通讯;一个公有网络来连接应用和客户端;配置虚拟IP来提高节点故障时的连接速度,当一个节点出现故障,它的虚拟ip立即指向其他节点的ip上(若不配置vip,当一个节点发生故障时,新的连接将会发生等待,直到与该节点ip的通讯出现time out)。
Failover的连接配置有两种连接方式可以实现数据库连接的failover1. TAF(Transparent Application Failover)让我们看一下官方文档。
TAF让Oracle Net将一个失效的连接从故障点转移到另一个监听上,用户能使用这个新的连接来继续未完成的工作,这是一个client端的功能。
TAF可以配置为使用client端的(Transparent Network Substrate)TNS 连接字符串来连接,或者使用server端的服务。
RAC环境数据库的备份(一)
RAC环境数据库的备份(一)RAC环境的备份、恢复和普通数据库的备份、恢复是有一些区别的。
这个区别主要体现在RAC环境的特殊性上。
根据Oracle的RAC环境的不同,RMAN备份、恢复操作也是不同的。
如果RAC环境是建立在CLUSTER文件系统上的,或者是建立在ASM上的,那么备份和恢复过程可能会很简单,基本上和普通的数据库环境没有太多的区别。
如果RAC环境是建立在裸设备上的,由于归档日志无法存储在裸设备上,那么归档日志文件必须放在多个节点的本地硬盘上,这时备份和恢复就变得和普通的数据库环境有所差异。
这里先讨论一下 ASM环境上建立的RAC数据库的备份。
如果将归档日志放在ASM上,那么两个节点都是可以备份的,这个时候,备份和普通的单实例数据库没有差别。
SQL> SHOW PARAMETER LOG_ARCHIVE_DEST_1------------------------------------ ----------- ------------------------------log_archive_dest_1 string LOCATION=+DISK/testrac/$ rman target /RMAN> configure channel device type disk format'/data1/backup/%U';RMAN> backup database plus archivelog delete all input;数据库的恢复也很简单,先修改一些数据:SQL> CONN TEST/TEST已连接。
SQL> SELECT COUNT(*) FROM T;COUNT(*)----------SQL> INSERT INTO T SELECT ROWNUM FROM DBA_OBJECTS;已创建51880行。
SQL> COMMIT;提交完成。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
set newname for datafile 4 to '+DATA/sytong/DATAFILE/user01.dbf';
restore database;
5、不原数据库(文件路径的转换)
6、恢复数据库,打开强制数据库
7、单库参数变成RAC参数文件
8、参加UNDO表空间
9、参加日志组
10、允许线程生效
11、其它节点startup (本地文件参数,指定到ASM参数中)
12、用srvctl add database和instante
-----------------------------------------------------------
sytong1.thread=1
*.undo_management='AUTO'
sytong2.undo_tablespace='UNDOTBS2'
sytong1.undo_tablespace='UNDOTBS1'
sytong3.undo_tablespace='UNDOTBS3'
*.user_dump_dest='/data/oracle/admin/sytong/udump'
第十一步骤:将定各节点initsytong[1-3].ora的spfile路径
[oracle@dba~]$ cat /data/oracle/product/10.2.0/db_1/dbs/initsytong1.ora
spfile='+DATA/SYTONG/SPFILE/spfilesytong.ora'
alter database rename file '/data/oracle/oradata/sytong/redo02.log' to '+DATA';
alter database rename file '/data/oracle/oradata/sytong/redo03.log' to '+DATA';
#sytong2.instance_number=3
#sytong2.instance_number=2
#sytong1.instance_number=1
*.job_queue_processes=10
#sytong1.local_listener='LISTENERS_sytong1'
*.db_create_file_dest='+DATA'
*.db_domain=''
*.db_file_multiblock_read_count=16
*.db_name='sytong'
*.dispatchers='(PROTOCOL=TCP) (SERVICE=sytongXDB)'
一. 大致操作步骤如下:
1. 安装Clusterware 和 ASM 实例
2. 备份源库,并将备份集copy到rac 节点上
3. 在RAC 上还原并修改初始化参数文件,还原控制文件和数据文件
4. 增加undo 表空间和redo log 线程组,创建密钥文件
5. 配置RAC监听
6. 将数据库等资源添加到CRS
第四步骤:在RMAN中还原控制文件
restore controlfile from '/home/oracle/oracle/ptdb-20140712-852739643-3_1.dbf'
第五步骤:在ASM中创建文件
export ORACLE=+ASM1
asmcmd
ASMCMD> pwd
*.core_dump_dest='/data/oracle/admin/sytong/cdump'
*.db_block_size=8192
*.db_create_file_dest='+DATA'
*.db_domain=''
*.db_file_multiblock_read_count=16
#sytong2.local_listener='LISTENERS_sytong2'
#sytong2.local_listener='LISTENERS_sytong3'
#sytong1.log_archive_dest_1='location=/arch/arch1'
#sytong2.log_archive_dest_1='location=/arch/arch2'
*.audit_file_dest='/data/oracle/admin/sytong/adump'
*.background_dump_dest='/data/oracle/admin/sytong/bdump'
#*.cluster_database_instances=3
#*.cluster_database=true
-------------------------------------------------------
run {
set newname for datafile 1 to '+DATA/sytong/DATAFILE/system01.dbf';
set newname for datafile 2 to '+DATA/sytong/DATAFILE/undotbs01.dbf';
sytong2.log_archive_dest_1='location=/arch/arch2'
sytong3.log_archive_dest_1='location=/arch/arch3'
*.open_cursors=300
*.pga_aggregate_target=199229440
*.remote_login_passwordfile='exclusive'
*.sga_target=599785472
#sytong2.thread=3
#sytong2.thread=2
#sytong1.thread=1
*.undo_management='AUTO'
#sytong2.undo_tablespace='UNDOTBS3'
+DATA/SYTONG/DATAFILE 创建datafile目录
ASMCMD> pwd
+DATA/SYTONG/SPFILE 创建spfile目录
第六步骤:在RMAN中还原数据库
catalog start with '/data/arch1';(拷贝的备份片所放的目录)
*.db_name='sytong'
*.dispatchers='(PROTOCOL=TCP) (SERVICE=sytongXDB)'
sytong2.instance_number=3
sytong2.instance_number=2
sytong1.instance_number=1
*.job_queue_processes=10
一.具体操作步骤:
第一步骤,安装Clusterware 和 ASM 实例(略过)
第二步骤,备份源库,并将备份集copy到rac 节点上(略过)
第三步骤,在RAC 上还原并修改初始化参数文件 vi initsytong Nhomakorabeaora
-----------------------------------------------------------------------
第十步骤:将spfile.ora放到ASM中
[oracle@dba ~]$ sqlplus / as sysdba
idle> create spfile='+DATA/SYTONG/SPFILE/spfilesytong.ora' from pfile='/home/oracle/back1/pfilesytong.ora';
*.compatible='10.2.0.5.0'
*.control_files='+DATA/sytong/controlfile/current.260.852633697'
*.core_dump_dest='/data/oracle/admin/sytong/cdump'
*.db_block_size=8192
switch datafile all;
switch tempfile all;
}
--------------------------------------------------------
recover database;
第七步骤:修改控制文件中日志文件的指针
alter database rename file '/data/oracle/oradata/sytong/redo01.log' to '+DATA';