eygle 的个人资料eygle's life日志列表网络 工具 帮助
7月27日

恩墨科技将举行Oracle性能优化与诊断案例培训

链接:http://www.eygle.com/archives/2009/07/performance_tuning_db_diag.html

课程说明:在经过较长时间的积累与总结之后,我们设计了"Oracle性能优化与诊断案例"培训课程,这个课程面向具有一定工作经验的Oracle数据库从业人员,希望能够以理论与实践相结合,将我们的经验更好的传达出来。


开课时间:预计于7月底或8月初,北京开课,具体时间依据报名人数确定

课程周期:课程总计四天,计划选择周四、周五、周六、周日,连续四天进行。

培训讲师: 盖国强 ( Eygle ),讲师介绍 关于EYGLE

培训费用:每人5800元(开具培训发票)

报名方式:请发送报名邮件至 eygle@eygle.com 报名,或者通过MSN: eygle@hotmail.com 与我联络。

设计目标:很多Oracle技术人员在经过了很多培训或长时间的自学之后,往往仍然会感到不能对所学知识融会贯通,在实践中很难游刃有余的解决现实问题,针对这些困扰,我们设计了这个课程。

课程主要目标有两个:

1.         通过对Oracle技术知识全面、深入、融合的讲解,帮助学员将所学知识融会贯通起来

2.         通过将理论与实践的诊断案例相结合,帮助学员构建系统的解决问题的思路与方法

 

通过培训,我们希望能够帮助学员更加深入的了解Oracle的知识体系,形成稳健的问题诊断与解决方法,从而切实提高大家的数据库应用与管理水平。


本课程的设计时间为4天,主要内容如下(也欢迎将感兴趣、关心的内容通过邮件向我们提交(发送邮件至:eygle@eygle.com ),我们将适当调整与完善授课内容):

 


培训模块内容

培训提纲

学时

Oracle数据库学习与研究方法

   如何开始及深入学习Oracle技术-Eygle的经验方法谈

   案例讲解循序渐进、深入浅出的学习方法

   深入解析Oracle的时间维度,以及时间分析法

   JOB任务调度与Oracle的时间度量

   DB Time与数据库性能的快速评估

   DBA数据库管理守则

   DBA最常见误操作案例分析

   Oracle数据库故障诊断及分析方法

   ORA-600 2662案例解析、模拟与实验

   100% IO使用的ERP系统之优化案例实践

   其他诊断案例与实践讲解

2学时

循序渐进探讨数据库的创建与迁移

   Oracle数据库的创建解析

   数据库创建脚本解析

   10046事件、sql_trace以及Oracle的等待事件

   RMAN与数据库Clone

   OracleAuxiliary优化思想与借鉴

   字节序以及传输表空间技术

   深入解析字符集、自定义字符以及字符集相关故障处理

   Truncate的本质、临时表的Truncate、以及相关恢复案例与实践

   Oracle 10g Truncate 导致系统性能下降之案例分析

   其他诊断案例与实践讲解

2学时

深入解析Oracle数据库的启动、关闭与初始化

   Oracle的启动与内部初始化-Nomount/Mount/Open深入解析

   初始化参数、sql.bsq以及数据库的初始化

   Nomout / Mount阶段ORA-600案例解析

   见微知著-从启动错误提示判断数据库故障

   控制文件、SCN与数据库的恢复控制

   防患未然-全面理解数据库的关闭与中止

   Redo、控制文件在启动及运行过程的案例分析与实践

   其他诊断案例与实践讲解

2学时

Oracle的内存结构

   Oracle实例与数据库概览

   Oracle的内存与进程结构

   Buffer Cache等内存结构的优化与实践

   常见ERP软件Cache使用优化案例实践

   闩、锁,竞争与等待

   牵一发动全身-Oracle体系结构全面串联

   Oracle10gOracle11g内存管理原理与变迁

   Cache Buffer ChainLibrary Cache等常见Latch优化案例

其他诊断案例与实践讲解

3学时

Oracle的物理结构

   控制文件、日志文件与数据库管理

   DMTLMT、从FLMASSM-Oracle存储技术的变迁

   HWM管理与Oracle性能 实践案例分析

   OracleUNDO管理技术与内部原理

   SYSTEMSYSAUX,从内部变革看Oracle优化思想

   Oracle的分区技术及Oracle11g分区新特性

   TB级数据库核心性能问题之数据表存储分析案例

   某金融系统亿级表之索引问题导致性能骤减之案例分析

   HWM及空间回收问题导致某制造系统问题之案例分析

其他诊断案例与实践讲解

3学时

Oracle的恢复体系结构

   OracleRedo与归档技术

   检查点与数据库恢复

   Redo机制、内容与内部原理

   Oracle DataGuard技术、手工DataGuard机制与实践演练

   Oracle进程与恢复机制、并行恢复与Oracle恢复进度确认

   特殊情况下的恢复原理与实践

   4节点 RAC REDO优化实现10倍性能提升案例详解

   电信级TB海量 ASM数据库紧急恢复案例全过程分析

   其他诊断案例与实践讲解

3学时

Oracle SQL原理

   Oracle的共享池技术与原理

   Oracle的共享池分区技术及诊断案例

   ORA-04031错误分析及解决

   OracleSQL解析与执行

   10053事件与SQL的解析

   Oracle的优化器-RBOCBOOracle10g的变迁

   某大型ERP系统SQL的执行计划分析与优化实践

   其他诊断案例与实践讲解

3学时

Oracle的优化方法

   Oracle的优化概念

   Oracle优化方法论

   Oracle等待事件分析法

   StatspackAWRADDM - Oracle优化思想的进化

   分析Statspack/AWR报告以快速定位Oracle数据库的性能瓶颈

   存储与系统规划设计优化

   64CPU/98G RAM TB级数据库全系统优化方案设计与实施精讲

   优化案例与客户实践讲解

6学时

 


顾问咨询与技术支持服务:除了培训之外,我们还为客户提供各类Oracle数据库相关的顾问咨询与技术支持服务。

       很多企业在购买了Oracle软件之后,往往由于高昂的服务费用而放弃了购买官方服务,导致数据库系统得不到很好的技术支持与服务,针对这类情况,面向国内企业,我们全面推出了各种超值的技术服务,这些服务包括:

服务类型

服务描述

基本支持服务

基本支持服务面向小型企业用户,通过网络或电话向用户提供5x8(每周5天,工作日8小时)技术咨询、问题解答、后备支持服务,这些服务可以用快捷的通道、直接的沟通,帮助用户解决技术困惑或数据库问题。

银牌支持服务

银牌支持服务,在基本服务支持之外,还向客户提供一定人天的现场服务,帮助用户对数据库进行产品安装、补丁升级、健康检查及性能优化等服务,通过现场服务为用户解决各类紧急故障,帮助用户优化系统性能、提升服务品质等。

金牌支持服务

金牌支持服务向客户提供全面的技术支持服务,7x24不间断的后备支持,在客户需要时,不限时间与次数的提供现场服务,在数据库规划、升级、优化、灾难恢复、故障解决等全方位为用户提供专业服务。

专家顾问服务

除了按年提供的服务之外,我们还可以为用户提供单次、计天的专家顾问服务,服务内容包括以Oracle数据库为主的性能优化、升级迁移、灾难恢复等。

 

如果您需要Oracle数据库方面的相关技术服务,相信我们能够为您提供可靠的协助支持!

 

额外说明:

对于参加培训的学员,您将有机会可以得到以下附加的增值服务和机会:

1.       您将可以得到讲师的个人Oracle著作

2.       在时间和机会满足的条件下,您将可能得到和讲师或顾问亲临客户现场的观摩、学习机会

3.       您将可以得到1个月的免费数据库基本支持服务

     期待我们的课程与服务能够提升您的技能,满足您的业务需要!


站内相关文章|Related Articles
1月4日

2008 年终总结 - 人在旅途 万水千山走遍

链接:http://www.eygle.com/archives/2009/01/2008_travel_road.html

Julia总是说我懒惰,走过的很多地方都没有记录,匆匆就过了一年。
好吧,在新年与旧年相隔尚近的时候,回顾一下这一年走过的路途。

1.走过东北,吉林、大庆,哈尔滨
家在吉林,在家过年,Julia在冰天雪地里玩了痛快:


当然冬天少不了滑雪,Julai在北京第一次体验了惊险刺激的滑雪运动。墨墨和妈妈一样喜欢东北。

这一年,因为项目的关系,还走过了大庆、哈尔滨等黑龙江的城市,第一次认识了大庆满城林立的"磕头机".

而铁人王进喜的精神与那个时代的奋斗,也实实在在给了我一次精神上的洗礼。


2.走过西北,兰州,嘉峪关,敦煌,玉门
同样因为项目的关系,这一年还去了西北,第一次领略了辽阔大西北的风光。

感谢兰州的朋友,在项目之外,还一路西上,游览了嘉峪关、敦煌大漠,感受了鸣沙山的五色沙,月牙泉的清澈水,更远上玉门关,体验了雅丹地貌,在大沙漠里纵横。


