• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • MsSql
  • Mysql
  • oracle
  • MariaDB
  • DB2
  • SQLite
  • PostgreSQL
  • MongoDB
  • Redis
  • Access
  • 数据库其它
  • sybase
  • HBase
您的位置:首页 > 数据库 >oracle > Oracle不同数据库间对比分析脚本

Oracle不同数据库间对比分析脚本

作者: 字体:[增加 减小] 来源:互联网 时间:2017-05-11

通过本文主要向大家介绍了oracle数据库备份脚本,oracle数据库脚本,oracle导出数据库脚本,oracle数据库导入脚本,oracle数据库对比工具等相关知识,希望本文的分享对您有所帮助
正在看的ORACLE教程是:Oracle不同数据库间对比分析脚本。

 Oracle数据库开发应用中经常对数据库管理员有这样的需求,对比两个不同实例间某模式下对象的差异或者对比两个不同实例某模式下表定义的差异性,这在涉及到数据库软件的开发应用中是经常遇到的。一般数据库软件的开发都是首先在开发数据库上进行,开发到一定程度后,系统投入运行,此时软件处于维护阶段。针对在系统运行中遇到的错误、bug等,还有应用系统的升级,经常需要调整后台程序,数据库开发人员经常遇到这样一种尴尬的事情,维护到一定时期,开发库和运行库之间出现了一些差异,而这些差异又是什么。还有一种情况就是如果应用在很多地方同时使用,每次的后台升级,那些数据库作了升级,那些还没有作升级,如果没有详细记录的话,也会造成我们的尴尬事情。 

  另外,如果要搭建Oracle的高级表复制环境,在规划好了复制的架构以及复制的表后,在正式将需要复制的表加入到复制组之前,一个重要工作就是检查这些需要复制的表在主节点和主定义节点间的差异性。如果这些表定义间存在任何细微的差别,如某个字段在一个节点是允许Null,而在另一个节点是Not Null,在将表加入到复制组时都会出现这样的错误,“ORA-23309 object string.string of type string exists”,其实造成这个错误的原因就是复制主定义节点和主节点之间表的定义存在某些差异,系统认为是两个不同的表,但是在两个数据库中具有同样的名称。如果需要复制的表很多,手工对比两个节点复制表之间的差异是需要很大工作量,而且不一定准确。 

  业界有名的数据库软件辅助产品提供商美国Embarcadero公司(www.embarcadero.com)在其全套数据库解决方案中就相应提供了一个叫Change Manager的产品,该产品一个很大的用途就是对比分析不同实例间的差异。Oracle公司的OEM(oracle enterprise manager)包中也相应提供了一个工具叫做DB-Diff,也用来比较两个数据库间的差异。 

  其实对于普通的数据库开发在某种程度上说根本不需要上面提到的这些工具软件,况且这些产品不是随便可以得到并且使用的。针对上面提到的这些问题,提供了两个SQL脚本,可以轻松实现对比分析两个不同数据库实例间对象的差异以及表定义的差异。 

  一、对比两个不同实例下某模式中对象差异 

  在运行下面的脚本之前,必须首先创建当然数据库用户和需要对比的两个实例间的数据库联接。下面是运行该脚本的一个例子。在SQL/PLUS下运行该脚本,系统出现如下提示: 

  对象属主(模式): repadmin

  第一个实例的数据库联接名称 (包括 @):@ora_zs

  第一个实例的数据库联接名称 (包括 @):@ora_sjjk 

[NextPage]

其中程序要求输入对象属主,也就是对比那个用户,这里是repadmin用户。然后是需要对比的实例联接名称,这里是ora_zs和ora_sjjk,最后给出对比报告。 

  附:PL/SQL程序脚本清单: 

二、对比两个不同模式下表定义的差异 

  运行方法和前面第一个脚本一样,这里不再详述。下面是一个运行实例结果: 

  对象属主(模式): db_zgxt

  第一个实例的数据库联接名称 (包括 @):@ora_cx

  第一个实例的数据库联接名称 (包括 @):@ora_zs 

上一页    

</div>
分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • Oracle自动备份脚本
  • Oracle数据库执行脚本常用命令小结
  • Oracle中查看慢查询进度的脚本分享
  • oracle数据库创建备份与恢复脚本整理
  • oracle 服务启动,关闭脚本(windows系统下)
  • Oracle不同数据库间对比分析脚本
  • Oracle 数据库管理脚本命名规范
  • Oracle数据库的备份与恢复
  • Oracle数据库的备份与恢复
  • Oracle数据库的备份与恢复

相关文章

  • 2017-05-11查看Oracle中是否有锁表的sql
  • 2017-05-11oracle中decode函数的使用方法
  • 2017-05-11Oracle 数据库操作类
  • 2017-05-11Oracle查询语句中rownum与rowid的不同之处分析
  • 2017-05-11oracle ORA-01114、ORA-27067错误解决方法
  • 2017-05-11Oracle数据库处理多媒体信息
  • 2017-05-11Oracle PL/SQL入门案例实践
  • 2017-05-11oracle联机数据库备份详解
  • 2017-05-11Linux系统(X64)安装Oracle11g完整安装图文教程另附基本操作
  • 2017-05-11linux自动运行rman增量备份脚本

文章分类

  • MsSql
  • Mysql
  • oracle
  • MariaDB
  • DB2
  • SQLite
  • PostgreSQL
  • MongoDB
  • Redis
  • Access
  • 数据库其它
  • sybase
  • HBase

最近更新的内容

    • Oracle 复杂查询及总结
    • Oracle截取字符串去掉字段末尾指定长度的字符
    • Oracle7.X 回滚表空间数据文件误删除处理方法
    • Oracle 11g数据库详细安装图文教程
    • oracle group by语句实例测试
    • Oracle数据库rownum和row_number的不同点
    • ORACLE8的分区管理
    • Oracle存储过程基本语法介绍
    • oracle误drop/update操作后的数据恢复测试
    • Oracle 自增(auto increment) 或 标识字段的建立方法

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有