« 《Oracle DBA手记》- 24小时小样到手 | Blog首页 | IBM小型机的内存deconfigured - 数据库之风险 »
《Oracle DBA手记》一书勘误表
链接:https://www.eygle.com/archives/2010/01/dba_notebook_errata.html
要知道错误总是难免的,《Oracle DBA手记》一书的勘误表我将整理记录如下,并向读者们致以歉意。怎样的检查都是难免有疏忽,有些可以理解,有些不能理解,但是请允许我们改正。
◆P25
原文:SQL> alter system set events '984 trace name errorstack off';
应为:SQL> alter system set events '984 trace name errorstack forever,level 3';
示范代码引用错误,不影响其他部分。
◆P73
原文:完全忽略了TNS_其不意ADMIN环境变量
应为:完全忽略了TNS_ADMIN环境变量
◆P96
原文:show parameter DB_RECOVERY_FILE_DEST
应为:show parameter log_archive_dest
◆P97
原文:通过合并碎片来优化Oralce的存储结构
应为:通过合并碎片来优化Oracle的存储结构
疏忽把Oracle拼写错误了,罪过罪过
◆P184
原文:图8-1 Oracle Database 12gR2安装配置选项
应为:图8-1 Oracle Database 11gR2安装配置选项
编辑选择图片说明时选错了,我没有看出来,抱歉。
◆P222
原文:explain plan for select * from t1_idx1 where object_id is null;
应为:explain plan for select * from t1_idx1 where object_id is null;
多余的一行代码,应当删除。
继续纠错中。
历史上的今天...
>> 2019-01-16文章:
>> 2013-01-16文章:
>> 2008-01-16文章:
>> 2007-01-16文章:
>> 2006-01-16文章:
>> 2005-01-16文章:
By eygle on 2010-01-16 17:36 | Comments (19) | Books | 2491 |
这两个勘误应该都是编辑的问题。已经请编辑跟踪这里的勘误记录。
感觉第一章26页第三行(第一行代码)应该是这样的吧:
alter system set events '984 trace name errorstack level 3';
而不是这个alter system set events '984 trace name errorstack off';
sorry,25页那里确实是写错了。我订正之,谢谢!
p223 Oracle Btree索引,一般情况下都是从左端扫描到左端,只有使用了如INDEX_DESC这样的HINT 或者使用ORDER BY DESC(如果是降序索引,则是ORDER BY)时才会从右端扫描到左端.
这句话对吗?
如果我们建索引后,默认为升序,SQL的order by 也是升序,从左到右刚好. 如果我们order by desc 则从右到左,也刚好,不需排序.
在P260有降序INDEX FULL SCAN 清除排序的优化的标题,您提到INDEX FULL SCAN 正常情况下自左向右进行数据读取,这好像和上一个说法不同?
还有个问题请教,上面所说正常情况下,那不正常是什么情况?
企eygle老师的指点.
我理解应该这样: Oracle Btree索引,一般情况下都是从左端扫描到左端,只有使用了如INDEX_DESC这样的HINT 时才会从右端扫描到左端
对不起这句话[[一般情况下都是从左端扫描到左端,只有使用了如INDEX_DESC这样的HINT 或者使用ORDER BY DESC(如果是降序索引,则是ORDER BY)时才会从右端扫描到左端]]
我搞错了.因为分区原因影响了我的判断
eygle大师,刚刚收到贵作,感觉这本书纸质不是很好!不如之前的印刷质量啊。不过封面还行。
我觉得还可以,应该排版比以前要好,先读读看:)
eygle大师,P72:用备份的控制文件恢复到CONTROL_FILES指向的目录/backup/bakora.
这句话什么意思,几次都没读懂他.可以给解释一下吗?
说的是,建了一个辅助数据库,这个数据库的控制文件存放在/backup/bakora目录下,这个目录也是控制文件中CONTROL_FILES参数的目的设置,将控制文件恢复到该位置。
说的是,建了一个辅助数据库,这个数据库的控制文件存放在/backup/bakora目录下,这个目录也是控制(PFILE)文件中CONTROL_FILES参数的目的设置,将控制文件恢复到该位置。
你的意思是:把备份的控制文件恢复到CONTROL_FILES指向的目录/backup/bakora。但是:
控制文件ctl.dbf(不知道为什么用DBF扩展名)一直在/backup/bakora下。
说的有点冗余,但是这里可能要修改控制文件的名称,按照参数文件的定义复制多个文件等。
大致这个意思吧。
eygle大师,我按着书上222页做实验,
explain plan for select * from t1_idx1 where object_id is null;
explain plan for select * from t1_idx1 where object_id is null
*
ERROR at line 1:
ORA-00942: table or view does not exist
请问下是怎么回事啊?
272面的按照顺序建立索引,这个顺序是按照什么规则来派的呢
to Wind ,忽略那一行代码,那是多余的。
to xxq780815 ,按照选择性,第一个字段是等值判断,可以缩小范围,后面的判断按照选择性高到低排列,这是一个尝试方向。应当根据SQL来判断。
P164 SLEECT MAX(FAILED_STATEMENT) FROM CLIENT_LOGS;
作者的意思是想取得FAILED_STATEMENT字段最长的那一行记录,但这个SQL应该是返回字典排序最后面的那个吧……
P164 SLEECT MAX(FAILED_STATEMENT) FROM CLIENT_LOGS;
作者的意思是想取得FAILED_STATEMENT字段最长的那一行记录,但这个SQL应该是返回字典排序最后面的那个吧……
这个后面一页有Max(length())的输出,前面展示了内容。