3.南下广州,香港、澳门
香港回归之后,这是第一次踏上这块土地,这是一块美丽的、明珠般的城市,在这里,感受到历史和现代的气息:

澳门以赌城著称,我们去并没有赌博,而是领略了赌场的奢华与陆离。
下图是威尼斯赌城,注意,那是在室内拍摄的照片:

发件人 2008年 澳门

澳门的牌楼是澳门的标志:

发件人 2008年 澳门


4.住在北京,奥运、残奥、姥姥的北京游
住在北京,这一年因为奥运的关系,有了很多新的游览,奥运的很多门票是千金难求,奥运场馆在奥运之后更是成为了观光游览的胜地。

Julia从同事那里得到了一些票,我们得以亲身感受奥运赛场的气氛,鸟巢的恢宏的却值得一票:

发件人 2008北京奥运

我们在这里亲眼目睹了博尔特创作记录,目睹了他跑到我们的面前,振臂庆祝:

发件人 2008北京奥运

残奥会,我们再次在鸟巢,观看了许多比赛,和朋友一起度过了快乐的时光。

姥姥北京游则让全家在一起感受了奥运之后的北京气息:

发件人 全家福

在秋天,我们又一次爬上了香山,岳父觉得香山很是漂亮。


5.飞跃重洋,美国,加州、洛杉矶、拉斯维加斯-美西之旅
由于Oracle Open World大会的缘故,我和Julia有了这一次美国之行,首先抵达的是旧金山,然后一路下去,优山美地洛杉矶、拉斯维加斯、圣地亚哥,这是一次绝妙的梦幻之旅。

旅行的愉快,言语不能表达万一:

很多地方回忆起来仍然是梦幻般的,Disney、环球影城、圣地亚哥的海洋公园、星光大道、大峡谷,细细数来,这一次旅行真是精彩绝伦。

关于在美国的衣食住行,请参考老婆的美国攻略


6.东达黄海 - 年底大连、庄河之匆匆之行
这次旅行完全在意料之外,由于朋友的项目关系,2008年12月31日,在北京和大陆度过,而2009年1月1日,同样在大连和北京度过,老婆说,简直感觉有点错乱。

当然有些贝壳和鸭蛋作证,一切都是那么真实:

2008,走遍天涯,2009,更上层楼!

站内相关文章|Related Articles


历史上的今天...
      >> 2008-01-03文章:

             MT4恼人的升级提示处理一则
             Sybase数据库与中国农业银行
      >> 2006-01-03文章:
             MT Scode 插件错误解决
      >> 2005-01-03文章:
             Oracle中,一个Delete操作的流程

12月21日

《深入解析Oracle》一书出版

链接:http://www.eygle.com/archives/2008/12/oracle_internals_release.html

今天一早,收到了出版社寄来的《深入解析Oracle》样书,新书的设计和印刷非常不错,个人感觉很满意

封面的磨砂手感很好,内页的纸张质量也很好,纸张厚重、纯白,整本书比以前明显厚了不少,但是定价却是和2004年的《Oracle数据库DBA专题技术精粹》一书相同。2004~2008,看来经济危机也有好处,出版社在定价上让出了空间。

拍了几张照片,和大家分享一下。

以下是2004年到2008年,和我有关的几本书的全家福:

这些书的确投注了我不少的心血:

总体说来,人民邮电出版社这一次出版的书,是几本中装帧、排版、印刷最棒的一次,谢谢人邮、谢谢我的编辑杜洁小姐。

书的硬指标提高了,剩下的就是软实力,也就是内容了,那么期待这本书,到达读者手里的时候,也能够让大家满意。

谢谢你们的支持,谢谢在2008年岁末,又有了一件可以让我眼前一亮的书本!

btw:今天编辑告知,《循序渐进Oracle》一书再次重印了800本,那么这本书累计有8800在市面上了,Mark一下。

12月12日

DBA2.0的时代 - DBA将向何处去?

链接:http://www.eygle.com/archives/2008/12/dba20_road.html
最近接触和参与了很多关于DBA职业生涯发展的讨论,也有很多朋友问过我,DBA将向何处去?

思考了很多,在这里和大家分享一下关于DBA的我的看法。

其实会议起来DBA这个职业从诞生、发展到成熟,其实时间是非常短的,记得2000年左右,DBA的从业人群还非常少,而到现在的2008年,DBA的圈子已经越来越大,甚至传统意义上的DBA已经成熟的需要革新。这个行业的发展和变化也是如此之快。

上个月,ITPUB论坛和IT168举办了一个全国高校的巡回演讲活动,主题是如何成为一个Oracle DBA,我在北京参与了几次演讲,这个活动已经进一步将DBA这个词引入到了校园内,现在的学生能够接触到DBA这个概念的时间早的超乎我们当年的想象。

最近Oracle也推出了一个系列的主题活动,这就是DBA 2.0,这是一个非常好的词汇和概念,经过这么长时间的发展,DBA的确应该上升到了2.0时代。那么2.0时代是什么概念呢?

前几天在中国软件大会上,一个朋友和我探讨,他说:你觉得数据库将会发展向何方?当然自动化肯定是越来越普及的一个概念,DBA当何以为生?
这也是很多朋友提出过的一个问题,那就是当数据库软件越来越成熟和智能,我们DBA该走向何方?

最近在ITPUB上看到有朋友问,Oracle 10g的OEM是否好用,很多人的回答是:非常好用!

DBA 2.0的时代多少和这个工具有关。在Oracle Database 10g推出之后,随之引入的一个新产品Grid Control/Database Control,这个工具将原来基于客户端的OEM通过Web形式来展现,并且增加了大量强大的功能
如果是第一次登陆,你会看到一个许可页面,页面中包含了Database Control中需要进行授权使用的一些组件,这些组件需要单独的授权:tuning pack、diagnostic pack、Change Management Pack、Configuration Management Pack、Provisioning Pack for Database。也就是说,这些东西是要付费使用的(很多人呼吁Oracle取消这些组件的License费用,以便更多用户可以使用这个出色的工 具)。
当然,在Agree之后可以开始新的Database Control的全面体验,下面是我在很早很早以前抓取过这样一张图片:

在最近的一个项目验收会上,我为用户展示了Oracle Database 10g的Database Control,并且我用四个字来形容这个强大的管理工具,他在对于一些传统问题的诊断和解决上,的确让人感觉:易如反掌!
以前需要用SQL或工具来追踪的SQL问题、性能问题等,现在使用新版的Database Control可以通过Web页面清晰快速的展现和定位。
以下图示是一个实例,通过OEM可以清晰的展示系统资源的使用情况及诊断概要信息等:


在我的《循序渐进Oracle》一书中,我也曾经用一章的内容来介绍这个工具。

而在SQL诊断部分ADDM更能够自动进行数据库问题的诊断并且给出调整和优化的建议等:

客户对于Database Control的感觉就是,这个工具真实的简化了用户的数据库的管理和监控工作,提高了用户的工作效率。改变就是如此简单。

总体说来,Oracle更倾向于将新的数据库特性描述称为一个具有主动性(proactive)的产品,能够自主的、主动的发现数据库的问题,并提出优化和解决方案,这些功能在Oracle Database 11g中被进一步的深化。

那么实际上,proactive这个词也许是我心目中低于2.0 的DBA的期望,一个优秀的DBA,在数据库越来越完善的时代,我们应该拥有更多的主动性、预见性,理想的应该能够对系统作出良好的规划和预期,将错误或 故障消灭在萌芽阶段,从而使数据库环境拥有更佳的稳定性;进一步的,一个2.0时代的DBA,应该能够从企业的发展及大局出发,为企业规划更合理的数据管 理方式、更有效的数据使用方式,从而不仅为企业节省投资,而且能够为企业创造更多的价值,DBA的发挥空间还远远不止于此!

DBA 2.0,说老实话,我的确喜欢这个词!DBA 2.0的时代,要求我们DBA更加优秀!
历史上的今天...
      >> 2007-12-09文章:

      >> 2006-12-09文章:
             恭王府赏福字碑
      >> 2005-12-09文章:
             2005-12-09 EMC DISK Fault

11月8日

《深入解析Oracle》一书前言

链接:http://www.eygle.com/archives/2008/11/oracle_internals_preface.html

虽然《深入解析Oracle》一书还没有正式出版,我还是先将前言发布在这里。

因为我一直觉得,前言是一本书非常重要的部分,作者的思想和意图会在这里传达。以下就是我为这本新书所写下的前言。
------------------------------------------------------------------------------
过几年的积累,再加上几个月的努力,新版的《深入浅出Oracle》即将呈现在大家的面前,我当然希望这本书能够得到大家一如既往的支持,然而一本书的价值仍然要靠大家去评判。
关于这本书的修订,有很多话想和大家说一说。

从2006年这本书出版到现在,已经过去了2年,在这两年中,《深入浅出Oracle》经历了大家的热烈关注期,也经历了淡淡的沉寂期,很长一段时 间并没有修订这本书的想法,直到最近,我仍然不断收到很多读者的来信,和我热烈的探讨书中的观点,甚至得知有些教育和培训机构已经选择我的书作为培训教 材。
这么多热情的读者使我感到了不安,因为这本写作在2006年的作品已经存在了很多需要增补的地方,只要有人阅读,我就不能松懈。
正是因为支持这本书的读者,我才下定决心要将这本书重新修订,修订的目的是为了让这本书更加完善、更加接近Oracle数据库的发展变化。

