本节包含以下主题:

  • 关于使用CloneDB克隆数据库
  • 使用CloneDB克隆数据库
  • 使用CloneDB克隆数据库后
关于使用CloneDB克隆数据库

出于测试目的或其他目的克隆生产数据库通常是必要的。克隆生产数据库的常见原因包括:
  • 部署使用数据库的新应用程序或现有应用程序的更新
  • 运行数据库的系统上计划的操作系统升级
  • 数据库安装的新存储
  • 报告
  • 分析旧数据

在部署新应用程序,执行操作系统升级或使用新存储之前,需要全面测试以确保数据库在新条件下正常工作。克隆可以通过在一个或多个测试环境中复制生产数据文件来实现,但这些副本通常需要分配和管理大量存储空间。

使用CloneDB,您可以多次克隆数据库,而无需将数据文件复制到多个不同的位置。相反,Oracle数据库使用写时复制技术在CloneDB数据库中创建文件,以便只有在CloneDB数据库中修改的块需要额外的磁盘存储。

以这种方式克隆数据库具有以下优点:

  • 它减少了测试所需的存储量
  • 它可以为各种目的快速创建多个数据库克隆

CloneDB数据库使用数据库备份的数据文件。使用备份数据文件可确保生产数据文件不会被CloneDB实例访问,并且CloneDB实例不会竞争生产数据库的资源(如CPU和I / O资源)。

  • 从Oracle Database 11g第2版(11.2.0.3)开始,支持CloneDB功能
  • CloneDB功能不适用于性能测试。
 
使用CloneDB克隆数据库

在克隆数据库之前,必须满足以下先决条件:
  • 每个CloneDB数据库都必须使用Direct NFS Client,并且生产数据库的备份必须位于NFS卷上。Direct NFS Client使Oracle数据库能够直接访问网络附加存储(NAS)设备,而不是使用操作系统内核NFS客户端。此CloneDB数据库功能在支持Direct NFS Client的平台上可用。
  • 至少需要2 MB的额外系统全局区域(SGA)内存来跟踪CloneDB数据库中的修改块。
  • 需要存储数据库备份和每个CloneDB数据库中更改的块。数据库备份所需的存储取决于用于执行备份的方法。一个完整的RMAN备份需要最多的存储空间。使用存储设备的功能执行的存储快照符合存储设备的要求。一个备份可以支持多个CloneDB数据库。每个CloneDB数据库所需的存储量取决于该数据库中的写入活动。每个被修改的块都需要一个可用的存储块。因此,总存储需求取决于CloneDB数据库中随着时间的推移修改的块数。

本节介绍创建一个CloneDB数据库并使用这些示例数据库和目录所需的步骤:

  • 生产数据库PROD1的Oracle主目录是/ u01 / prod1 / oracle。
  • 数据库备份的文件位于/ u02 / oracle / backup / prod1中
  • CloneDB数据库CLONE1的Oracle主目录是/ u03 / clone1 / oracle
 
 。。。
 
 

参考资料


https://docs.oracle.com/cd/E11882_01/server.112/e25494/create.htm#ADMIN14023

 

