• 基于存储快照快速复制一个Oracle数据库


    基于存储快照快速复制一个Oracle数据库

    数据库环境:oracle 11g

      有时候需要快速复制一个生产库作为测试用途,这个时候可以通过对生产库的存储卷做一个一致性快照,并把快照卷挂给另一台同类型操作系统的服务器来快速的安装实现。这种方式有些地方也叫做快照库。

           以下是实现步骤(快照卷已经映射到服务器):

      1.安装GI 软件(CRS_SWONLY),安装结束再以root权限运行roothas.pl脚本;  

    To configure Grid Infrastructure for a Stand-Alone Server run the following command as the root user:
    /u01/app/11.2.0/grid/perl/bin/perl -I/u01/app/11.2.0/grid/perl/lib -I/u01/app/11.2.0/grid/crs/install /u01/app/11.2.0/grid/crs/install/roothas.pl
    
    
    To configure Grid Infrastructure for a Cluster execute the following command:
    /u01/app/11.2.0/grid/crs/config/config.sh
    
    root@snapshot_db_srv/u01/app/oraInventory>l/lib -I/u01/app/11.2.0/grid/crs/install /u01/app/11.2.0/grid/crs/install/roothas.pl <
    Using configuration parameter file: /u01/app/11.2.0/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 snapshot_db_srv successfully pinned.
    Adding Clusterware entries to inittab
    
    snapshot_db_srv 2021/03/25 14:05:00 /u01/app/11.2.0/grid/cdata/snapshot_db_srv/backup_20210325_140500.olr
    Successfully configured Oracle Grid Infrastructure for a Standalone Server

      通过crsctl start has启动GI,通过 crsctl stat res -t 查看状态:

    snapshot_db_srv:/home/grid$crsctl stat res -t
    --------------------------------------------------------------------------------
    NAME           TARGET  STATE        SERVER                   STATE_DETAILS       
    --------------------------------------------------------------------------------
    Local Resources
    --------------------------------------------------------------------------------
    ora.ons
                   OFFLINE OFFLINE      snapshot_db_srv                              
    --------------------------------------------------------------------------------
    Cluster Resources
    --------------------------------------------------------------------------------
    ora.cssd
          1        OFFLINE OFFLINE                                                   
    ora.diskmon
          1        OFFLINE OFFLINE                                                   
    ora.evmd
          1        ONLINE  ONLINE       snapshot_db_srv

      2.通过crsctl启动cssd等服务;

    snapshot_db_srv:/home/grid$crsctl start resource ora.cssd
    CRS-2672: Attempting to start 'ora.cssd' on 'snapshot_db_srv'
    CRS-2672: Attempting to start 'ora.diskmon' on 'snapshot_db_srv'
    CRS-2676: Start of 'ora.diskmon' on 'snapshot_db_srv' succeeded
    CRS-2676: Start of 'ora.cssd' on 'snapshot_db_srv' succeeded

      3.添加ASM实例(srvctl add asm);###asm为ASM的SID名称

    snapshot_db_srv:/home/grid$srvctl add asm
    snapshot_db_srv:/home/grid$crsctl stat res -t
    --------------------------------------------------------------------------------
    NAME           TARGET  STATE        SERVER                   STATE_DETAILS       
    --------------------------------------------------------------------------------
    Local Resources
    --------------------------------------------------------------------------------
    ora.asm
                   OFFLINE OFFLINE      snapshot_db_srv                              
    ora.ons
                   OFFLINE OFFLINE      snapshot_db_srv                              
    --------------------------------------------------------------------------------
    Cluster Resources
    --------------------------------------------------------------------------------
    ora.cssd
          1        ONLINE  ONLINE       snapshot_db_srv                              
    ora.diskmon
          1        OFFLINE OFFLINE                                                   
    ora.evmd
          1        ONLINE  ONLINE       snapshot_db_srv             

      再通过crsctl start resource ora.asm启动asm服务,在asm实例中mount磁盘组。

    sqlplus / as sysasm
    
    SQL> alter diskgroup crsdg mount;
    
    Diskgroup altered.
    
    SQL> alter diskgroup datadg mount;
    
    Diskgroup altered.
    
    SQL> alter diskgroup fradg mount;
    
    Diskgroup altered.

      4.安装database soft only;

      安装完成后,注意检查修改$ORACLE_HOME/bin/oracle权限为6751,属组为asmadmin。

    -rwsr-s--x    1 oracle     asmadmin  258650140 Jan 02 1970  oracle

      

      5.在GI中添加listener和database实例;

      6.从原数据库备份出pfile文件,修改后放在服务器本地目录,拉起该数据库即可。

       该过程可能需要做recover database;

       同时需要以resetlogs方式打开数据库。即通过alert database open resetlogs打开数据库。

      备注:单实例GI需要使用crsctl start/stop has启停GI。

      数据更新:

      若是需要更新该测试数据库数据的话,只需要重新快照一份生产库的磁盘卷挂载到快照库服务器替换现在使用的快照卷,执行以上第6步骤拉起即可。非常方便。

    -- end --

           

  • 相关阅读:
    十个能让你成为牛逼前端程序猿的特征
    一道Javascript面试题引发的血案
    程序员实现财务自由的9个阶段,你达到了哪一段?
    程序员进阶路上不能错过的史上最全技术知识图谱秘籍
    清华大学研发神技能:用意念回复微信
    机器学习原来如此有趣:用深度学习识别人脸
    【代码片段】如何使用CSS来快速定义多彩光标
    Android自定义一款带进度条的精美按键
    现在的人工智能逆天到什么地步了?
    分享几套生成iMac相关高逼格免费mockup的素材和在线工具
  • 原文地址:https://www.cnblogs.com/caoyibin/p/14689080.html
Copyright © 2020-2023  润新知