关于这本书的结构我愿意再重新描述一次,本书每章的布局基本上分为三个部分:入门的基础知识、进阶知识、结合实际的诊断案例分析。
我的原意是让基础知识部分作为初学者的入门参考,进阶部分作为Oracle技术爱好者深入学习的材料,而案例分析则作为实践部分提供借鉴。
但是显然这样的设计招来了很多抱怨,一些初学者发现在这本书中能看懂的部分很少,我想我应该修订一下我的描述。实际上在这本书中,我更多关注了Oracle技术的深入探索以及案例描述,所以她更适合作为DBA进阶与深入学习的参考

虽然如此,我仍然在很多公开的场合谈到,即使是一个初学者,也应该有更高的起点,暂时有些东西看不懂不怕,但是至少你应该知道深入的学习应该向何处去,深入不是错误,如果你不能深入那才是错误。要记住随着技术以及时代的不断进步,社会留给DBA的成长时间越来越短,一个DBA从入门到成长为资深的时间不会超过2年。所以,如果你能够忍受一点知识的折磨,这本书还是会对你有用。张爱玲说过,成名要趁早。做技术的也是如此,成长越早越好,越快越好
当然,这本书的另外一种写作方式和我个人的学习方法有关,当我在研究Oracle技术的时候,总是忍不住要不断深入去探索,试图从原理或本质上理解Oracle的技术实现,我一直认为表象以及呆板的记忆对学习是无益的。

所以当然,这不是一本简单的关于Oracle技术知识概念性介绍的书,读这本书,实际上你是在和我共同经历一次Oracle的学习过程。如果你和我一样享受这个过程,那么这本书就是为你准备的

在修订版中这本书的主要变化是,由原来的9章增加到现在的10章,原书的第一章承载了太多的内容,加上我的大量增补,现在我将第一章的内容分开,就 变成了现在的10章,新的一章命名为《控制文件与数据库初始化》,关于控制文件这部分内容,原本计划写在另外一本书里,现在加在这里也是非常合适的。
除此之外,全书的整体结构并未改变,但是在入门、进阶与诊断案例三个方向都做了极大的扩展。这些扩展包括在入门部分对基础知识进行了更为全面完整的介绍; 在进阶深入部分,对机制原理进行了进一步深入阐述;在诊断案例部分增加了一些这几年来遇到的有价值案例,结合分布到各个章节。在新技术方面,全书对 Oracle Database 10g与Oracle Database 11g的一些新特性进行了补充,但是新特性的补充是根据全书架构需要进行的,并非盲目,本书最重要的仍然是第一版就确定的体系结构。
经过修订,增增减减,新版的变更部分大约在40%左右。

关于深入浅出这四个字的理解,很多读者提出质疑,说本书深则深矣,浅出则未必。
在这里我想说说我自己对于"深入浅出"这几个字的理解,这个理解是伴随着我的职业生涯的。以一个和技术有关的例子来说也许会好一点,我在书中探讨过关于数 据库的启动与初始化的过程。回想起来最初对这个问题的探讨还是在2004年左右,那时候我和Biti在北京因为偶然第一次用sql_trace跟踪数据库 的Open过程,因而获得了关于bootstrap$的信息:

create table bootstrap$ ( line# number not null, obj#
number not null, sql_text varchar2(4000) not null) storage (initial
50K objno 56 extents (file 1 block 377))

而这还仅仅只是第一步的探索,这里的探索涉及到了数据文件、数据块的定位,而在后来的网上探讨中,有朋友给出了更进一步的发现,当使用10046事件来跟踪数据库的启动过程,你会发现最初的等待输出有如下两行信息(来自Oracle9i数据库):
WAIT #1: nam='db file sequential read' ela= 94 p1=1 p2=417 p3=1
WAIT #1: nam='db file sequential read' ela= 103 p1=1 p2=377 p3=1

这些信息就清楚的显示了数据库启动中经历了从文件1的417号Block到377号Block的定位过程,一切就是这么简单清晰,可是在没有经历过那么多深入的摸索、尝试与思考之前,你是不会看到这么浅显、明晰的展示,或者看到了也可能无法一下子有那么清晰的理解。
db file sequential read是一个大家都常见的事件,可是你能否理解这后面所隐藏的种种处理以及细节呢?我处理过很多次因为这个事件而导致的性能故障,有时候看起来是极其棘 手的问题,而能否真正理解这个事件的本质,以及每一个参数的含义(也就是说你的理解是否足够深入)是解决问题的关键,如果你曾经足够深入的探索过,你给出 的答案很可能会是非常直接的、非常简单的,也许让人惊讶,但是绝对有效。

那么再进一步的观察,在以上2条输出之前,还会有以下一段输出:

WAIT #1: nam='direct path read' ela= 46 p1=1 p2=1 p3=1
WAIT #1: nam='direct path read' ela= 5 p1=2 p2=1 p3=1
WAIT #1: nam='direct path read' ela= 3 p1=3 p2=1 p3=1
WAIT #1: nam='direct path read' ela= 3 p1=4 p2=1 p3=1
WAIT #1: nam='direct path read' ela= 3 p1=201 p2=1 p3=1

现在来想一下,为什么会有这么多direct path read的等待事件?p1代表的是文件号,那么201号文件又是指什么文件?
我在本书中有过进一步的探讨,实际上数据库在Open的过程中,会对数据文件以及控制文件进行比对校验,数据文件的第一个Block记录了重要的检查点、SCN等信息,这些信息在启动时要被读取,这里就是这样一种体现。
看,很多书本中抽象的知识,现在通过简单的观察,我们就获得了直观的印象。而且你会对Oracle的种种等待事件有了更加深入的理解。

这就是我理想中的那种深入浅出,这是一种在经历了千难万险、峰回路转之后,看山还是山的那种平淡。佛祖拈花,迦叶破颜,有时候能够感受到这种会心之意是非常难能而宝贵的。

有一次去兰州大学做技术交流,兰大的一位李老师对我说,最近看我网站上提到的学习方法等内容,感觉到一个字:虚!我当时跟他开玩笑说,我还有更虚无的8个字可以送给你,那就是:运用之妙,存乎一心
这 是玩笑,也不是玩笑,有时候对Oracle进行了深入的研究与探索之后,剩下的如何运用这些知识去解决问题,实际上是非常灵活的,很多时候简单的常规方法 经过巧妙运用之后就可以化为神奇,发挥出你意想不到的作用。所以根本的,我们应该花力气去做的仍然是积累、深入、思考,然后才能在遇到问题时举重若轻、运 用自如。
我相信每个人都会有这样的经历,如果你读到这里能够有一次破颜的会心微笑,那也许就是我最大的收获

尽管如此,最终我还是决定做一些改变,所以这本书最后的名称被确定为《深入解析Oracle》,这是我在美国参加2008 Oracle Open World期间忽然产生的一个想法。我和Kamus曾经在东方标准做过一个系列的公开培训课程,就是用的这个名字,我很喜欢这个名字。
新的名字可以避免对一些读者的误导,通过这个名字我想说这是一本由浅入深、比较深入的书,也许这个名字更符合这本书的主旨。

在《深入浅出Oracle》之后,我写作了另外一本书《循序渐进Oracle》,通过这两本书实际上我想构建一个更为完善的学习结构,从DBA的实际工作应用出发,帮助Oracle爱好者更好的进行入门以及深入的学习。
也经常有些朋友发邮件来询问Oracle的学习路径与学习规划,通过写作,我一直想把自己的领悟传达出来,现在在这里我将这两本书的体系结构整合一下供大家参考:

当然,这两本书都是自成体系的,在将来也许还会有第三本,在Oracle完整的知识体系结构里,这两本书还缺少一些重要的内容。

我要感谢众多支持我的读者们,是你们的支持与鼓励才有了本书的修订,你们的支持才是这本书真正的存在价值。在这本书出版的两年多以来,我的生活已经 有了很大的变化,我要感谢我的太太Julia,感谢她走进并且改变了我的生活,感谢她理解我很多时候废寝忘食不顾一切的学习与工作态度,她的支持以及理解 是我写作的基石,我还要把这本书献给我的儿子,他比这本书还要年轻,在我修订这本书的很多章节时,他就在我身边爬来爬去,他是我永不枯竭的快乐源泉。
没有什么比生活更重要的了

虽然本书是《深入浅出Oracle》一书的修订版,但是其工作量与意义对我来说完全不亚于一本新书,由于水平所限以及难免的疏漏,书中肯定存在错谬之处,真挚的欢迎大家的批评与指正。

最后我还要感谢我的朋友们,他们为本书提出了很多宝贵的意见与鼓励;感谢黄志洪、牛新庄、冯春培、陈吉平、张乐奕为本书撰写评论及推荐。

-----------------------------------盖国强 2008-9-18 于北京

