首页 / 数据库 / MySQL / 利用存储级的复制技术将一个ASM数据库快速clone到目标环境
生产库是建在ASM上的两节点RAC,测试库是单节点的安装了Oracle restart,版本和生产一样同为11.2.0.3 现使用存储级的复制软件将生产库的所有DG拷贝到测试库所在的磁阵,以快速构建出一个测试环境 以下记录了存储复制完成后,测试库搭建的全过程:如果我们安装Oracle Restart环境时选择的是"Install Oracle Grid Infrastructure for a Standalone software only",那么安装完后还要进行如下配置,如果已经配置好了ASM那么直接进入"2、启动ASM实例,Mount磁盘组"///////////////// // 1、oracle restart安装后的配置 ///////////////// ###root用户执行,其中ORACLE_HOME是grid用户下的变量 export DISPLAY=10.10.176.140:0.0 export ORACLE_HOME=/oracle/app/grid $ORACLE_HOME/perl/bin/perl -I $ORACLE_HOME/perl/lib -I $ORACLE_HOME/crs/install $ORACLE_HOME/crs/install/roothas.plUsing configuration parameter file: /oracle/app/grid/crs/install/crsconfig_params Creating trace directory User ignored Prerequisites during installation LOCAL ADD MODE Creating OCR keys for user "grid", privgrp "oinstall".. Operation successful. LOCAL ONLY MODE Successfully accumulated necessary OCR keys. Creating OCR keys for user "root", privgrp "system".. Operation successful. CRS-4664: Node qc26702a successfully pinned. Adding Clusterware entries to inittabqc26702a 2015/07/22 16:35:26 /oracle/app/grid/cdata/qc26702a/backup_20150722_163526.olr Successfully configured Oracle Grid Infrastructure for a Standalone Server ###可以看到基础资源已经注册到了oracle restart环境 grid@qc26702a:/home/grid>crsctl status res -t -------------------------------------------------------------------------------- NAME TARGET STATE SERVER STATE_DETAILS -------------------------------------------------------------------------------- Local Resources -------------------------------------------------------------------------------- ora.ons OFFLINE OFFLINE qc26702a -------------------------------------------------------------------------------- Cluster Resources -------------------------------------------------------------------------------- ora.cssd 1 OFFLINE OFFLINE ora.diskmon 1 OFFLINE OFFLINE ora.evmd 1 ONLINE ONLINE qc26702a
###继续进行配置,这步主要是更新oracle Inventory,以Grid用户执行 su - grid export DISPLAY=10.10.176.140:0.0 $ORACLE_HOME/oui/bin/runInstaller -updateNodeList ORACLE_HOME=$ORACLE_HOME -defaultHomeName CLUSTER_NODES= CRS=TRUE Starting Oracle Universal Installer...Starting Oracle Universal Installer...Checking swap space: must be greater than 500 MB. Actual 16384 MB Passed The inventory pointer is located at /etc/oraInst.loc The inventory is located at /oracle/app/oraInventory "UpdateNodeList" was successful.###使用asmca配置ASM实例,并启动ASM instance 创建过程中必须指定一块盘创建dg用于存放spfile,注意这块磁盘不能是BCV的目标磁盘,否则下次同步时信息会丢失 ###ASM实例创建后检查ora.SPDG.dg(包含spfile的diskgroup)、ora.asm、ora.cssd、ora.evmd四个资源应该处于online grid@qc26702a:/home/grid>crsctl status res -t -------------------------------------------------------------------------------- NAME TARGET STATE SERVER STATE_DETAILS -------------------------------------------------------------------------------- Local Resources -------------------------------------------------------------------------------- ora.SPDG.dg ONLINE ONLINE qc26702a ora.asm ONLINE ONLINE qc26702a Started ora.ons OFFLINE OFFLINE qc26702a -------------------------------------------------------------------------------- Cluster Resources -------------------------------------------------------------------------------- ora.cssd 1 ONLINE ONLINE qc26702a ora.diskmon 1 OFFLINE OFFLINE ora.evmd 1 ONLINE ONLINE qc26702a
###连接ASM实例,使用asmcmd的lsdg命令能看到刚才创建的存放spfile的DG grid@qc26702a:/home/grid>export ORACLE_SID=+ASM grid@qc26702a:/home/grid>asmcmd ASMCMD> lsdg State Type Rebal Sector Block AU Total_MB Free_MB Req_mir_free_MB Usable_file_MB Offline_disks Voting_files Name MOUNTED EXTERN N 512 4096 1048576 46477 46418 0 46418 0 N SPDG/###调整ASM初始化参数重启ASM instance alter system set asm_diskstring="/dev/rhdiskpower*" scope=both;srvctl stop asm -o immediate srvctl start asm
###修改磁盘权限 chown oracle:dba /dev/rhdiskpower* chmod 660 /dev/rhdiskpower* ###使用kfod确认这磁盘信息都能被oracle或者grid用户准确读到 grid@qc26702a:/home/grid>kfod asm_diskstring="/dev/rhdiskpower*" disks=all -------------------------------------------------------------------------------- Disk Size Path User Group ================================================================================ 1: 46477 Mb /dev/rhdiskpower0 oracle dba 2: 46477 Mb /dev/rhdiskpower1 oracle dba 3: 46477 Mb /dev/rhdiskpower10 oracle dba 4: 46477 Mb /dev/rhdiskpower11 oracle dba 5: 46477 Mb /dev/rhdiskpower12 oracle dba 6: 46477 Mb /dev/rhdiskpower13 oracle dba 7: 46477 Mb /dev/rhdiskpower14 oracle dba 8: 46477 Mb /dev/rhdiskpower15 oracle dba 9: 46477 Mb /dev/rhdiskpower16 oracle dba 10: 46477 Mb /dev/rhdiskpower17 oracle dba 11: 46477 Mb /dev/rhdiskpower18 oracle dba 12: 46477 Mb /dev/rhdiskpower19 oracle dba 13: 46477 Mb /dev/rhdiskpower2 oracle dba 14: 46477 Mb /dev/rhdiskpower20 oracle dba 15: 46477 Mb /dev/rhdiskpower21 oracle dba 16: 46477 Mb /dev/rhdiskpower22 oracle dba 17: 46477 Mb /dev/rhdiskpower23 oracle dba 18: 46477 Mb /dev/rhdiskpower24 oracle dba 19: 46477 Mb /dev/rhdiskpower25 oracle dba 20: 46477 Mb /dev/rhdiskpower26 oracle dba 21: 46477 Mb /dev/rhdiskpower27 oracle dba 22: 46477 Mb /dev/rhdiskpower28 oracle dba 23: 46477 Mb /dev/rhdiskpower29 oracle dba 24: 46477 Mb /dev/rhdiskpower3 oracle dba 25: 46477 Mb /dev/rhdiskpower30 oracle dba 26: 46477 Mb /dev/rhdiskpower31 oracle dba 27: 46477 Mb /dev/rhdiskpower32 oracle dba 28: 46477 Mb /dev/rhdiskpower33 oracle dba 29: 46477 Mb /dev/rhdiskpower34 oracle dba 30: 46477 Mb /dev/rhdiskpower35 oracle dba 31: 46477 Mb /dev/rhdiskpower36 oracle dba 32: 46477 Mb /dev/rhdiskpower37 oracle dba 33: 46477 Mb /dev/rhdiskpower38 oracle dba 34: 46477 Mb /dev/rhdiskpower39 oracle dba 35: 46477 Mb /dev/rhdiskpower4 oracle dba 36: 46477 Mb /dev/rhdiskpower40 oracle dba 37: 46477 Mb /dev/rhdiskpower41 oracle dba 38: 46477 Mb /dev/rhdiskpower42 oracle dba 39: 46477 Mb /dev/rhdiskpower43 oracle dba 40: 46477 Mb /dev/rhdiskpower5 oracle dba 41: 46477 Mb /dev/rhdiskpower6 oracle dba 42: 46477 Mb /dev/rhdiskpower7 oracle dba 43: 46477 Mb /dev/rhdiskpower8 oracle dba 44: 46477 Mb /dev/rhdiskpower9 oracle dba -------------------------------------------------------------------------------- ORACLE_SID ORACLE_HOME ================================================================================ +ASM /oracle/app/grid ###连接ASM instance,mount diskgroup export ORACLE_SID=+ASM sqlplus "/as sysasm" alter diskgroup AJXDG1 mount; alter diskgroup AJXDG2 mount;注:dg名称可以通过kfed命令得到: grid@qc26702a:/home/grid>kfed read /dev/rhdiskpower21 | grep grpname kfdhdb.grpname: AJXDG1 ; 0x048: length=6 ###检查diskgroup & disk状态 set linesize 200 pagesize 80 column path format a45 column name format a20 column failgroup format a15 select group_number, disk_number, mount_status, header_status, state, failgroup, name, path from v$asm_disk_stat; GROUP_NUMBER DISK_NUMBER MOUNT_S HEADER_STATU STATE FAILGROUP NAME PATH ------------ ----------- ------- ------------ -------- --------------- -------------------- --------------------------------------------- 1 0 CACHED MEMBER NORMAL SPDG_0000 SPDG_0000 /dev/rhdiskpower0 2 0 CACHED MEMBER NORMAL AJXDG1_0000 AJXDG1_0000 /dev/rhdiskpower12 2 1 CACHED MEMBER NORMAL AJXDG1_0001 AJXDG1_0001 /dev/rhdiskpower13 2 2 CACHED MEMBER NORMAL AJXDG1_0002 AJXDG1_0002 /dev/rhdiskpower14 2 3 CACHED MEMBER NORMAL AJXDG1_0003 AJXDG1_0003 /dev/rhdiskpower15 2 4 CACHED MEMBER NORMAL AJXDG1_0004 AJXDG1_0004 /dev/rhdiskpower16 2 5 CACHED MEMBER NORMAL AJXDG1_0005 AJXDG1_0005 /dev/rhdiskpower17 2 6 CACHED MEMBER NORMAL AJXDG1_0006 AJXDG1_0006 /dev/rhdiskpower18 2 7 CACHED MEMBER NORMAL AJXDG1_0007 AJXDG1_0007 /dev/rhdiskpower19 2 8 CACHED MEMBER NORMAL AJXDG1_0008 AJXDG1_0008 /dev/rhdiskpower20 2 9 CACHED MEMBER NORMAL AJXDG1_0009 AJXDG1_0009 /dev/rhdiskpower21 2 10 CACHED MEMBER NORMAL AJXDG1_0010 AJXDG1_0010 /dev/rhdiskpower22 2 11 CACHED MEMBER NORMAL AJXDG1_0011 AJXDG1_0011 /dev/rhdiskpower23 2 12 CACHED MEMBER NORMAL AJXDG1_0012 AJXDG1_0012 /dev/rhdiskpower24 2 13 CACHED MEMBER NORMAL AJXDG1_0013 AJXDG1_0013 /dev/rhdiskpower25 2 14 CACHED MEMBER NORMAL AJXDG1_0014 AJXDG1_0014 /dev/rhdiskpower26 2 15 CACHED MEMBER NORMAL AJXDG1_0015 AJXDG1_0015 /dev/rhdiskpower27 3 0 CACHED MEMBER NORMAL AJXDG2_0000 AJXDG2_0000 /dev/rhdiskpower28 3 1 CACHED MEMBER NORMAL AJXDG2_0001 AJXDG2_0001 /dev/rhdiskpower29 3 2 CACHED MEMBER NORMAL AJXDG2_0002 AJXDG2_0002 /dev/rhdiskpower30 3 3 CACHED MEMBER NORMAL AJXDG2_0003 AJXDG2_0003 /dev/rhdiskpower31 3 4 CACHED MEMBER NORMAL AJXDG2_0004 AJXDG2_0004 /dev/rhdiskpower32 3 5 CACHED MEMBER NORMAL AJXDG2_0005 AJXDG2_0005 /dev/rhdiskpower33 3 6 CACHED MEMBER NORMAL AJXDG2_0006 AJXDG2_0006 /dev/rhdiskpower34 3 7 CACHED MEMBER NORMAL AJXDG2_0007 AJXDG2_0007 /dev/rhdiskpower35 3 8 CACHED MEMBER NORMAL AJXDG2_0008 AJXDG2_0008 /dev/rhdiskpower36 3 9 CACHED MEMBER NORMAL AJXDG2_0009 AJXDG2_0009 /dev/rhdiskpower37 3 10 CACHED MEMBER NORMAL AJXDG2_0010 AJXDG2_0010 /dev/rhdiskpower38 3 11 CACHED MEMBER NORMAL AJXDG2_0011 AJXDG2_0011 /dev/rhdiskpower39 3 12 CACHED MEMBER NORMAL AJXDG2_0012 AJXDG2_0012 /dev/rhdiskpower40 3 13 CACHED MEMBER NORMAL AJXDG2_0013 AJXDG2_0013 /dev/rhdiskpower41 3 14 CACHED MEMBER NORMAL AJXDG2_0014 AJXDG2_0014 /dev/rhdiskpower42 3 15 CACHED MEMBER NORMAL AJXDG2_0015 AJXDG2_0015 /dev/rhdiskpower43SQL> select group_number, name, state, type, total_mb, free_mb from v$asm_diskgroup_stat;GROUP_NUMBER NAME STATE TYPE TOTAL_MB FREE_MB ------------ -------------------- ----------- ------ ---------- ---------- 1 SPDG MOUNTED EXTERN 46477 46418 2 AJXDG1 MOUNTED EXTERN 743632 350106 3 AJXDG2 MOUNTED EXTERN 743632 354227
###检查CRS资源组状态 crsctl status res -t -------------------------------------------------------------------------------- NAME TARGET STATE SERVER STATE_DETAILS -------------------------------------------------------------------------------- Local Resources -------------------------------------------------------------------------------- ora.AJXDG1.dg ONLINE ONLINE qc26702a ora.AJXDG2.dg ONLINE ONLINE qc26702a ora.SPDG.dg ONLINE ONLINE qc26702a ora.asm ONLINE ONLINE qc26702a Started ora.ons OFFLINE OFFLINE qc26702a -------------------------------------------------------------------------------- Cluster Resources -------------------------------------------------------------------------------- ora.cssd 1 ONLINE ONLINE qc26702a ora.diskmon 1 OFFLINE OFFLINE ora.evmd 1 ONLINE ONLINE qc26702a ///////////////// // 3、启动数据库实例 ///////////////// ###将参数文件创建到dg的spfile ***initajxbcv1.ora内容 sga_target=500M db_block_size=8192 db_name=shajx instance_name=ajxbcv1 control_files="+AJXDG1/sys/control01.ctl","+AJXDG2/sys/control02.ctl" cluster_database=FALSE***create spfile from pfile sqlplus "/as sysdba" startup mount; create spfile="+SPDG" from pfile="$ORACLE_HOME/dbs/initajxbcv1.ora" ###找到spfile的存放路径,将此路径放到初始化参数文件 ASMCMD> pwd +spdg/SHAJX/PARAMETERFILE ASMCMD> ls -l Type Redund Striped Time Sys Name PARAMETERFILE UNPROT COARSE JUL 22 19:00:00 Y spfile.257.885757443###初始化参数文件initajxbcv1.ora调整为只包含如下内容 spfile="+spdg/SHAJX/PARAMETERFILE/spfile.257.885757443" ###将数据库资源添加到oracle restart环境,启动数据库 srvctl add database -d shajx -o $ORACLE_HOME -i ajxbcv1 srvctl start database -d shajx###检查db资源已经online grid@qc26702a:/home/grid>crsctl status res -t -------------------------------------------------------------------------------- NAME TARGET STATE SERVER STATE_DETAILS -------------------------------------------------------------------------------- Local Resources -------------------------------------------------------------------------------- ora.AJXDG1.dg ONLINE ONLINE qc26702a ora.AJXDG2.dg ONLINE ONLINE qc26702a ora.SPDG.dg ONLINE ONLINE qc26702a ora.asm ONLINE ONLINE qc26702a Started ora.ons OFFLINE OFFLINE qc26702a -------------------------------------------------------------------------------- Cluster Resources -------------------------------------------------------------------------------- ora.cssd 1 ONLINE ONLINE qc26702a ora.diskmon 1 OFFLINE OFFLINE ora.evmd 1 ONLINE ONLINE qc26702a ora.shajx.db 1 ONLINE ONLINE qc26702a Open 如何将ASM中的数据文件复制到操作系统中 http://www.linuxidc.com/Linux/2013-08/88418.htmOracle 11g RAC ASM磁盘全部丢失后的恢复 http://www.linuxidc.com/Linux/2013-07/87000.htmOracle 11g从入门到精通 PDF+光盘源代码 http://www.linuxidc.com/Linux/2013-06/85670.htmRHEL6 ASM方式安装Oracle 11g R2 http://www.linuxidc.com/Linux/2013-06/86002.htmOracle 10g 手工创建ASM数据库 http://www.linuxidc.com/Linux/2013-01/78229.htmOracle 10g R2创建ASM实例Step By Step http://www.linuxidc.com/Linux/2014-05/101821.htm更多Oracle相关信息见Oracle 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=12本文永久更新链接地址