经过三个半月的浴血奋战,终于在5月5号、6号完成了最后的备考征程,终于可以释放啦(5月31号才收到oracle的考试通过通知)!
整个过程,洋溢着个人的汗水和辛苦,还有家人的默默付出。每天晚上都要学习到12点,以保证按计划完成每天的学习任务。儿子的学习、家里的大小情况,一概包在老婆的身上啦。所以要由衷地感谢她们,感谢她们对我的照顾,也感谢她们对我的忍让!
虽然学习过程充满了辛苦,但整个学习路线却是非常清晰的。一个就是,跟着西班牙Oracle大师Raulibaper的学习分享,逐个目录进行学习。后续我会把这个大师的博文剪辑贴出来给大家参考。另一个就是,根据网上搜集的前辈们贡献出的模拟考题,不停做练习。就这两条,无它啦。
网络上也有不少前辈写了不少OCM考试总结,主要是考试内容方面的,大家可以参考一下,我这边就赘述啦。我主要是想就考前遇到的一些问题,跟大家介绍一下,希望对大家有帮助!
一、考试环境问题
1、考试地点
国内就三个地方可以参加考试:北京、上海、广州。而广州往年的考试频率特别低,所以我就前往北京参加了考试。可谁知今年广州反常,比往年增加了许多场次,比如5月份就有3场,6月份有1场,所以如果有朋友离广州比较近的话,可以考虑等等找个广州的考试时间。
大家可以天天刷新访问以下这个网址来选择到哪里参加考试:
http://education.oracle.co.uk/html/oracle/28US/SCHED_SP_OCM.htm
另外,北京考场的机器内存是4G,其它考友介绍上海考场的机器内存是8G,快很多。大家也可参考一下。
2、奇数机、偶数机
这个问题,其实网络上已经有很多介绍啦,也介绍得挺清楚的。不过,我考前还是有点担心,所以想告诉大家的是,真的不用担心,其实就是两个独立的PC摆在你的面前,机器名前面都相同,只有最后一位不同,用来判断奇数机和偶数机。在这里引用一下他们的介绍:
奇数机(edsir5p1)与偶数机(edsir5p2):在真正考试时,每个人面前会有两台机器,一台称为奇数机(ODD),一台称为偶数机(EVEN),要你在ODD 机器上做什么或者在 EVEN 机器上做什么,偶数还是奇数是依靠机器的hostname 最后一位或者两位数字来定。
3、EM是否安装?
确认一下,考试环境中是没有EM环境的,只能自己安装。在资源计划管理、SPA环节,需要太多命令,而且也很容易出错,我这边就是手工安装EM来完成的。其实也花不了多少额外时间,你只需要发布一下命令让它单独运行,你继续做其它题目,等它运行完毕后再用EM完成相关题目即可。
4、DNS是否安装?
嗯,这个东东已经安装好,你可以用nslookup检查一下即可。考试环境中DNS服务器是单独的机器,跟RAC的两台机器不是同一台机器。考前我还做了没有DNS的准备,准备使用hosts文件安装RAC环境。
5、是否需要额外安装包,比如各种rpm?
答案是不需要,考试环境是32位的Oracle Linux,数据库所需要的程序包都已经安装,不再需要考生再去操心。我在考试时完全没遇到这个问题。
6、数据库崩溃场景
崩溃场景也是两场,分别在Sec3 - Data Management和Sec5 - Performance Management部分,只是没有明确要你恢复数据库,只有在你做启动数据库时才发现这个数据库坏掉需要你来恢复。这两个场景分别是:1)redo日志和users表空间文件被删掉;2)system表空间文件、控制文件被删。
7、考试题目都在奇数机上,以网页的格式提供给大家。同时它提供给大家一个按钮“end state”,用于检查考试环境是否正常,如果不正常,要求考生调整相关部分保证其结果正常。每个skillset结束时,都做这个动作。其实呢,它就是检查相关数据库能否连接成功。可能会有陷阱,见下面介绍。
二、考试题目难点
1、skillset 1——服务器配置
1)要求将所有错误、警告信息输出文件定位到$ORACLE_HOME目录下。
这个题,记得要设置diagnostic_dest参数。
2)打补丁,补丁号好像是以128开头
题目要求是在线打补丁,但我执行opatch apply后报错误:$ORACLE_HOME/bin目录下的oracle文件状态是active。我只好把所有实例关闭后才把补丁打成功。
3)end state时发现prod4实例状态不对
但是在操作系统下检查监听和实例都正常。这时需要修改正确prod4的tnsname连接串即可,这是一个小陷阱。
2、skillset 3——数据管理
1)物化视图调优:给了一个物化视图,但只有sh.products一个表。执行完毕dbms_advisor.tune_mview语句后,再执行dbms_mview.explain_rewrite语句发现结果总是不能rewrite,不知为什么。
这个题目,我没搞定,大家注意一下。
2)传输表空间时,一定要记得题目中提到的solaris系统的dump文件。记得检查V$TRANSPORTABLE_PLATFORM中具体支持哪些solaris,编码,32位或64位,然后使用RMAN转换时记得严格按照语法来做。
convert datafile ‘******‘
from platform ‘******‘
to platform ‘*******‘
format ‘*******‘;
不然,容易出现转换语句无法识别文件错误。
3)外部表:根据提供的gzip文件、控制文件生成外部表,然后再导入数据。要求一定要使用uncompress文件解压,uncompress文件存在于控制文件中。这个地方要注意一下,不能将gzip文件解压后再执行。
3、skillset 4——数据仓库管理
1)插入某一个表一些数据(通过执行一个脚本),然后将数据恢复到updata前的状态。
不应该使用flashback database语句,应该使用dbms_flashback.transaction_backout语句。
select versions_xid
from test_employees
versions between scn minvalue and maxvalue
where versions_operation=‘U‘
order by versions_startscn;
exec dbms_flashback.transaction_backout(2,xid_array(‘*****‘,‘******‘));
4、skillset 5——性能调优
1)使用SPA调优时,对SQL语句使用SQL TUNE ADVISOR、SQL ACCESS ADVISOR优化时,10g和11g前后两个场景比较时发现未达到优化的目的。
我全部使用的是EM完成的,然后没有达到优化的目的,但大家一定要把该有的操作步骤全部完成。因为这有可能是考试的一个陷阱。
5、skillset 7——Data Guard
我全部采用命令来完成的,复制数据库时通过duplicate命令完成的。提醒大家注意的是,两台机器的oracle_home实际目录是不一致的,大家配置tnsname连接串时一定要配置正确啦,否则是无法复制成功的。
另外要主要演练一下服务名为带域名的格式,比如prod1.us.oracle.com,检查是否可行。配置DGMGRL服务名时,记得为prod1_DGMGRL.us.oracle.com。
三、考试复习小结
1、考前一定要制定个详细的计划,每天务必完成。不然,很难坚持下来。
2、每场考试时间都挺紧的,务必在考前严格按照考试时间多演练几次,一定要通过各种办法把时间控制住。比如很复杂的命令就不要手工输入啦,使用EM吧。
3、每一个题目都要完整的做完,不管结果是否达到。oracle评分时,我觉得主要是看你的这些步骤,有的时候还可能是个陷阱。
4、考试时如果发现考试机器有问题,一定要及时跟监考老师沟通,很可能会给你延长考试时间。我在考试时,一哥们的电脑自动重启啦,延长了将近一个小时,搞得我们也等了一个小时。
以上就是我个人的一点经验总结,希望对大家有所帮助!