日期:2014-05-17  浏览次数:20492 次

DBA电话面试总结
 本人工作经验一年,前两年以DBA的职位进去,大多都在帮公司看服务器,就是人们熟知的监控人员,我不怪公司和老大们的安排,只怪自己技不如人,但是我知道我不会一直做监控。入正题吧。

     首先电话面试不同于做题,而且电话面试者的语速都非常快,我们一定要调整自己的语速,这不是抢答题,我们不要去迎合他的语速。一定要明白面试管想要考哪一个知识点。不得不说xiechengDBA的老大是个大牛。每次碰到这种人都会有敬畏之心,仿佛跟这些人有说不完的话,因为我深深的明白他们毅力过人,当我们看电影,娱乐,熟睡的时候这些人应该还在勤劳的研究技术。说几个我答错的和不完善的题吧?这里应该不算是泄题吧?因为他面试的时候看着你的简历。你简历上写你什么地方强,他就会在你强的地方问?

1. 唯一索引和唯一约束的区别?
这一问他只想要一句话,索引是物理概念,约束是逻辑概念。实现上没有什么区别唯一约束就是创建一个唯一索引来实现的。

2. checkpoint和惰性写入器的区别?
也只想要你一句话。checkpoint把数据脏页从缓存刷入磁盘,但是脏页并没有消失。而是在缓存中这个页头标记为干净页。

懒惰写应该是把缓冲中的脏数据页刷入磁盘后把这些页面的内存空间标记为空闲空间。(千万不要像我一样,回答什么检查点一分钟一次,切要刷入磁盘的脏数据页大于10M,懒惰写当内存压力比较大,bcp,bulk insert触发。这只是在他想要问题的边缘转一转。不是他想要的答案。10分题有可能会给2分。不高兴一分没有。)

3. 线程占用内存0.5MB,2MB,4MB CPU架构不一样占用内存不一样。我竟然说sqlserver版本不一样,占用内存不一样。

4. 一张表只有一条记录,占用10GB空间(意识就是有很多空数据页)。现在把其中的一列varchar(50)改变为varchar(100)问我要找到这条记录会比修改列宽度之前找到这条记录的时间快还是慢?
这道题当时我就蒙了,为什么蒙,因为我不知道他要考我什么,是考char和varchar 存储的区别,表结构,索引结构,还是要考扫描表有无索引是怎么驱动的,怎么跑的。 我的回答是时间会增长。(什么单次IO得到的行数更多啦,得到自己需要的数据概率更大啦,后续插入会页面产生也拆分啦。会扫描的页数更多啦,等等一堆没有用的废话。我感觉这个题他会给我0分。)

如果是堆结构,alter 过之后页面的数量没有变化,开始时是这么多页,现在还是这么多页为什么时间会变长? 如果此表有聚集索引,并且聚集索引就在这个列上和where后面跟的是这个列的条件。这个扫描时间会不会变长哪?我想也只能说有可能会增长。因为它IO次数有可能会增加,并不是数据页的IO而是索引层次的IO。意识就是本来索引树只有三层,而现在有6层(树更高了)。也就是多了一倍的IO找到了这条数据。当然这只是我自己想的。直到现在这道题考的那个知识点我都还没有弄明白。别人当然可以给你0分。

5. 隔离级别,我说道可序列化的时候他就打住不让我说了,意识就是乐观并发我不考你。然后就问,锁分别持有到什么时候。

前三个就不说了,到可序列化的时候,我说可序列化就是在聚集键上创建一个范围锁,他马上反问,那如果表没有聚集索引聚集键怎么办。我说那只能是表锁或RID上锁了,他马上又反问RID能上范围锁吗。它本来就是数据的物理结构,fileID,pageID,slotNumber 物理文件上能上范围锁吗? 哎,又一个0. 本来就是随机杂乱无序的怎么上范围。

HR说只不会很长时间最多问20分钟,结果整整问了我一个小时。唉。接完电话手机上全是油。

    这么长时间了,回答错那么多题,又拒绝了他开的工资。我想一定是没有希望了。但是哦并没有灰心,我一定好好学习,向大牛们致敬,向大牛们看齐。在自己眼里我永远都是IT界的小小鸟。我们能做的只有更勤劳,更勇敢!
面试 dba 索引 行业数据

------解决方案--------------------
唯一索引允许且只允许一个null,唯一约束不允许
------解决方案--------------------
个人认为面试题目不应该以考知识为主,应该注重能力和性格测试
------解决方案--------------------
引用:
网上是这么说的,BUT,我自己测试一下。他们都可以插入N多个null。

DB2中是这样的,实践出真知,顶你:)
------解决方案--------------------
有英文面试的分享一下不?
------解决方案--------------------

------解决方案--------------------

------解决方案--------------------

------解决方案--------------------
 学习无止尽啊...
------解决方案--------------------

------解决方案--------------------
感觉你回答的不错的,问这么细的目的不在于你具体问题的对错,而在于你是否了解到这个程度

第4个问题有个很奇怪的前提,一条数据,而且10g,搞不清什么情况(空页会自动回收的,不会留在表中,估计是这条数据带有大量BLOB字段);ALTER数据表字段改长,操作上是相当于增加了一个字段,页数是可能变化的,但是最多也就是增加1-2页,速度影响不大(BLOB页不必变化)。