数据库程序员面试分类真题18.docx
数据库程序员面试分类真题18简答题1. OGG环境中如何使用OS命令?正确答案:可以使用Sh命令临时执行OS命令,如F:GGSCIrti6J)2>shpsc>pmonoracleoracleoracle119061005:45?1三I薇01!:I9pu/l130681三01!:I9PWl(0:00:02oraj三a.orcllhr00:00:00Sh-cps-efigrepPKffl00:00:00grepFKn考点OGG2. OGG的告警口志文件的位置在哪里?正确答案:OGG的告警日志文件为$OGGIOMEggse.log,如下:IoQdcgorchlhr-JSoiSOGGJiOMEone蝇瞰hr骂呼ecl»$OGG_HOMEl*u01.,ggllorad咯Mwggll)SHHggw彻2OI5-O6-WI43tt2INFOOGGH)O953OradeGokknGucMwerforOrade,rep.PnItPurgingkghyfetnggusr.GGS.DDlJ11SToldatian2OI5<15-251330.02245146:0ws(Wesdftomggu$r.GGS_DD1._HIST.2015-O6-(14;IM2KFOOGJxl953OrxkGoIdcnGiicMlWffixOrade111r.p1111:Puling魄toaayf11xnggusT.GGS.DD1._HlST_A1.Toldffn2O155-2313:3(HQ52?»0rowddcMdfromggastGGS.DD1.HlST.A1.T.2015-06-(I43O2KFOOGGH)W53OradcGoMenGueMiccrfirOade,呼PfmPurejngloghyfrccnggw.GGS.MARKEROldtnhln20505-2513r三2255577:Orousddctdfrom啊.GGS_MARKER.考点OGG3. 1.ogdump工具的作用是什么?正确答案:1.ogdump(1.ogFileDumpUtility)是一个OGG白带的trail文件分析工具,而且能加深对OGG工作原理的理解,非常值得花时间来研究它。1.ogdUmP组件默认在安装目录,是个可执行文件。直接输入IOgdUmP按回车键即可进入1.OgdUmP界面。考点OGG4. 在一套曳制环境中使用不同版本OGG需要注意什么问题?正确答案:分为以卜几种情况:1)若源端OGG版本低,目标端OGG版本高,则此种配置不需要做任何的额外改动,与两端是相同OGG版本的同步是完全一样的参数设置。2)若源端OGG版本高,目标端OGG版本低,则此种配置需要在源头的抽取进程和传输进程的参数文件中设置TrailFiIe的格式,设置为与目的端OGG版本一样的格式,如下:EXTTRAIKwailfile>,FORMATRE1.EASE10.0RMTTRAIKtrailfile>,FORMATRE1.EASE10.0注意,以上命令中的10.0是目的端OGG的版本号。考点OGG5. 错误“0GG-00446Couldnotfindarchivedlogforsequence”如何处理?正确答案:如果面试官问到维护OGG曾经碰到的一次故障处理过程,那么就可以拿这个错误作为案例来说明。OGG-OO446主要是归档文件丢失引起,处理办法就是将缺失的归档日志找回来。如果找不到所需归档日志,那么可以按照如卜2种办法来处理。第一种办法是改变抽取进程的时间,但这可能会导致数据不一致,执行方法如下:GGSCi(HP-HP)l>alterextractextl,beginnow第:种办法是重新初始化,重新初始化过程如下。源库查询到当前的SCN:SQ1.>SE1.ECTCURRENT_SCNFROMVSDATABASE;CURRENT_SCN12242466771468基于SCN导出所需要的数据:expdpXXX/XXXdirectory=DMPdunpfile=xpadb2016012501.dmp1.OGFI1.E=Xpadb20160125.logTAB1.ES=BASEACTIONPOWER,BSEBANKF1.ASHBACKSCN=12242466771468目标库导入所需要的数据:impdpXXX/XXXDIRECTORY=OGGDDUMPFI1.E=XPadb2016012501.dmp1.OGHI1.E=impdp.xpadb_20160125_01.logREMAP.SCHEMA=xpadb:xpadrptREMAP-TAB1.ESPACE=Xpaddat:XPaddata目标库重新开启应用进程:GGSOOPHPll>S3rt侬ii期,血网12242¼677!¼8考点OGG6. RMN是什么?RVAN的特点有哪些?正确答案:为了更好地实现数据库的备份和恢熨工作,Oracle提供了恢熨管理器(ReCoveryManager,RMA)。RMAN是一个nJ以用来备份、恢复和还原数据库的应用程序,是随Oracle服务器软件一同安装的Oracle工具软件,通过执行相应的RMAN命令可以实现备份和恢复操作。RMA可以用来备份和恢复数据库文件、归档口志、控制文件和系统参数文件,也可以用来执行完全或不完全的数据库恢复。RMAN有三种不同的用户接口:COMMANDUNE方式、GUl方式(集成在OEM中的备份管理器)、API方式(用于集成到第三方的备份软件中).RMAN具有如下特点:1)功能类似物理备份,但比物理备份强大N倍。2)可以把备份打包成备份集,也可以按固定大小分割备份集。3)备份与恢任的过程可以自动管理。4)可以使用脚本(存在RecoveryCatalog中)。5)RMAN会检测和报告损坏的数据块。6)可以跳过未使用的数据块。在执行RMAN备份时,RMN不会备份从未被写入的数据块。而传统的备份方法无法知道已经使用了哪些数据块。7)备份压缩,也可以压缩空块。RMA使用一种OraCIe特有的二进制压缩模式来节省备份设备上的空间。尽管传统的备份方法也可以使用操作系统的压缩技术,但RMAN使用的压缩算法是定制的,能够最大限度地压缩数据块中一些典型的数据。8)执行增量备份,可以在块级别上实现增量。如果不使用增量备份,那么每次RMAN都备份已使用块:如果使用增量备份,那么每次RMAN都备份上次备份以来变化的数据块,这样可以节省大量的磁盘空间、I/O时间、CPlI时间和备份时间。9)块级别的恢复。可以只还原或修夏标识为损坏的少量数据块。在RMAN修复损坏的数据块时,表空间的其他部分以及表空间中的对象仍可以联机。10)在备份时不需要将表空间置于热备份模式。11)可以使用RMAN来测试备份而不需要实际还原它们。考点RMAN7. RMAN可以用来备份哪些文件?不能用来备份哪些文件?正确答案:RMAN可以用来备份:数据库:包括数据文件、控制文件、SPEl1.E(ServerParameterFiIe)文件;表空间;归档文件;备份集。RMAN不能用来备份:联机日志文件(OnlinCRedo1.ogs);非READ/WRITE状态的可传输表空间;PFI1.E(ParameterFiIe)文件。考点RMAN8. 物理备份和逻辑备份分别是什么?正确答案:物理备份是指将数据库的所有物理文件完整复制到备份位置的一个过程。物理备份是所有物理文件的一个副本,例如,数据文件、控制文件、归档日志等。该副本能被存储在本地磁盘或磁带。物理备份是备份或恢境的基础,包括冷备份(非归档模式)和热备份(归档模式)。物理备份既可以在数据库打开的状态下进行,也可在数据库关闭的状态下进行,但是逻辑备份和恢复则只能在数据库打开的状态下进行。逻辑备份是指使用工具exp或expdp将数据库时象的结构和数据导出到:进制文件的过程。当数据库对象被误操作而损坏后就可以使用工具imp或impdp利用备份的文件把数据对象导入数据库中进行恢夏。逻辑备份是物理备份方式的一种补充,多用于数据迁移。考点RMAN9. 若一张表被执行了TRUNcVrE操作,则如何恢复数据?正确答案:在求职数据库相关的岗位的时候,经常会被问到一个问题:在开发或维护过程中误操作TRUNCATE了一张表,如何恢复?这个时候应该由简到难地回答,可以按照如下的步骤进行回答:1)是否有测试库,测试库的表数据和当前数据是否一-致,若一致,则可以考虑从测试库把衣数据导入被删除的库中。2)是否有exp或expdp逻辑备份,若有,则可以导入被删除的库中。3)是否有RVAN备份,若有,则可以将数据恢熨到其他地方,然后将数据库exp出来,最后导入被删除的库中。4)数据库是否开启了闪回,如果开了闪回则可以利用闪回数据库的特性找回数据。5)利用表空间基于时间点的恢复技术(TSPITR)来恢复。6)是否有归档,若有则11J以采用1.ogMiner进行日志挖掘。7)若以上这些办法都不能恢复,则可以尝试无备份情况下的恢复。这里推荐两种办法,fy_recoverdata包和gdul工具,关于这两种工具的具体使用案例可以参考作者的博客。考点RMAN10. Oracle的SCN是什么?正确答案:SCN(SystemChangeNumber,系统改变号)是一个由系统内部维护的序列号,SCN在数据库全局是唯一的。当系统需要更新的时候自动增加,它是系统中维持数据的一致性和顺序恢复的重要标志,是数据库中非常重要的一种数据结构。在数据库中,SCN作为一种时钟机制来标记数据库动作,比如,当事务发生时,数据库会用一个SCN来标记它。在数据库中,SS可以说是无处不在,例如,数据文件头、控制文件、数据块头、口志文件等都标记着SCN。也正因为如此,数据库的一致性维护和SCN密切相关。不管是数据的备份还是恢复都离不开SC1.由于SCN描述的是数据致性的状态,所以,它会在各种涉及数据-一致性的场合中起到重要作用。考点RMANU.SCN可以分为哪儿类?正确答案:SCN可以分为4类,系统检查点SCN(SySteinCheCkPOintSCN)、文件检查点SCN(DatafiIeCheckpointSCN)、开始SCN(StartSCN)和结束SCN(StOPSCN),参考下表。分类R!介青浮角SCN域出ttt三XuCbcckpoini0ra11ef3l2t!xrro5SystanCwIiaSCN,该SCN½M三fi.当姓茹嬲的SCNW肺,苗数毗于只t豚用松螭就怆加SCNSE1.ECTCHECKPOIOT,CHANGFROMVSDATAfiASE文件收数SCN翻好娴读懿环贩i次树泄砧按作曲SCN.触.将表如励只速、BEGINBACKUP或麻个雕文件M力OFF1.INE9SE1.ECT曲CHEeKpolN1.CHANGE*TO_CHAR(CHECKPO!NTilME5YYYdM-DDHH24MSylcPTiMEFROMVWATAF11.E;常文帙SCN)醮好头在新CW"rtM,OKlC会更新勰林个雕文缺的SUflSCN(注也不处按期文件中),出个SCN存在的目的总也代骷部E动过则耍嗣瓢介质敢(M曲Reway).蟒的悯过肿,SamQWkP向SCN=DaafikChaiPOinlSCN