历史上的今天...
      >> 2007-11-07文章:

             wmiprvse.exe进程是什么?
             Streams流复制的异常检测
      >> 2007-11-08文章:
      >> 2006-11-07文章:
      >> 2005-11-07文章:
             终于,收到Hong的公告邮件
             EMC CX500硬盘再坏
             光纤通道的终结者-iSCSI技术[转摘]

7月3日

新书《循序渐进Oracle》即将出版

作者:eygle | English Version 版权声明:转载时请务必以超链接形式标明文章 原始出处和作者信息及本声明
链接: http://www.eygle.com/archives/2007/06/stepbs_oracle_coming_soon.html

终于可以静下心来公布这个消息:我的新书即将出版。

关于新书的名称,暂时确定为《循序渐进Oracle》,如果没有更好的名称,那这个名字可能就是最终的名字了。不管怎样,这个名字还是切合内容的,这本书的内容由更浅处入手,逐渐深入,有一个渐进的过程,可能比《深入浅出Oracle》更适合初学者。
关于《深入浅出Oracle》一书,刚刚看到Oracle ACE的Yantingkun同学写的一点读后感,他说:

.......不知道EYGLE花了多长时间写这本书,不过我是用了4个月才看完。看得出来,EYGLE对于这本书确实花费了不少心血。
不过实话实说,这本书叫做深入浅出不太合适,尤其对于初学者而言,这本书显得太深了,个人认为这本书不太适合初学者学习,到是对于有一定基础的DBA用来提高水平,扩大知识面非常有帮助。

别的不说,"对于有一定基础的DBA用来提高水平,扩大知识面非常有帮助 "这句话是对我的极大鼓舞,谢谢Yangtingkun同学:)

新书仍然选择由人民邮电出版社出版,一方面是双方合作一直很愉快,另一方面是因为新书和《深入浅出Oracle》的延续性非常紧密,我在想,或许我可以写一点关于两本书联合阅读的建议章节顺序,但是有严重广告嫌疑,这个想法先放放。
感谢人民邮电出版社对这本书的支持,在申报、编辑、审稿及排版工作中,他们的效率非常的高,当然对于这本书从我个人到出版社都会投入更多的精力,力争做的更好,将上一本书中暴漏出的问题一一弥补。

当然我还要感谢关心本书出版的朋友们,特别是博文视点的周筠老师,她对于出版的思考、领悟、执行以及依靠自身不懈的进取来改变出版行业的很多努力都极大的感染到我。博文是一个年轻向上的团队,他们一定会走得更好、行的更远。

这本书的全部书稿定稿完毕,昨天我已经将全部书稿转交出版社,如果顺利,这本新书有望在下个月和大家见面。
感谢大家一贯以来对我的支持,谢谢!

-The End-

《循序渐进Oracle》内容简介

作者:eygle | English Version 版权声明:转载时请务必以超链接形式标明文章 原始出处和作者信息及本声明
链接: http://www.eygle.com/archives/2007/07/stepbs_oracle_preface.html

昨天,写好了《循序渐进Oracle》一书的内容简介,这部分是放在书的最前面的,先贴在这里,让大家了解一下新书所包含的全部内容。

关于本书
在2006年,本书作者出版了《深入浅出Oracle》一书,该书出版后,得到了市场的普遍欢迎与广泛好评,应广大读者建议,作者继续撰写了本书,本书在继承《深入浅出Oracle》一书优点的同时,极力避免和修正了读者所指出的不足,作者希望这些努力能够等到更广泛读者的认同。
循序渐进Oracle》一书即独立成书,又可以被视为《深入浅出Oracle》一书的姊妹篇。本书既名循序渐进,在作者的写作过程中一直遵循了这个原则,书中内容从数据库的创建开始,从表空间管理深入,从备份恢复展开,从Statspack优化扩展,到故障诊断结束,共计11章,全书章节布局按照一个DBA需要具备的从业素质进行逐步深入,循序渐进的展开讲解,希望每个读者在学习的过程中都能够逐步深入,有所收获;作为《深入浅出Oracle》一书的姊妹篇,这两本书完全可以互相借鉴、参照阅读,甚至在章节顺序上完全可以重排成一本更全面的入门与进阶书籍。
根据IDC的最新统计数据,在2006年,Oracle数据库以44.4%的市场占有率继续稳居关系数据库市场的首位,占据第二位的IBM份额为21.2%(IDC 2005年的数据为Oracle占有44.3%,IBM占有 21.6%),随着数据库市场的发展和扩大,相关的从业机会进一步增加,这对于学习和选择Oracle技术的朋友们都是一个很好的时机和机遇,而作者希望这本书能够在这样的时代帮助读者朋友们更进一步。
本书作者Eygle活跃于国内著名Oracle技术论坛ITPUB( www.itpub.net),并全力打造国内最具影响力的个人Oracle技术站点Eygle.com (www.eygle.com),在这个网络时代,读者可以通过在线的网络获得更多的知识与交流,而图书作为作者沉淀、积累与知识分享,则是一个更为全面的展示与起点,通过图书与网络的紧密结合,相信现在的读者可以比以往的任何时代都能够得到快速的进步与提高,本书正是这样一个网络与现实的结合体。
本书是ITPUB技术丛书的第四本,在《Oracle数据库DBA专题技术精粹》和《Oracle数据库性能优化》、《深入浅出Oracle》三书出版的3年多以来,ITPUB和 Oracle市场都有了长足的发展,希望本书的出现能为读者带来更深入的技术知识和更多的实践经验。
本书特点
本书是作者多年工作实践的积累和总结,针对DBA在工作中的必备知识与技能,作者精心安排篇章构建本书。本书从数据库的创建入手,循序渐进的引导大家对数据库管理的必备知识进行由浅入深的探索与学习,全书展现的是DBA入门、学习与深入的路线图。
本书继续贯彻了作者"由浅入深、由点到线再及面"的学习方法,既可以让初学者参考学习,又可以帮助具备一定基础的中级DBA进行进阶学习,不同层次的学习者都能从本书的不同内容中受益。
在数据库技术日益普及的今天,浅尝辄止的学习显然已经站不住脚,当今企业对于DBA的要求也越来越高,而本书由浅入深循序渐进的讲解正是希望引导读者展开Oracle技术的深入探索和学习。
本书结构
本书分为11章,具体结构划分如下。
第一章:创建Oracle数据库,这一章是全书的书眼,通过数据库的创建,由点及面,很多知识在这一章全面展开,甚至包括数据库迁移与RMAN。
 第二章:从OEM到iSQL*Plus,这是讲究实用的一章,在可能的环境下,Oracle的这些工具对于简化我们的管理与维护会起到极大的推进作用。
第三章:Oracle的字符集,是否很多朋友都曾经为乱码所困惑,是否一个查询返回的是一堆莫明其妙的"靠"字或其它字符?这一章对字符集问题进行了全面的解析。
 第四章:用户的创建与管理,在完成了数据库创建之后,在提供用户使用之前,数据库用户必须被创建,作为DBA,用户的创建和管理是必备的知识。
 第五章:表空间和数据文件,作为Oracle的逻辑和物理存储,理解空间管理非常重要,这一章从外部管理到内部机制上对表空间和数据文件等内容进行了深入分析,Oracle10g的ASM新特性也被包含在这一章内。
 第六章:临时表空间和临时文件,这一章介绍了临时表空间和临时文件的原理及管理维护。
 第七章:备份与恢复,作为DBA需要具备的一个最重要技能就是备份和恢复,一个生产数据库的备份是重于一切的,本章全面介绍了Oracle数据库的备份与恢复知识。
 第八章:Oracle的闪回特性,Oracle从9i到10g不停的演进着一个强大的功能,这个功能就是闪回(flashback),这一重要功能已经简化了无数DBA的工作,本章从使用到原理上深入的介绍了Oracle的这一强大特性。
 第九章:数据的加载和卸载,怎样和数据库进行数据交互是实践中经常遇到的问题,Oracle的外部表和DataPump都是常用的工具,这一章通过实践的例子,介绍一些同Oracle数据库进行数据交换的方法。
 第十章:从statspack到ADDM,statspack是Oracle10g之前DBA最常用的数据库性能诊断工具,ADDM是Oracle10g引入的自动数据库诊断与监控程序,本章对这两者的用法与分析进行全面的介绍。
 第十一章:故障诊断及分析方法,在具备了全面的学习和知识掌握之后,本章将告诉大家如何有效的将这些知识结合起来,形成稳定的分析方法和经验积累。
