Tag Archives: Oracle

Oracle 10G的Data Pump (Part I)

Oracle 10G的Data Pump技术能够在不同数据库间高速的移动数据库和元数据. 这个技术的基础是两个数据移动工具:Data Pump Export和Data Pump Import.

Oracle的Data Pump是通过一个PL/SQL包来实现的:DBMS_DataPump(也叫Data Pump API).Data Pump使用直接路径装载和外部表机制进行数据的移动. Data Pump使用DBMS_METADATA PL/Sql包进行包括ETL过程在内的所有的数据库对象操作.

Data Pump 是Oracle一些其它关键特性(如基于流的复制、逻辑Standby等、Grid)的基础。

Data Pump特性是集成到Oracle数据库10G中的,但是标准版本10G并行度只有1.

关键概念

Master Table

Master Table(MT)是Data Pump技术的核心.Master Table 用来保存整个过程中的细节信息(也可以说是一些元数据信息).有了MT,导出或者导入的重启动才变为可能.这些细节信息包括:

  • 产生Job状态的报告
  • 重新启动Job
  • 定位在Dump文件中的所有的对象.

主表在进行当前导出或者导入的操作的用户模式中被创建.该用户必须要有足够空间. 主表的名字和创建它的Job名字相同.这也就是说,你不能显式的指定一个和现有的表或者视图重名的Data Pump Job.

导出的时候,主表被创建,并在完成的时候写到Dump文件中.在启动导入的时候,主表从Dump文件集中载入到数据库中,并用来控制操作的顺序.主表也可以用一些参数来进行初始化操作.要注意的是主表不能跨文件存储.所以,指定的 Dump 文件的大小至少要能够容纳得下 MT .

主表依如下情况或被保留或者删除:

  • Job成功完成,MT 被删除.
  • 如果Job是使用STOP_JOB交互命令停掉的,MT将被保留以用来重启动Job.
  • 如果Job是使用KILL_JOB交互命令Kill掉的,MT将被删除,并且Job不能重新启动.
  • 如果Job意外中止,MT总是被保留.

继续阅读

Oracle 9i , 9.2.0.8 似乎并不是终结版

记得此前曾有 Blogger 提过 PatchSet 9.2.0.8 将会是 Oracle 9i RDBMS 的终结版. Note:189908.1 中的描述是:

(9.2.0.8) Next (terminal) 9.2 Patch Set. Still being developed

将会是终结版. 当前仍在开发. 不过 Note:360241.1 中提到了:

Oracle Server – Enterprise Edition – Version: 9.0.1 to 9.2.0.9

如果不是笔误的话, 说明还有下一个版本?
一般来说, Oracle 的奇数版本特定组件版本号( component specific release number )都不如偶数版本稳定, 有趣的是, 实际上奇数版是 PatchSet 的偶数版. 比如 9.2.0.7 实际上是 PatchSet 的第六版(因为要从 9.2.0.1 算起).
不排除 Oracle 将在 大部分 9i 用户的支持服务都将过期的时候推出最后的 9.2.0.8, 然后促使大多数用户升级到 10GR2 上来.
关于 Oracle 的版本号, 其实有细微差别的, 下面这个图最清晰了:
Oracle Release Number.gif
DBA 们平时说起来这些, 都不是很严格.
–End.

对 Oracle DBA 最有帮助的一本书

在论坛上作了一个小小的调查: 大家说说看过的最有帮助的 Oracle 图书是什么 ? . 从参与的讨论中得到的一个有趣的结论: Oracle Database Concept 是对大多数 DBA 来说最有用的图书. Oracle 的概念手册是随版本号更新的. 执笔者 是 Michele Cyran , 对内容有贡献者大约还有 几十个人.
很多人都不掩饰对这本概念手册的喜爱, 有的 DBA 甚至仔细阅读过数遍。重剑无锋,大巧不工。以前和朋友聊天的时候说起过 “DBA 日常工作中可能 99% 的场景都只需要最基本的知识”, 问题是: 最基本的知识是否掌握了 99% ?
这本书如果有影印版的话估计会是一本畅销书. Tom 的 Expert one-on-one Oracle 也被很多人推崇.
–End.

Tom 的 Expert Oracle Database Architecture 中文版即将面世

从人民邮电出版社图灵公司刘江先生处得知, Thomas Kyte 的 大作 Expert Oracle Database Architecture: 9i and 10g Programming Techniques and Solutions的翻译已经接近尾声, 即将出版.
据我所知, Tom 当年的那本Oracle Expert one-on-one(《Oracle专家高级编程》)可以算得上 Oracle 技术图书中文市场历史上最成功的一部作品, 尽管翻译质量粗糙、术语混乱、印刷糟糕、价格昂贵, 但还是火得一塌糊涂,很多搞 Oracle 数据库的技术人员都是人手一本. 这本书的成功也让其他出版社看热不已。
我此前说过,这本 Expert Oracle Database Architecture 是 Tom 在 《Oracle专家高级编程》 的基础之上的解构之作,内容上的变动相当大。不但加入了最新的 10g 的内容, 还作了很多技术补充。很多 DBA 朋友怕是心仪已久了吧 ? 一个初级 DBA 如果期待自己对 Oracle 的理解登堂入室, 那么 Tom 的图书总是一定要看的。
很久以前就得知图灵图书拿到了 Expert Oracle Database Architecture 的翻译版权。没想到运作的速度真的很快。目前我手里有前六章的翻译草稿,初看上去,翻译中规中矩(翻译者据说是部队院校的一个老师)。术语拿捏得比较准确。下一周准备对找英文原版来中英对照”学习”一下.
人邮图书的一格弱点是排版不够好。虽然 Word 排版大大的降低了图书出版成本,但是对于一些相对比较重要的图书来说,好的排版质量会带来更好的收益的。如果 Expert Oracle Database Architecture 中文版排版能比普通的人邮书更好一点, 那么有什么理由不把现在手里的这本 《Oracle专家高级编程》 扔掉呢 ?

BTW
1) 人邮图灵最近一段时期动作很大,有一些不错的手笔,比如”图灵四大名著”,颇像当年的华工出版社. 技术爱好者不怕好作品多, 这是图书市场的可喜现象。
2) 翻译这个事情是个辛苦差事,一本书拿到手里,往往只是不到两个月的时间, 而急就章的交给出版社之后什么时候出版,则是另外一回事了。这个糟糕的流程如果能改进一点是最好的了。
-End.