欢迎来到第壹文秘! | 帮助中心 分享价值,成长自我!
第壹文秘
全部分类
  • 幼儿/小学教育>
  • 中学教育>
  • 高等教育>
  • 研究生考试>
  • 外语学习>
  • 资格/认证考试>
  • 论文>
  • IT计算机>
  • 法律/法学>
  • 建筑/环境>
  • 通信/电子>
  • 医学/心理学>
  • ImageVerifierCode 换一换
    首页 第壹文秘 > 资源分类 > DOCX文档下载
    分享到微信 分享到微博 分享到QQ空间

    数据库程序员面试分类真题19.docx

    • 资源ID:1027361       资源大小:62.82KB        全文页数:14页
    • 资源格式: DOCX        下载积分:5金币
    快捷下载 游客一键下载
    账号登录下载
    三方登录下载: 微信开放平台登录 QQ登录
    下载资源需要5金币
    邮箱/手机:
    温馨提示:
    快捷下载时,如果您不填写信息,系统将为您自动创建临时账号,适用于临时下载。
    如果您填写信息,用户名和密码都是您填写的【邮箱或者手机号】(系统自动生成),方便查询和重复下载。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP,免费下载
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    数据库程序员面试分类真题19.docx

    数据库程序员面试分类真题19倚答题1. Oracle中的坏块指的是什么?正确答案:Oracle数据文件的坏块可以分为物理坏块和逻辑坏块。物理坏块指的是块格式本身已经损坏,块内的数据没有任何意义:逻(江南博哥)辑坏块指的是块内的数据在逻辑上存在问题,比如索引块的索引值没有按顺序排列导致的逻辑坏块。物理坏块一般是由于内存问题、OS问题、I/O子系统问题或硬件引起的,逻辑坏块一般是由OracleBUg等原因引起的。坏块通常是通过OraeIe的ORA-Ol578错误报告出来的,详细的损坏描述会在告警日志中打印出来。可能的报错如下:ORA-O1578:ORAC1.Edatablockcorrupted(fiIe#6,block#11)ORn-Ol1IOidatafile6/u01apporacteoradataorcltbsl.dbf,那么何时进行数据块的一致性检直呢?当一个数据块被读或写的时候,将对块进行一致性检查,检查的内容包括块的版本、比较块在CaCh。和BIOCkBUffer中的数据块地址,然后根据要求进行校验(CheCkSUm).块的一致性检查由DBB1.0CKCHECKSUM和DBB1.OCKQIECKlNG两个初始化参数控制。DBB1.OCKCHECKSUM是一种物理检查,只有在写入(DBWn常规写或用户进程宜接路径写入)数据文件时,根据一个CHECKSUM算法计算数据块的校验和,然后写入数据块的一个特定位置,在读取块时再进行检验,主要是为了防止1/0硬件和1/0了系统的错误。DBB1.OCK.CHECKING参数主要用于数据块的逻辑一致性检查,但只是在块内,不包H块间的逻辑检查,用于防止在内存中损坏或数据损坏。考点RMAN2. Oracle中的坏块有哪些检测方法?正确答案:坏块的检测方法主要包括卜表所示的几种。方法I)FS中:dhfil.!hr*st01,dbfblocksize=8l922)ASM中:SdbVfie=÷DATA般喻朋施I2H99Ml:即邂三MRdoHi.朋R此联、嬲文件和RMANW.娘肝酬文件懒教正,(b丽R令行如,一1£林文件的触块,二是豌朋在生正反时;5要自由的怖由包括SYWSDRtSK和SYSSYS_USER_SEGS)UWid零1命令文好憎叫名的文件反胡酬口侬FR需忑黑黑粽-畸蠢畸SEGMENTNAMEqBC1.HR',对连接文件摩跳实则政务懿文物甑.艘牌DBVRFY如麻限薪后醐施解f含飕名的文件,3)甑段.料加end&幽枷跑ID或蜥在(如)瞅睚女蟒倒减备作为林旅虏么我撼蜥In醯文算段头懿第:证存相在ASM中的贵兴件,瓦么能留院用"ZK影方:dbvuse油5yStaT*gme11l#36.12130嫌不龌即名解外舷就到DBV三8:USERlDmusbuSpedfitdfctOSMIito摭第ANA1.YZE令黜分析紫鼾棘,Mtmm翱!懒触,mmmmm帆vt,vnTAillUZWVovrcWmEAIw1.YZE它也磔欣个胸制婕i三国坏的OAM1.YZH辎濡JM-但行#块枚但自足不会斥记趣为CoRRUP1.版院果保存在USHlDUMP_DEST豚询用户TRACE文件中对N讪邛块)我执厅导出发作,会收到相关的SSK版(ORA-OIJ78).卬坏触好会发财根理包括HWM(酩峨)肚的槌、索引中存确械,髅?财睇的极.肝这相娥,料明颇设须燃复修妫耀奸,施卜.酬½a方法;旗1:朋侬I怖通过联IOBI施多舸雎导出酬依让Ondc%轴撕的块,10231l0rade的标filft.即位全和喇魁加蝴懿块,只导出包含旧做的JHMZfift三,眦导出的表射招人用我从百触源I)眦IOBI施怀_aplpabks三TBC.1.HRfile=T,BC-1.HIlSQ1.>ahSyJtonseicMI0231tracecameCo叱Ufccn,htlIff;2)觑HttniWyft;SQ1.>ahJysemsetCCe='10231tractoamccorutfwmrJevdV;方法2:蜩DB电REPAIR祢亩麻饿.ttffiDBMS_R£PAIR处耳腋触曲Oraefe做换耳胡掾撕除削浦曲时候会蒯掷潮戈通型:SQ1.>EXECDBMSREWHISK1PCORRbHB1.OCKS(U双TAB1.ENAMERAcKUPVAIIDMEDXrAFl1.E12;RMAw炖麒壮湛飘.蛾的贾蟒中包含Backupvalidaitdaarase有时bE么总会或利给说BACKUPVAUDATcCHEeK1.OGICA1.DATABASEARCHIVaoGAU;考点RMAN3. BMR如何恢复坏块?正确答案:如果数据库只有很少的数据块被破坏,那么块介质恢复(BlOCkMediaRecovery,BMR)是较好的块恢复方法。BMR只能用于恢复物理损坏(PhySiCalCorruptions),在数据文件联机时即可恢复相关坏块。BMR主要使用Blockrecover命令恢复坏块,该命令有以下三种使用方式:1)使用aB1.OCKRECOVERCORRUPTION1.lST;”命令恢复在VSDATABASE_B1.OeK.CORRUPTION视图中报告的所有块。2)使用aB1.OCKRECOVERDATEI1.E1B1.OCK10;”命令恢复单个块,需要指定文件号和块号。3)使用"B1.OCKRIiCOVERTAB1.ESPACETSJJSERDBAXXX;"命令恢熨某个表空间的坏块,需要指定表空间和数据块地址。下面给出几个恢复示例。恢复3个数据文件的损坏块:Rman>Blockrecoverdatafile2block12,13datafile3block5,23,24DTFI1.E4B1.OCK20;从数据文件拷贝中恢复一系列块:Blockrecoverdtfile3block2,3,4tablespacets_userdb4194405,4194409,4194412fromDATAFI1.ECOPY;从指定的TAG备份中恢复块:RMAN>blockrecovertablespacesystemdba4194404,4194405fromTAGwweekly-backup*:从用于恢夏数据到两天以前的备份中还原、恢熨SYSTEM表空间中的两个块:RVAN>blockrecoverTAB1.ESPACEsystemdba4194404,4194405restoreUNTI1.TIME,sysdate-2,:运行备份验证数据库,修复在V$DATABASEB1.OCKCoRRUpTION中记录的所有损坏块:RMAN>BCKUPVA1.IDATEDATABASE;RMN>B1.OCKRECOVERCORRUPTION1.IST:考点RMAN4. 如何确定坏块的对象名?正确答案:根据绝;寸工件号和块号确定数据块对象的SQ1.语句如下:SE1.ECTTAB1.ESPACE_NAME,SEGMENTjrYPE,OWNER,SEGMENT_NAME,PARTITION_NAMEFROMDBA_EXTENTSWHEREFI1.E_ID=&FI1.E_IDAND&BI.OCK_IDBETWEENB1.OCK,IDANDB1.OCK,ID+B1.OCKS-1;如下的SQ1.可以确定段苫用的数据块:SE1.ECTDBMSROWID.ROWIDOBJECT(ROWID)OBJECTID,DBMSROWID.ROWIDRE1.ATIVEFNO(ROWID)FI1.E_ID,DBMS_RoWID.ROWID_B1.OCK_NUMBER(ROWID)B1.OCKID,COUNT(I)COUNTSFROM1.HK.T_BC_1.HRDGROUPBYDBMS_ROWID.ROWID_OBJECT(ROWlD),DBMS_ROWID.ROW1D_RE1.ATIVE_ENO(ROWID),DBMS_ROWID.ROWTD_B1.OCK一NUMBER(ROWID)ORDERBYDBMS.ROWID.ROWID_B1.OCK_NUMBER(ROWID);关于坏块需要注意以下几点:D对于受损的数据块,仅仅坏块上的数据无法被查询或读取,其余正常块的数据依旧可以使用。2)对于受损的表对象进行聚合等相关运算时会收到错误提示,因为坏块上的数据无法被统计。3)可以基于RMAN的备份文件实现块介质恢复,其数据文件无须OFF1.INE,开销最小,影响最小。4)对于多个数据块的损坏,先执行BACKUPVA1.lDATE校验数据库或相应的数据文件以便标记受损的坏块后,填充V$DATABASE_B1.OCK工ORRUPTloN后再使用命令"B1.OCKREcovERCORRUpTION1.IST;"一次性恢复所有的坏块。5)在缺省情况下,存在坏块的数据文件无法成功备份,也会导致自动备份脚本失败。考点RMAN5. 如果发现有坏块,那么如何检索其他未坏的数据?正确答案:首先需要找到坏块的ID(dbv工具可以实现),假设坏块ID为VBID>,文件编号为VFID>.运行下面的SQ1.语句查找段名:SE1.ECTSEGMENT_NAME,SEGMENT_TYPE,EXTENT_1D,B1.OCK_ID,B1.OCKSEROMDBA_EXTENTSTWHEREFI1.F-ID=<F11)>AND<BID>BETWEENB1.OCK,11)AND(B1.OCK,ID+B1.OCKS-1);找到标块所属的段名称,若段是一个表,则最好建立一个临时表,存放好的数据;若段是索引,则删除它,再重:建.CREATETAB1.EGOOD_TAB1.EASSE1.ECTFROMBADAB1.EWHEREROWIDNOTIN(SE1.ECTROWIDFROMBAD.TAB1.EWHERESUBSTR(ROWIf)t10,6)=<BID>);还可以使用诊断事件10231设置在全表扫描时跳过坏块,如下:SQ1.>A1.TERSYSTEMSETEVENTS,10231tracenamecontextforever,level10'然后创建一个临时表GooDJAB1.E,将原表中除坏块的数据都检索出来:SQ1.>CREATETAB1.EGoODJTAB1.ESSE1.ECT*FROMBADJAB1.E;最后关闭诊断事件:SQ1.>A1.TEKSYSTEMSETEVENTS,10231TRACENAMECONTEXTOFF'事件10231的说明如下:oraclerhel61hr-$OeRROK1023110231,00000,"skipcorruptedblockson_table_scans_*/*Action:suchblocksareskippedintablescans,andlistedintracefiles关于ROwID的结构,还nJ以参考DBvSROWlD.ROWIDCREATE函数。考点RMAN6. 1.ogMiner是什么?其有哪些用途?正确答案:1.ogMiner工具可以轻松获得Kedo日志文件(包含归档日志文件)中的具体内容,特别是该工具可以分析出所有对于数据库的DM1.操作(INSERT、UPDATE、DE1.ETE等)语句。Oracle9i后还可以分析DD1.语句,另外还可分析得到些必要的回滚SQ1.

    注意事项

    本文(数据库程序员面试分类真题19.docx)为本站会员(p**)主动上传,第壹文秘仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知第壹文秘(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2008-2023 1wenmi网站版权所有

    经营许可证编号:宁ICP备2022001189号-1

    本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。第壹文秘仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知第壹文秘网,我们立即给予删除!

    收起
    展开