本书的读者对象
本书适用于打算进入Oracle领域的初学者,也适用于具备一定数据库基础、打算深入学习Oracle技术的数据库从业人员,尤其适用于入门、进阶以及希望深入研究Oracle技术的数据库管理人员;
本书也可以作为各大中专院校相关专业的教学辅导和参考用书,或作为相关培训机构的培训教材。
本书约定
1.为了给读者提供更多的学习资源,同时弥补本书篇幅有限的遗憾,本书提供了部分的参考链接,许多本书无法详细介绍的问题都可以通过这些链接找到答案。相关文档可以从作者的网站(www.eygle.com )上找到。
2.本书所列出的插图、运行结果可能会与读者实际环境中的操作界面有所差别,这可能是由于操作系统平台、Oracle版本的不同而引起的,在此特别说明,一切以实际情况为准。
3.广大读者如有好的建议或在学习本书中遇到疑难问题,欢迎到相关网站(http://www.eygle.com )进行探讨,也可发电子邮件到:eygle@eygle.com

-The End-

12月8日

2006年Q3中国数据库市场 Oracle再占首位

作者:eygle 发表于 2006-11-28 15:33 最后更新于 2006-11-28 21:56
版权声明:可以任意转载,转载时请务必以超链接形式标明文章 原始出处和作者信息及 本声明
http://www.eygle.com/archives/2006/11/2006q3_china_database_market_share.html
根据网上的 消息,易观国际发布《2006年第3季度中国数据库软件市场数据监测》数据显示,2006年第3季度中国商业数据库市场整体规模达到4.63亿人民币,季度环比增长7.53%。

具体排名的前四甲依次是:Oracle、IBM、Microsoft和Sybase。
Oracle以39%的占有率再排第一,IBM占据了26%的市场份额,微软和Sybase分别占有17.8和13.3,这四者已经占据了96%的市场份额;国产数据库占有少量市场份额,主要应用领域是具有国防和保密性质的部委、航空航天工业以及各地方政府,其中武汉达梦占有0.7%,神州航天占有0.5%,人大金仓占有1.0%

具体分布信息如下图:
Database2006Q3
这个统计数据来自国内;根据Gartner 公司的统计数据,在2005年,Oracle的全球市场份额为48.6%,高出Q3国内数据近10个百分点;而IBM Q3国内份额较2005年Gartner公司统计数据高出11个百分点,我们看一下Gartner公司 2005年的统计数据:

Worldwide 2005 Vendor Revenue Estimates from RDBMS Software, Based on Total Software Revenue (Millions of Dollars)

 

Company 2005 2005 Market Share (%) 2004 2004 Market Share (%) 2004-2005 Growth (%)
Oracle 6,721.1 48.6 6,234.1 48.9 7.8
IBM 3,040.7 22.0 2,860.4 22.4 6.3
Microsoft 2,073.2 15.0 1,777.9 13.9 16.6
Teradata 440.7 3.2 412.1 3.2 6.9
Sybase 407.0 2.9 382.8 3.0 6.3
Other Vendors 1,134.7 8.2 1,090.4 8.5 4.1
Total 13,817.4 100.0 12,757.8 100.0 8.3

Source: Gartner Dataquest (May 2006)



如果这个统计数据基本准确的话,那么可能说明IBM推出的DB2 V9 Viper在2006年Q3取得了较好的成绩与增长;到年底全年的数据出来之后,Oracle和IBM的份额差距可能会进一步缩小。

我之前一直对IBM的PureXML持保守态度,如果IBM能在一年之内就取得巨大的增长,那么这个增长绝对会使Oracle极为不安。

期待Oracle11g早日进入市场,也许Oracle的新版本能够为Oracle带来新一轮的增长,但是从目前的信息看来,Oracle11g并未带来根本的变革,如果IBM的PureXML能够吸引用户,Oracle11g是没有足以抗衡的变革来与IBM竞争的;根据Oracle今年6月的的统计数字,自2004年2月Database 10g发布以来,仅有约一半的客户升级到10g。

希望看到这个市场充满变化,希望有新技术不断涌现。

-The End-

11月21日

言论:内容封锁还是技术难题?

« 推荐下载"2006 OTN 精选"CD | Blog首页 | 祝舅舅生日快乐 »


最近中文Wiki的解禁又引发了一系列的讨论,同时也引发了Wiki的访问热潮,以下是网上的一些统计数字:

几天来,在中文网站上注册的、准备为网站贡献内容的新用户数量每天超过了1,200人,远远高于网站被解禁前每天平均300-400人的水平。据维基百科基金会的数据,中文网站上每天贴出的新文章数量较一周前增加了75%,现在中文文章总数已经超过了10万。

其实关于Wiki,blogspot等站点的开开封封,很多网民已经开始麻木,最近Google.com基本上也已经被强制用Google.cn取代....世界和人们就这样在学着适应规则。

关于Wiki看到一段有趣的言论,维基百科的系统管理员蒂姆斯塔林(Tim Starling)说:

"我觉得现在还不是庆贺的时候,我们已经被封锁、解禁很多次了。
我觉得,大家把这次解禁看作某种形式的自由化还为时过早。或许监管机构只是遇到了一些技术难题。"

我也倾向于同意Tim Starling的看法,也许,无他,仅仅是由于技术问题...

-The End-

祝舅舅生日快乐

« 言论:内容封锁还是技术难题? | Blog首页 | 危险无处不在 中银联网站被攻陷 »


今天是舅舅的生日,我和Julia一起去为舅舅庆祝生日。

表哥在"湘鄂情"定了一个包间,我们大约7点才赶到。
房间正中贴了大大的一个"寿"字,装饰了很多彩色的气球,环境很不错;餐厅还准备了大大的蛋糕,搞了一个小小的庆祝仪式,欢快的气氛,快乐的日子。

湘鄂情在北京就有10多家分店,建筑及装修都非常气派,至于菜品,吃的多宝鱼、荆沙土乌龟、烤鸡、鱼翅都非常不错...

舅舅经常会提到我小时候的一个故事:
大约我6~7岁的时候,在舅舅家过中秋节,大家团聚在院子里
舅舅问了我一个问题:"佘"字和"余"字到底能差多少呢?
我当时的回答是:要看你写多大了,如果从公主岭写到柳阳(舅舅家所在的一个乡),那要差上好几里地呢。

每每提起来舅舅就很开心,仿佛时光又回到了几十年前...

和舅舅合照了一张照片:
我和舅舅
Julia的相册里还有一些:).

酒店的服务生开始叫舅舅爷爷,我感觉很奇怪,感觉舅舅还没有那么老.....

这几年舅舅的身体状况不太好,希望他的身体可以好起来,健康是最好的祝福。

-The End-

知音如不赏 归卧故山秋

« 危险无处不在 中银联网站被攻陷 | Blog首页 | 变化还是不变 这是一个问题 »


这个周末,去逛了下北京的"地坛冬季书市",这是第一次在北京逛书市,也是第一次去地坛公园。

书市里设立摊位的有大出版社,都是正版书,但是价格比较贵,在8折左右;更多的是小书店来处理库存,大多是盗版书,低价倾销。

去了就忍不住,一气买了一堆书。
新书有:
章诒和的《伶人往事
易中天的品读中国人系列-《读城记》、《闲话中国人》、《品人录》、《中国的男人和女人》

这几本书都是8.5折购入的,算起来比网上的应该要贵,但是我基本不在网上购书,一方面担心质量,一方面喜欢享受逛书店的感觉。

刚才看到Joyo上的读者留言

问题: 不爽。。拿到手的书不是我在书店看到的那版。。纸质太差了。。像极了翻版书。。彻底的不爽阿。。。 (作者:wuqiu1121 2006-11-19 0:52:14)
问题: 昨天刚拿到手,书是好书,不过有装订错误,第5/6页和第7/8页装反了,可以退换吗?另书中照片不太清楚,比网站上介绍配的差多了,不会是盗版吧?

看来网上购书还是问题多多,还是书店买着踏实。

还买了几套心仪已久的套书:
一套黄易的《覆雨翻云》,这套书上学的时候就已经读过了,加上《大唐双龙传》,是我最喜欢的黄易的两套书;大唐已经收藏了,今天终于如愿购入了这一套。这套书耗资60元,物超所值。

一套《搜神记》,这是一部网络玄幻小说,是我最早阅读的玄幻小说,非常喜欢,现在出了纸版的书,还是决定收藏一套,这一套一共六本,封面都设计的很漂亮。

当初我写过一段文字这样介绍这本书:

近年来少有的、认真读完的中国玄幻小说,作者发挥丰富的想象,把中国古代的伏羲女娲、三皇五帝、山海经... 全部联系丰富起来,形成一个色彩瑰丽、恣意挥洒的传奇故事,有人说本书的成就超越了《封神演义》,真否如此,你可以读读再来判断...

这本书在我的站点上整理了电子版下载:CHM版,我自己编辑的;后来增加的txt版本,可以放在手机上阅读. 搜神记 TXT版本

这本书的作者行文非常稳健优美, 是网络小说中的精品之作,书中有两首词我非常喜欢,引在这里和大家分享:

《刹那芳华曲》:
"朝露昙花,咫尺天涯,人道是黄河十曲,毕竟东流去。八千年玉老,一夜枯荣,问苍天此生何必? 
昨夜风吹处,落英听谁细数。九万里苍穹,御风弄影,谁人与共?千秋北斗,瑶宫寒苦,不若神仙眷侣,百年江湖。"

《天睿灵韵曲》:
"月冷千山,寒江自碧,只影向谁去?万丈冰崖,雪莲花落,片片如星雨。听谁,露咽箫管,十指苔生,寥落吹新曲。
人影肥瘦,玉蟾圆缺,昆仑千秋雪。斜斟北斗,细饮银河,共我醉明月。奈何二夜春风,心如桑叶,又是花开时节。"