使用CloneDB克隆数据库的更多相关文章

  1. 如何利用Direct NFS克隆数据库

    CloneDB是Oracle 11.2.0.3推出的一项新特性,它利用的了11g新引入的Direct NFS.它直接利用目标数据库的备份,无需将备份COPY到克隆环境下,使得一个备份可以克隆多个不同用 ...

  2. 示例在同一台机器上使用RMAN克隆数据库

    1.查看主库ZDJS并使用RMAM进行备份 [oracle@std ~]$ sqlplus '/as sysdba' SQL*Plus: Release - Production on Wed Jan ...

  3. Oracle Study之--Oracle 11gR2通过RMAN克隆数据库

    Oracle Study之--Oracle 11gR2通过RMAN克隆数据库 Purpose of Database Duplication A duplicate database is usefu ...

  4. SQL Server2014 SP2新增的数据库克隆功能

    SQL Server2014 SP2新增的数据库克隆功能 创建测试库 --创建测试数据库 create database testtest use testtest go --创建表 )) --插入数 ...

  5. RMAN 数据库克隆文件位置转换方法

    在使用RMAN克隆数据库时,如果辅助数据库(新数据库)使用了与目标数据库(原数据库)使用了不同的路径,那么就存在位置转换的问题.在Oracle中,控制文件用于定位数据文件以及联机重做日志文件,如果没有 ...

  6. PostgreSQL表空间、数据库、模式、表、用户/角色之间的关系

    看PostgreSQL9的官方文档,我越看越迷糊,这表空间,数据库,模式,表,用户,角色之间的关系怎么在PostgreSQL里这么混乱呢?经过中午的一个小实验,我逐渐理清了个中来龙去脉.下面我来还原我 ...

  7. MongoDB数据库基本用法

    show dbs:显示数据库列表  show collections:显示当前数据库中的集合(类似关系数据库中的表)  show users:显示用户 use <db name>:切换当前 ...

  8. mongodb创建数据库和配置用户

    上一篇我们说了mongodb远程连接配置,今天给大家说下mongodb怎么创建数据库和配置用户,毕竟光有远程连接是不够的,我们还要上去操作和放数据的.   系统:centos 5.x   环境:mon ...

  9. EBS系统克隆

     术语 克隆是对已有的Oracle应用系统创建一份拷贝的过程.克隆一个Oracle应用系统有几种不同的情况,包括: l   标准克隆 – 复制一个已有的Oracle应用系统生成一份拷贝,例如对生产 ...

随机推荐

  1. Harbor作为Docker的镜像中心

    转载于网络 我们采用Harbor作为Docker的镜像中心. 有几个原因: Harbor采用Docker Compose拉起维护,简单方便. 采用Nginx作为入口网关,各种参数配置相对熟悉. 基于N ...

  2. Vue.js 循环语句

    循环使用 v-for 指令. v-for 指令需要以 site in sites 形式的特殊语法, sites 是源数据数组并且 site 是数组元素迭代的别名. v-for 指令: v-for 可以 ...

  3. 使用Redis模拟简单分布式锁,解决单点故障的问题

    需求描述: 最近做一个项目,项目中有一个功能,每天定时(凌晨1点)从数据库中获取需要爬虫的URL,并发送到对应的队列中,然后客户端监听对应的队列,然后执行任务.如果同时部署多个定时任务节点的话,每个节 ...

  4. beeswarm-蜜蜂图

    一.beeswarm作为一维散点图包R包,可以生成点不重复的图,与stripchart的区别就是等值点不会重叠到一起,下图展示了stripchart与beeswarm图的区别: stripchart( ...

  5. CrawlSpiders模块的使用

    创建文件模板 scrapy genspider -t crawl tencent tencent.com CrawlSpiders就是为爬取整站孕育而生的,我们以前是分页下一页,然后再yied.这样太 ...

  6. JAVA-try-catch-finally-自定义异常例子(适合初学者)

    package com.net.xinfang.reflect; import java.io.IOException; import java.util.Scanner; /*** * 运行try块 ...

  7. canvas绘图history妙用

    function palette(canvas,ctx){ //初始化画布内部元素默认样式 this.strokeColor = 'red'; //默认选中红色触发颜色 this.fillColor ...

  8. HDU 1016(素数环 深搜)

    题意是说对一个长度为 n 的数环进行排列,使得相邻两数的和为素数,按从小到大的顺序依次输出. 因为是环,所以总能调整成以 1 为序列首输出.用深度优先搜索的方法即可.在判断素数时由于 n 小于 20, ...

  9. [Asp.Net MVC4]验证用户登录实现

    最近我们要做一个仿sina的微博,碰巧的是我最近在学习mvc,就想用mvc技术实现这个项目. 既然是微博,那不用想也应该知道肯定要有用户登陆,但是和常规的asp.net登陆又不一样,以下是我一下午+一 ...

  10. asp.net mvc cshtml (VIEWS)中怎么提供URL参数:

    其实,没有必要,只要在view中这样获取就可以: <%=Html.ViewContext.RouteData.Values["id"]%> 就算没有id的参数也不会报错 ...