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

    数据库程序员面试分模拟题4.docx

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

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

    数据库程序员面试分模拟题4.docx

    数据库程序员面试分模拟题4倚答题1. FORUPDATE和FORUPDATEOF的区别是什么?正确答案:SE1.ECT.FORUPDATE语句的语法如下:SE1.ECT.FOR(江南博哥)UPDATEOFcolumnlistWAITnNOWITSKIP1.OCKED;其中,这个OF子句在涉及多个表时,具有较大作用。若不使用OF指定锁定的表的列,则所有表的相关行均被锁定。若在OF中指定了需修改的列,则只有与这些列相关的表的行才会被锁定。WAIT子句指定等待其他用户释放锁的秒数,以防止无限期的等待。“使用FORUPDATEWArr”子句的优点如下:D防止无限期地等待被锁定的行。2)允许应用程序中对锁的等待时间进行更多的控制。3)对于交互式应用程序非常有用,因为这些用户不能等待不确定的时间。4)若使用了SKIP1.OCKED,则可以越过锁定的行,不会报告由Waitn引发的“资源忙”异常报告。在OraCIeIOg之前,SE1.EeT.FORUPDATE获取的是2级TM锁,而从OracleIOg开始,SE1.EeT.FORUPDATE获取的是3级TM锁。考点锁2. 什么是更新丢失?正确答案:更新丢失是指多个用户通过应用程序访问数据库时,由于查询数据并返回到页面和用户修改完毕单击保存按钮将修改后的结果保存到数据库这个时间段(即修改数据在页面上停留的时间)在不同用户之间可能存在偏差,从而最先查询数据并且最后提交数据的用户会把其他用户所做的修改覆盖掉。当两个或多个事务选择同一行数据,然后基于最初选定的值更新该行时,会发生丢失更新问题。每个事务都不知道其他事务的存在。最后的更新将重写由其他事务所做的更新,这将导致数据丢失。简单来说,更新丢失就是两个事务都同时更新一行数据,一个事务对数据的更新把另一个事务对数据的更新覆盖了。这是因为系统没有执行任何的锁操作,因此并发事务并没有被隔离开来。SeriaIiZabIe可以防止更新丢失问题的发生。其他的三个隔离级别都有可能发生更新丢失问题。SeriaIiZabIe虽然可以防止更新丢失,但是效率太低,通常数据库不会用这个隔离级别,所以,需要其他的机制来防止更新丢失,例如悲观锁和乐观锁。考点基本概念3. 什么是HighVersionCount?正确答案:一个父游标下对应的子游标个数被称为VerSioncount,每个子游标对应一个执行计划。对于一个特定的游标有多少个版本(VCrSiOnCoUnt)属于高版本游标是没有明确定义的。对于不同的系统有不同的数量界定。HighVersionCount不仅产生的原因是多种多样的,而且会导致各种令人头痛的问题,轻则导致数据库的性能急剧下降,CPU利用率剧增,重则导致数据库挂起,触发ORA-O4031或者其他BuG导致岩机。在AWR报告中,VerSiOneoUnt大于20就会被报告出来,如下图所示。SQ1.orderedbyVersionCount在VElnCOUM大干减时舸能会影麻触能这里的MCrSionCOUnl已经接近EQa>,最大的5W,达奸系魅说是发电性的¾iodtwtI三Mw1y5wSQlkiISQlUoduk"Vevt>onCoonlAccabontSQ1.执行计划的生成,是受到很多因素影响的。相同父游标只是表示输入SQ1.的字面值相同。子游标对应的因素,如优化器类型、优化器的模式(Optimizerjiode),对应对象权限等的差异,都会影响到子游标的共享。在OraCIeIIg中,V$SQ1.SHARED工URSOR可以用来诊断子游标不共享问题的原因。该视图通过SO1._ID和CHI1.D_NUMBER就可以定义某个特定子游标的信息。该视图中大部分列都是以VRCHAR2(1)的Y/N取值,每列的含义都是-个不能共享的理由。需要注意的是,这个理由N表示的是不能与第一个子游标(CHI1.D_NUMBER=O)共享的理由。考点游标4. SQ1.注入的含义是什么?正确答案:所谓SQ1.注入(SQ1.Injection),就是通过把SQ1.命令插入WEB表单提交或输入域名或页面请求的查询字符串,最终达到欺骗服务端执行恶意的SQ1.命令的目的。例如,在代码中使用下面的SQ1.语句:SQ1.="SE1.ECTTOP1*FROMUSERWHERENAME='''+NAME+'',ANDPASSWORD='''+PASSWORD+''''来验证用户名和密码是否正确,其中,NAME和PASSWORD是用户输入的内容,当用户输入用户名为,密码为"BB或'A'='A'"时,拼接出来的SQ1.语句就为mSE1.ECTTOP1*FROMUSERWHERENAME=*AA,ANDPASSWORD=BB,OR,A,=,A,w,那么只要USER表中有数据,这条SQ1.语句就会有返IUl结果,这就达到了SQ1.注入的目的。作为DBA,永远不要信任用户的输入,相反,必须认定用户输入的数据永远都是不安全的,对用户输入的数据必须都进行过滤处理。考点SQ1.注入5. SQ1.ServerAccessOraCIe三种数据库之间的区别是什么?正确答案:ACCeSS是一种桌面数据库,只适合于数据量少的应用系统,在处理少量数据和单机访问的数据时是很好的,效率也很高。但是ACCeSS数据库有一定的极限,如果数据达到100MB左右,那么很容易造成AeCeSS假死,或者消耗掉施务器的内存导致服务器崩溃。SQ1.SerVCr是基于服务器端的中型数据库,适合大容量数据的应用,在处理海量数据的效率、后台开发的灵活性、可扩展性等方面强大。因为现在数据库都使用标准的SQ1.语言对数据库进行管理,所以,如果是标准SQ1.语言,那么两者基本上都可以通用的。SQ1.SerVer还有更多的扩展,可以用存储过程、函数等。OraCle是基于服务器的大型数据库,主要应用于银行、证券类业务等。考点维护操作6. 集群安装过程中的$GRID_HOME/root.sh脚本的作用是什么?正确答窠:该脚本主要执行CRS的配置、格式化OCR磁盘、更新etcinittab文件、启动OCSSd进程、新建etcoracleOCr.IoC文件等,是RAC安装过程中非常重要的一步。若后期OCR、O1.R或表决磁盘出现问题都可以通过重新执行root,sh脚本来修更集群的配置信息。京新执行root,sh脚本的过程如下:$GRIDH0MEcrsinstal1/rootcrs.pl-deconfig-force-verbose卸载配置信息SGRIDHOME/crs/instal1/rootcrs.pl-deconfig-force-verbose-lastnode-keepdg最后一个节点可以保留磁盘组ddif=devzeroof=devrhdiskNbs=1024kcount=1024清理磁盘头$DRIDJK)VE/root,sh-重新执行另外,deconfig执行完后可以考虑删除以下文件:Is-1$GRID_BASE/C1usterware/ckptGridH*fredSGRIDJIOMEZgpnp/*-typeffind$GRIDJIOMFZgpnp/*-typef-execrm-rf:集群的配置信息包含在文件$GRID_HOVE/crs/inst.a1lcrsconfig_params中,root.sh脚本根据该文件的配置信怠设置OCR的内容。在执行root,sh脚本的过程中产生的日志在目录$GRID_H0ME/cfgtoo11ogs/crsconfig/下。考点RAC7. 假定SERV表有A、B、C三个字段:SERV(ANUMBERdO)tBNUMBER(IO)jCNUMBER(10)o表RrSERV的内容如下:BCA1 10702 305011080以下两段P1./SQ1.的功能是根据A列的值,查找出对应B列的值赋予变量X,请分别判断这两段P1./SQ1.是否能正常执行,若不能正常执行,请指出错误的原因并修改。1)DEC1.AREXNUMBER;BEGINSE1.ECTBINTOXFROMSERVWHEREA=I;DBMS.OUTPUT.PUTJJNECn1.CHAR(X);END;2)DEC1.AREXNUMBER;BEGINSE1.ECTBINTOXFROMSERVWHEREA=2;DBMSOUTPUT.PUT.1.INE(TOCHR(X);END:正确答案:这两段程序除了NHERE语句后的值不同以外,其他均一样。对于程序1),当=lIbl,返回了2行记录:对于程序2),当A=2时,返回了1行记录。对于变量X而言,只能接受一个值,所以,程序2)执行不报借,程序D执行报错:OKA-01422:exactfetchreturnsmorethanrequestednumberofrowso对于程序D有两种修改方法,第一种就是将"SE1.ECTBINTOXFROMSERVWHEREA=匕”修改为“SE1.ECTDISTINCTBINTOXFROMSERVWHEREA=1;"。第二种方法就是返回集合类型,修改后的程序块如下:DEC1.AREVarcursorsys.refcursor;XSERV%ROWTYPE;BEGINOPENVRCURSORFORSE1.ECTT.*EROMSERVTWHEREA=I;1.OOPfetchVarcursorintox;EXITWHENVRCURSOR%NOTFOUND;DBMSj)UTPUT.PUT_1.INE(R.B);END1.OOP;END:考点高级操作8. 对于OraCIe数据库,使用裸设备的好处有哪些?正确答案:因为使用裸设备避免了再经过OS这一层,数据直接从磁盘到数据库进行传输,所以,使用裸设备对于读写频繁的数据库应用来说,可以极大地提高数据库系统的性能。当然,这是在磁盘的"0非常大,并且磁盘I/O已经成为系统瓶颈的情况下才成立。如果磁盘读写确实非常频繁,以至于磁盘读写成为系统瓶颈的情况成立,那么采用裸设备确实可以大大提高性能。考点裸设备(RAW)9. 如何捕获存储过程中出现异常的行号?正确答案:使用函数DBVS.UTI1.ITY.FORMAT_ERROR_BACKTRACE可以获取到出现异常时候的程序的行号,而函数DBMSJTIUTY.FORMAT_ERROR_STACK可以获取到出现异常时的错误信息,作用和SQ1.ERRM一样。考点程序处理10. 如何查询SCHEDU1.ERJOB的运行日志?正确答案:可以通过查询视图DB/_SCHEDU1.ER_JOBRUN_DETAI1.S来获取SCHEDu1.ERJOB的运行日志、产生的错误等信息。代码如下:SE1.ECTJRD.1.OG_ID,JRD.JOB_NAME,N.JOB一C1.ASS,T(1.CHAR(JRD.1.OG_DATE,'YYYY-MM-DDHH24MISS,)1.OG_DATE,JRD.STATUS,JRD.ERROR#,JRD.RUxDURATlON运行时长,JRD.ADDITIONA1._INF.0FROMDBA_SCHEDU1.ERjOi1.1.OGN,)BA_SCHEDUI.ER_JOB_RUN_DETAI1.SJRDWHEREN.1.OGD=JRD.1.OGJ)ANDN.JOB.NAME=*JOB-IN

    注意事项

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

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




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

    copyright@ 2008-2023 yzwku网站版权所有

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

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

    收起
    展开