这套书耗资50元,非常超值。

还有一些买来翻的书
一套《图说天下-中国历史系列》,共十本,用了大量精美的插图来展示中国的历史,适合轻松的阅读。
Julia还选了一套彩图版的《王朔小说选》,共6本;一本《中国才女的红尘旧梦》,一本《图说陆小曼》...

这些书都是正版,以下是购入图书的全家福:
我的收藏

我的书架又可以大大充实了一下了。

-The End-
10月25日

Oracle11g的新特性-11g New Features


站内相关文章|Related Articles

随着这几天Oracle OpenWorld大会的召开,Oracle11g的新特性越来越多的被展现出来。

此前,我曾经介绍过Oracle11g将可能在10月份的这个大会上推出,当时关于Alpha版的信息已经可以见到,现在出现的已经是Beta版,离Oracle11g的正式版已经不远。

Laurent Schneider 在他的Blog中提到,关于Oracle11g的名字还没有最后确定,就像10g推出时一样,Oracle可能给11版的数据库一个新的名字。可是据我估计,更改的可能性不大,因为Grid技术在10g中还并不成熟,推广和使用也极为有限,Oracle应该会沿着这个方向至少再走1~2个版本才对。

那么11g中将会出现哪些激动人心的新特性(new features)呢?
Justin Kestelyn 在他的Blog中提到了很多Beta版中引入的新特性:

1.如果说10g着重于降低所有者成本,那么11g将着重降低变更管理成本(也可以被称为提供变更保证)

2.DataGuard将引入一个新特性-Flashback Standby
这个新特性可以使得备用数据库可以创建一个快照,从而能够重演主库的所有负载变化,使得通过备用数据库研究主库的负载变化等成为可能,而且通过闪回功能,备用库仍然可以和主库保持一致。
eygle注:在我看来,这一新特性是丰富了DataGuard的功能,使得DataGuard可以发挥更大的作用。

3.在变更管理增强方面,Oracle提供在线的升级(Upgrade)和补丁应用(hot Patching),从而实现无当机(no downtime)的系统维护.
eygle注:这真是一个激动人心的特性,减少Down机时间的问题修复显然已经被期待已久。
Online.Patching

4.快速的故障解决
这一特性是通过引入自动收集故障相关信息来完成的,同时数据库提供修复建议(repair Advisor)等工具协助快速故障诊断。

5.关于分区的增强
实现了通过逻辑对象分区,同时实现了自动分区创建的功能。
eygle注:自动分区的创建,一直以来我们都是通过自己编写的过程来实现的,现在Oracle将这个过程内置在数据库中,这只能算得上一个易用性方面的小增强吧。

6.其它
新的高性能LOB基础架构
本地Java & PL/SQL编译器
新的PHP驱动

让我们一起期待11g的来临吧!

-The End-

10月18日

使用Oracle的外部表查询警告日志文件

« 有朋自远方来 不亦悦乎 | Blog首页 | 推荐Veritas VCS系列模拟器软件 »


从Oracle9i开始,Oracle的外部表技术(Oracle External Tables)被极大的增强,通过外部表访问外部数据增强了Oracle数据库和外部数据源进行数据交互的能力,对于数据仓库和ETL来说,这些增强极大的方便了数据访问。

对于DBA来说,最常见一个例子是可以使用外部表来访问警告日志文件或其他跟踪文件.
以下一个例子用来说明外部表的用途。

首先需要创建一个Directory:

[oracle@jumper oracle]$ sqlplus "/ as sysdba"

SQL*Plus: Release 9.2.0.4.0 - Production on Sun Oct 15 21:42:28 2006

Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.


Connected to:
Oracle9i Enterprise Edition Release 9.2.0.4.0 - Production
With the Partitioning option
JServer Release 9.2.0.4.0 - Production

SQL> create or replace directory bdump
2 as '/opt/oracle/admin/eygle/bdump';

Directory created.

SQL> col DIRECTORY_PATH for a30
SQL> col owner for a10
SQL> select * from dba_directories;

OWNER DIRECTORY_NAME DIRECTORY_PATH
---------- ------------------------------ ------------------------------
SYS BDUMP /opt/oracle/admin/eygle/bdump

然后创建一个外部表:

SQL> create table alert_log ( text varchar2(400) )
2 organization external (
3 type oracle_loader
4 default directory BDUMP
5 access parameters (
6 records delimited by newline
7 nobadfile
8 nodiscardfile
9 nologfile
10 )
11 location('alert_eygle.log')
12 )
13 reject limit unlimited
14 /

Table created.


然后我们就可以通过外部表进行查询警告日志的内容:
SQL> select * from alert_log where rownum < 51;

TEXT
-----------------------------------------------------------------------------------------
Mon Jun 26 12:00:24 2006
Starting ORACLE instance (normal)
Mon Jun 26 12:00:25 2006
WARNING: EINVAL creating segment of size 0x0000000008c00000
fix shm parameters in /etc/system or equivalent
LICENSE_MAX_SESSION = 0
LICENSE_SESSIONS_WARNING = 0
SCN scheme 2
Using log_archive_dest parameter default value
LICENSE_MAX_USERS = 0
SYS auditing is disabled
Starting up ORACLE RDBMS Version: 9.2.0.4.0.
System parameters with non-default values:
processes = 150
timed_statistics = TRUE
shared_pool_size = 104857600
large_pool_size = 0
java_pool_size = 0
control_files = /opt/oracle/oradata/eygle/control01.ctl
db_block_size = 8192
db_cache_size = 16777216
db_cache_advice = ON
compatible = 9.2.0.0.0
db_file_multiblock_read_count= 16
fast_start_mttr_target = 300
log_checkpoints_to_alert = TRUE
undo_management = AUTO
undo_tablespace = UNDOTBS1
undo_retention = 10800
remote_login_passwordfile= EXCLUSIVE
db_domain =
instance_name = eygle
job_queue_processes = 10
hash_join_enabled = TRUE
background_dump_dest = /opt/oracle/admin/eygle/bdump
user_dump_dest = /opt/oracle/admin/eygle/udump
core_dump_dest = /opt/oracle/admin/eygle/cdump
sort_area_size = 524288
db_name = eygle
open_cursors = 500
star_transformation_enabled= FALSE
query_rewrite_enabled = FALSE
pga_aggregate_target = 52428800
aq_tm_processes = 0
PMON started with pid=2
DBW0 started with pid=3
LGWR started with pid=4
CKPT started with pid=5
SMON started with pid=6
RECO started with pid=7

50 rows selected.

SQL>

如果我们需要查看数据库中曾经出现过的ORA-错误,那么可以执行如下查询:

SQL> select * from alert_log where text like 'ORA-%';

TEXT
-----------------------------------------------------------------------------------
ORA-1652: unable to extend temp segment by 128 in tablespace TEMP
ORA-1113 signalled during: alter database open...
ORA-1113 signalled during: alter database datafile 3 online...
ORA-09968: scumnt: unable to lock file
ORA-1102 signalled during: ALTER DATABASE MOUNT...
ORA-1507 signalled during: ALTER DATABASE CLOSE NORMAL...
ORA-01157: cannot identify/lock data file 3 - see DBWR trace file
ORA-01110: data file 3: '/opt/oracle/oradata/eygle/users01.dbf'
ORA-27037: unable to obtain file status
ORA-01157: cannot identify/lock data file 3 - see DBWR trace file
ORA-01110: data file 3: '/opt/oracle/oradata/eygle/users01.dbf'

TEXT
-----------------------------------------------------------------------------------
ORA-01157: cannot identify/lock data file 4 - see DBWR trace file
ORA-01110: data file 4: '/opt/oracle/oradata/eygle/eygle01.dbf'
ORA-27037: unable to obtain file status
ORA-01157: cannot identify/lock data file 4 - see DBWR trace file
ORA-01110: data file 4: '/opt/oracle/oradata/eygle/eygle01.dbf'
ORA-1109 signalled during: ALTER DATABASE CLOSE NORMAL...
ORA-01157: cannot identify/lock data file 4 - see DBWR trace file
ORA-01110: data file 4: '/opt/oracle/oradata/eygle/eygle01.dbf'
ORA-27037: unable to obtain file status
ORA-01157: cannot identify/lock data file 4 - see DBWR trace file
ORA-01110: data file 4: '/opt/oracle/oradata/eygle/eygle01.dbf'

TEXT
-----------------------------------------------------------------------------------
ORA-1109 signalled during: ALTER DATABASE CLOSE NORMAL...
ORA-1113 signalled during: alter database open...
ORA-01157: cannot identify/lock data file 4 - see DBWR trace file
ORA-01110: data file 4: '/opt/oracle/oradata/eygle/eygle01.dbf'
ORA-27037: unable to obtain file status
ORA-01157: cannot identify/lock data file 4 - see DBWR trace file
ORA-01110: data file 4: '/opt/oracle/oradata/eygle/eygle01.dbf'
ORA-1113 signalled during: alter database open...
ORA-1122 signalled during: alter database open...
ORA-283 signalled during: ALTER DATABASE RECOVER database ...
ORA-1122 signalled during: alter database open...

TEXT
-----------------------------------------------------------------------------------
ORA-1109 signalled during: ALTER DATABASE CLOSE NORMAL...
ORA-1113 signalled during: ALTER DATABASE OPEN...
ORA-1109 signalled during: ALTER DATABASE CLOSE NORMAL...
ORA-1122 signalled during: ALTER DATABASE OPEN...
ORA-1503 signalled during: CREATE CONTROLFILE REUSE DATABASE "EYGLE" NORESETL...
ORA-1109 signalled during: ALTER DATABASE CLOSE NORMAL...
ORA-1991 signalled during: ALTER DATABASE MOUNT...
ORA-01110: data file 4: '/opt/oracle/oradata/eygle/eygle01.dbf'
ORA-01115: IO error reading block from file 4 (block # 1)
ORA-27069: skgfdisp: attempt to do I/O beyond the range of the file
ORA-01122: database file 1 failed verification check

TEXT
-----------------------------------------------------------------------------------
ORA-01110: data file 1: '/opt/oracle/oradata/eygle/system01.dbf'
ORA-01207: file is more recent than controlfile - old controlfile
ORA-1122 signalled during: alter database open...
ORA-283 signalled during: ALTER DATABASE RECOVER database using backup cont...
ORA-01110: data file 4: '/opt/oracle/oradata/eygle/eygle01.dbf'
ORA-01115: IO error reading block from file 4 (block # 1)
ORA-27069: skgfdisp: attempt to do I/O beyond the range of the file
ORA-01194: file 1 needs more recovery to be consistent
ORA-01110: data file 1: '/opt/oracle/oradata/eygle/system01.dbf'
ORA-1194 signalled during: alter database open resetlogs...
ORA-283 signalled during: ALTER DATABASE RECOVER datafile 1 ...

TEXT
-----------------------------------------------------------------------------------
ORA-283 signalled during: ALTER DATABASE RECOVER database using backup cont...
ORA-01110: data file 4: '/opt/oracle/oradata/eygle/eygle01.dbf'
ORA-01115: IO error reading block from file 4 (block # 1)
ORA-27069: skgfdisp: attempt to do I/O beyond the range of the file
ORA-01194: file 1 needs more recovery to be consistent
ORA-01110: data file 1: '/opt/oracle/oradata/eygle/system01.dbf'
ORA-1194 signalled during: alter database open resetlogs...
ORA-283 signalled during: ALTER DATABASE RECOVER datafile 1 ...
ORA-1109 signalled during: ALTER DATABASE CLOSE NORMAL...
ORA-1589 signalled during: ALTER DATABASE OPEN...
ORA-01110: data file 4: '/opt/oracle/oradata/eygle/eygle01.dbf'

TEXT
-----------------------------------------------------------------------------------
ORA-01115: IO error reading block from file 4 (block # 1)
ORA-27069: skgfdisp: attempt to do I/O beyond the range of the file
ORA-01194: file 1 needs more recovery to be consistent
ORA-01110: data file 1: '/opt/oracle/oradata/eygle/system01.dbf'
ORA-1194 signalled during: alter database open resetlogs...
ORA-1109 signalled during: alter database close...
ORA-1503 signalled during: CREATE CONTROLFILE REUSE DATABASE "EYGLE" NORESETL...
ORA-1507 signalled during: ALTER DATABASE CLOSE NORMAL...
ORA-1113 signalled during: alter database open...
ORA-00202: controlfile: '/opt/oracle/oradata/eygle/control01.ctl'
ORA-27037: unable to obtain file status

TEXT
-----------------------------------------------------------------------------------
ORA-205 signalled during: ALTER DATABASE MOUNT...
ORA-1507 signalled during: ALTER DATABASE CLOSE NORMAL...
ORA-01501: CREATE DATABASE failed
ORA-01526: error in opening file '?/rdbms/admin/sql.bsq'
ORA-07391: sftopn: fopen error
ORA-01526: error in opening file ''
ORA-1092 signalled during: CREATE DATABASE eygle
ORA-1079 signalled during: ALTER DATABASE MOUNT...
ORA-1507 signalled during: alter database open...
ORA-214 signalled during: alter database mount...
ORA-1507 signalled during: ALTER DATABASE CLOSE NORMAL...

TEXT
-----------------------------------------------------------------------------------
ORA-214 signalled during: ALTER DATABASE MOUNT...
ORA-214 signalled during: alter database mount...
ORA-1113 signalled during: ALTER DATABASE OPEN...
ORA-01157: cannot identify/lock data file 3 - see DBWR trace file
ORA-01110: data file 3: '/opt/oracle/oradata/eygle/eygle02.dbf'
ORA-27037: unable to obtain file status
ORA-1113 signalled during: ALTER DATABASE OPEN...
ORA-01157: cannot identify/lock data file 3 - see DBWR trace file
ORA-01110: data file 3: '/opt/oracle/oradata/eygle/eygle02.dbf'
ORA-27037: unable to obtain file status
ORA-1113 signalled during: alter database open...

TEXT
-----------------------------------------------------------------------------------
ORA-01157: cannot identify/lock data file 3 - see DBWR trace file
ORA-01110: data file 3: '/opt/oracle/oradata/eygle/eygle02.dbf'
ORA-27037: unable to obtain file status
ORA-283 signalled during: ALTER DATABASE RECOVER database ...
ORA-1109 signalled during: ALTER DATABASE CLOSE NORMAL...
ORA-1100 signalled during: alter database mount...
ORA-1178 signalled during: alter database create datafile '/opt/oracle/produc...
ORA-1516 signalled during: alter database create datafile '/opt/oracle/oradat...
ORA-1991 signalled during: ALTER DATABASE MOUNT...
ORA-01157: cannot identify/lock data file 3 - see DBWR trace file
ORA-01110: data file 3: '/opt/oracle/oradata/eygle/eygle02.dbf'

TEXT
-----------------------------------------------------------------------------------
ORA-27037: unable to obtain file status
ORA-283 signalled during: ALTER DATABASE RECOVER database ...
ORA-01157: cannot identify/lock data file 3 - see DBWR trace file
ORA-01110: data file 3: '/opt/oracle/oradata/eygle/eygle02.dbf'
ORA-27037: unable to obtain file status
ORA-283 signalled during: ALTER DATABASE RECOVER database using backup cont...
ORA-1109 signalled during: ALTER DATABASE CLOSE NORMAL...
ORA-1991 signalled during: ALTER DATABASE MOUNT...
ORA-01157: cannot identify/lock data file 3 - see DBWR trace file
ORA-01110: data file 3: '/opt/oracle/oradata/eygle/users01.dbf'
ORA-27037: unable to obtain file status

TEXT
-----------------------------------------------------------------------------------
ORA-283 signalled during: ALTER DATABASE RECOVER database ...
ORA-01157: cannot identify/lock data file 3 - see DBWR trace file
ORA-01110: data file 3: '/opt/oracle/oradata/eygle/users01.dbf'
ORA-27037: unable to obtain file status
ORA-283 signalled during: ALTER DATABASE RECOVER database using backup cont...
ORA-01157: cannot identify/lock data file 3 - see DBWR trace file
ORA-01110: data file 3: '/opt/oracle/oradata/eygle/users01.dbf'
ORA-27037: unable to obtain file status
ORA-283 signalled during: ALTER DATABASE RECOVER database using backup cont...
ORA-279 signalled during: ALTER DATABASE RECOVER database using backup cont...
ORA-308 signalled during: ALTER DATABASE RECOVER CONTINUE DEFAULT ...

TEXT
-----------------------------------------------------------------------------------
ORA-308 signalled during: ALTER DATABASE RECOVER CONTINUE DEFAULT ...
ORA-1547 signalled during: ALTER DATABASE RECOVER CANCEL ...
ORA-1589 signalled during: alter database open...
ORA-1109 signalled during: ALTER DATABASE CLOSE NORMAL...
ORA-1503 signalled during: CREATE CONTROLFILE REUSE DATABASE "EYGLE" NORESETL...
ORA-1178 signalled during: alter database create datafile '/opt/oracle/produc...
ORA-1991 signalled during: ALTER DATABASE MOUNT...
ORA-01157: cannot identify/lock data file 3 - see DBWR trace file
ORA-01110: data file 3: '/opt/oracle/oradata/eygle/eygle02.dbf'
ORA-27037: unable to obtain file status
ORA-1157 signalled during: alter database open...

TEXT
-----------------------------------------------------------------------------------
ORA-1113 signalled during: alter database open...
ORA-1991 signalled during: ALTER DATABASE MOUNT...
ORA-1109 signalled during: ALTER DATABASE CLOSE NORMAL...
ORA-1031 signalled during: alter database open...
ORA-3217 signalled during: ALTER TABLESPACE TEMP DEFAULT STORAGE (INITIAL 10M...
ORA-1507 signalled during: alter database close...
ORA-1507 signalled during: ALTER DATABASE CLOSE NORMAL...
ORA-1507 signalled during: alter database close normal...
ORA-1507 signalled during: ALTER DATABASE CLOSE NORMAL...
ORA-1106 signalled during: alter database dismount...
ORA-1531 signalled during: alter database open...

TEXT
-----------------------------------------------------------------------------------
ORA-1531 signalled during: alter database open...
ORA-1531 signalled during: alter database open...
ORA-1531 signalled during: alter database open...
ORA-1531 signalled during: alter database open...
ORA-1109 signalled during: alter database close...
ORA-1507 signalled during: alter database close...
ORA-1507 signalled during: ALTER DATABASE CLOSE NORMAL...
ORA-1185 signalled during: alter database add logfile group 6
ORA-350 signalled during: alter database drop logfile group 3...

163 rows selected.

SQL>

-The End-

有朋自远方来 不亦悦乎

« 转载一则辛酸的幽默-买房 | Blog首页 | 使用Oracle的外部表查询警告日志文件 »


今天,以前在昆明的同事邱晨来家里做客,他出差到北京已经有半个多月,明天即将离开北京。

我在2003年4.1离开昆明,来到北京,离开熟悉的城市,离开熟悉的同事和朋友们。回头看去,已经是三年有余了。那时候的很多同事也已经离开了先前的公司,开始了自己的探险。

邱邱是个很好学的孩子,一直非常努力,在Oracle ERP的财务方面具有很深的造诣,我以前一直劝他来北京,他因为家人的缘故,不曾考虑,现在转到PCCW工作,但是仍然是留在昆明。这份坚持与坚定也着实让我感动。

昆明实在是个美丽的城市,我无比怀念,可是离开了那么久,一直没有机会再回去;能和多年的老友相聚在北京,实在是让人开心,往日时光与记忆再上心头。

中午做了很多菜款待朋友,有我拿手的土豆炖排骨,Julia擅长的乌鸡虫草汤,还有美味仙虾,醇香红酒,很久没有这么丰盛的午餐。

之后又托他捎几本我的新书《深入浅出Oracle》给以前的同事和我的师傅
俺的师傅技术精湛、逻辑严密,对我影响极深,我能够走上Oracle的道路,当初在很大程度上都得益于他的带领与教诲,现在据说也已经离开了原来的公司。
WithFriends

有朋自远方来,不亦悦乎!
举杯遥祝,朋友们别来无恙!

-The End-

10月14日

Tom新作《Oracle9i&10g编程艺术》

« 在VCS下如何手工加载磁盘组 | Blog首页 | 转载一则辛酸的幽默-买房 »


TomNewBook 昨天,收到了出版社寄来的Tom的新书《Oracle9i&10g编程艺术》,这本书出版已经有些日子,而且据说销售非常不错。
Thomas Kyte 的影响力非同一般,这本书的英文版在网上流传很久,但是并没有影响到中文版的销售。

粗略翻了一下,从装帧到印刷再到翻译都非常不错,远远好于Expert One-On-One那本,虽然两本书的内容有很大的延续性,但是似乎看那一本书的DBA已经基本老去了,不再买书,很少看书:)
而新一代的DBA们已经崛起,这一类经典书籍的需求量仍然很大。

据可靠数据,Tom的这本书9月份入库,首印5000,现在库存仅余2000余册,相对这本书高昂的价格,销售成绩是非常不错的。

对比一下我的《深入浅出Oracle》,从 7月22日上市以来,7月份被动销售了764册,8月份的被动销售大约有1470册左右,9月份被动销售有908册左右,首印的5000册大约在两个半月左右售罄;Tom一个月的销量和我的书两个月的销量差不多,恩,要继续努力学习,争取将来有机会还能再奉献有用的书给大家。

而纵观图书出版市场,人民邮电出版社最近两年取得了很长足的发展,在Oracle图书方面,出版的几本Oracle书籍都很畅销;而同一时期其他出版社出版的Oracle类技术书籍就相对有限。

从今天开始阅读Tom的新书。

-The End-

《深入浅出Oracle》一书重印

 

« 张靓颖专辑《The One》将于明日发售 | Blog首页 | 帮朋友发招聘启事:数据挖掘高级工程师 »


今天,收到出版社的通知,《深入浅出Oracle》一书首印的5000册基本售罄,现开始重印,首次重印3000册。

从7月22日首发到今天,大约2个半月的时间,本书取得的成绩和《 Oracle数据库性能优化》一书大致相同,那本书在2个月时间大约销售了4000册。

我和本书的编辑开玩笑说,希望重印的还能卖得掉。
她说,这本书8000册的销量已经是比较保守的估计了。

恩,不管怎样,有读者认可这样一本书始终是我的荣幸。
而无论是批评还是鼓励,我都欢迎:)

国庆放假到江门,路过书店时进去看了一下,发现居然也有我的书在卖,不过估计很难卖掉的了:
MyBookAtJM

在新书重印之际,记录一下,今天也是Julia的生日,而我最近感冒,没能和她一起庆祝,很是抱歉,只能在此说一声:Happy Birthday,Baby!

-The End-

8月25日

中国首届杰出数据库工程师评选前10名单

« sql.bsq与数据库的创建 | Blog首页


今天下午,中国首届杰出数据库工程师评选颁奖典礼于北京国宾宾馆举行。

十位最终进入前十名的选手一一亮相,选手名单如下,排名不分先后:

王明胜 李强 段云峰 万正勇 邢海捷 盖国强 齐红胤 牛新庄 冯春培 汪海

本次活动也终于落下了帷幕。

以下是个人在现场的照片一张:

eygle@bestdba

-The End-

警惕骗子-以同学名义行骗

« 《深入浅出Oracle》出版一月记 | Blog首页 | sql.bsq与数据库的创建 »


上周末遭遇了一场电话诈骗,嫌疑人持广东口音,行骗方式就只有一种:

首先告诉你是你的老同学某某(可能是同学录5460上查到的资料),现在在某某地出差(一般是你所在的城市或者离你非常近的城市),并说当天比较忙,会在第二天去找你玩,第二天他就会告诉你他出了车祸,让你以最快速度往他的卡上打一万块钱,并说怕家人担心,只能向你开口(如果你提及去看他或者送钱给他,他肯定就会找各种理由搪塞)。

我收到第一个电话后就到同学录上去看,发现有的同学已经揭露了这个骗子,于是我就等骗子的电话,第二天果然按照规范模式开始来骗我,闲来无事,绕了他几轮,后来骗子知道被我识破,不再打来了。

现在看来,在网上公布自己的真实信息是很危险的,骗子真是无孔不入啊,请大家相互提醒一定要小心,同学已经报案,但是我们国家的报案程序相当的复杂,一听就崩溃了,还是自己提高警惕现实点。

一个善良的同学还被骗的跑了一次成都,以下是他的血泪控诉:

真他妈的无耻,这个13107842461冒充同学xxx。让老子亲自到了一趟成都。该家伙于本月19日下午与我联系,说20日到德阳(我处)。我19日晚还上了5460网,了解同学情况。当时网上都没有这方面的相关信息。这个无耻的家伙在20号上午说出了车祸,说什么出门在外,靠这靠那的,让俺打5000元钱。具体过程同前面描述类似。于是我亲自到了成都,我想把钞票亲自交给本人。到了成都才发觉上了当。无耻啊。这个该死的家伙,让老子白跑了一趟成都。现在的社会,实在太让人伤心了。各位同学,一定要提高警惕,现在的骗子太多了。

大家相互转达,一定要小心了。

想想以前5460就曾涉嫌"出卖"会员数据给ucloo搜人网站,把个人详细信息放在那里太危险了,马上把自己的详细信息删除了。大家如果在那里注册,最好也作一下处理。

-The End-

7月28日

《深入浅出Oracle》代码及服务

« 《深入浅出Oracle》新书已经出版 | Blog首页 | 《深入浅出Oracle》的销售情况 »


《深入浅出Oracle》一书已经出版,很多朋友可能已经买到了本书.

为了方便大家学习阅读,我整理了一下,将书中的部分代码放在本站提供下载,大家可以点击下载.也可以通过如下链接下载:

www.eygle.com/orabk/head.first.oracle.script.zip

为了更好的为本书服务,我新开设了一个邮箱,用于接收关于本书的问题,纠错和其他咨询.

购买本书的朋友,可以向 oracle @ eygle.com 邮箱发送邮件,请在邮件中给出你的常用邮件地址,这样我就可以建立一个读者列表,定期给大家推荐一些有益的文章,或是发布一些关于本书勘误信息等.

有意者请发邮件,请信任我邮件地址不会被滥用:)

《深入浅出Oracle》新书已经出版

« Oracle11g 将于何时推出? | Blog首页 | 《深入浅出Oracle》代码及服务 »


今天上午参加了China-Pub的活动,新书已经拿到,书的封面和印刷做的都不错.很高兴在现场看到很多老朋友,感谢他们远道来捧场.时间匆忙,没有仔细聊聊,很遗憾.

有朋友说我们的书曾经帮过他们的大忙,对作者来说这也许是最好的消息,希望这本新书同样能得到大家的喜爱.

现在ITPUB的技术丛书已经有了三本,来张全家福Show一下:

three_books.jpg

希望能够继续得到大家的支持!