本文可以作为MySQL DBA面试官,以及候选人的双向参考

面试流程

接下来先说下我以往在做MySQL DBA面试时的过程(套路):

1、先自我介绍后,再让候选人花2-5分钟做下自我简介
有不少人可能对自我简介这个环节嗤之以鼻,觉得多此一举,尤其是技术能力相对较好的更是如此。其实不然,通过短短2-5分钟的自我简介,很快就能考察出候选人是否有用心准备本次面试,其归纳总结能力,以及个人自信心等多方面信息。
因此,如果候选人看中这次面试机会的话,还请好好做下功课,做足准备。比如了解下目标公司的大致情况,主营业务,产品特色。可能的话,找同行打听可能的面试官背景信息,没准是校友、以前在同一家公司呆过、或者有其他共同点,这可能会使得面试过程更为顺利。
有心的候选人在面试官自我介绍时,就可以趁机也考察对方的情况。通常第一轮面试官很可能是你未来的直接主管,从面试过程中你和对方的沟通交流是否顺利也可预见到未来工作上配合的顺利程度。

2、暖身完,就开始进入主题,从候选人的简历入手,挑选其中感兴趣的关键点逐条交流,有几个要点:
和应聘职位关联性较高的技术要素,需要逐个过一遍,大致了解候选人对于这些技术要素的掌握程度;
挑选2-3个技术关键点,对候选人穷追猛打深入探讨,了解其真正的掌握程度,是泛泛的了解,还是知其所以然的那种,由此也可以考察候选人的学习方法、心态,是随波逐流抑或专精专注。
候选人每次跳槽经历也需要关注,究竟何种原因导致跳槽,每次跳槽是否其职业层次也跟着提高。由此考擦候选人的职业规划是否清晰,是否过于随性(任性)。否则的话,可能在下一家公司也待不了多久就会因为各种原因(最常见的就是薪资、或者对主管不服气)而跳槽。
候选人简历中特意提及的重点项目、事件、荣誉,也可以做深入的交流。

3、重点技术要素考察完毕,可以聊聊职业发展等其他方面的话题,比如

为什么选择我司;
如果还有其他公司的机会,如何权衡选择哪个offer,最主要的判断标准是什么;
期望什么样的工作环境,团队环境,以及哪种风格的主管;
对什么事情最在乎,或最不在乎;
除了薪资福利,对公司、工作的期望是怎样的。

专业技术考察

具体到技术实力考查上,通常可以关注几个要点:

基础知识考察

基础知识,尤其是一些理论知识,例如:

MySQL有哪些索引类型,这是个半开放式命题;
从数据结构角度可分为B+树索引、哈希索引、以及不常用的FULLTEXT索引(现在MyISAM和InnoDB引擎都支持了)和R-Tree索引(用于对GIS数据类型创建SPATIAL索引);
从物理存储角度可分为聚集索引(clustered index)、非聚集索引(non-clustered index);
从逻辑角度可分为主键索引、普通索引,或者单列索引、多列索引、唯一索引、非唯一索引等等。需要掌握这些不同概念之间的区别,例如主键索引和唯一索引的区别是什么。

为什么InnoDB表最好要有自增列做主键;
为什么需要设置双1才能保证主从数据的一致性;
有几种binlog格式*,及其区别是什么;
如何确认MySQL replication真正的复制延迟是多少;
有过哪些印象深刻的实践经验。
通过考察候选人的基础知识掌握程度,可侧面反映候选人对学习的态度,是否仅浅层面的了解。

核心技术能力考察

核心关键技术能力,例如:

怎么做的MySQL备份恢复方案及策略,为什么那么做,用什么工具;
MySQL主从复制的具体原理是什么,实际使用过程中,遇到过哪些坑,怎么解决的;
对一个大表做在线DDL,怎么进行实施的才能尽可能降低影响;
MyISAM和InnoDB都有哪些不同之处;
InnoDB的体系结构是否能讲的清楚,至少说出个大概;
假设现在服务器负载很高,都有哪些性能问题排查思路,以及优化的方案;
什么是死锁,什么是锁等待,如何优化;
关于MySQL及InnoDB优化,讲讲自己的见解或者实践经验;
如何确定及实施MySQL高可用方案,不同方案的优缺点对比;
一定规模的MySQL自动化运维经验如何;
在SCHEMA设计方面的经验如何;
基于MySQL所做过的一些数据库架构方案设计、实施经验。

通过考察候选人对这些核心关键技术的掌握程度,可知晓对深层次知识的掌握情况,除了实践,理论方面掌握了多少。

潜力考察

发展潜力以及学习能力,例如:

对Linux的掌握程度,以及Shell、Python、Perl等常用运维开发语言的掌握程度;
对服务器硬件设备,存储设备的了解程度;
对信息安全,网络知识的了解程度;
其他语言,例如C、C++、JAVA、PHP、GO是否有所了解。

这些知识对一般的DBA可能不太重要,但想要成为资深DBA或数据库架构师的话,这些知识是必不可少的。

一个专业DBA应具备的技能的更多相关文章

  1. Linux运维工程师应具备哪些技能?

      对于我们这些刚入门的运维小白来说,极强的好奇心总会驱使我们去涉猎各种技术,弄到最后很可能该学的知识半懵半解,知识体系混乱,学习毫无章法.因此,我们学习 时要有一个明确的目标和知识体系(也是我学习的 ...

  2. java工作三年应具备的技能

    LZ常常思考自己的未来,也从自己的思考中总结出了一些东西,作为第一部分来谈谈.LZ认为一名程序员应该有几个阶段(以下时间都算上实习期). 第一阶段:三年 我认为三年对于程序员来说是第一个门槛,这个阶段 ...

  3. 五年java工作应具备的技能

    具有一到五年开发经验 需要学习内容很多 JVM/分布式/高并发/性能优化/Spring MVC/Spring Boot/Spring Cloud/MyBatis/Netty源码分析等等等 01.透彻理 ...

  4. JAVA软件工程师应该具备的技能有哪些?

    前言:有朋友问我:学历和能力哪个重要?我个人觉得能力大于学历,没有能力哪来的学历,学历只是证明能力的一方面.为此在能力方面畅谈java软件工程师必备的能力.作为一名合格的java工程师,不仅需要学历, ...

  5. 工作了3年的JAVA程序员应该具备什么技能?(zhuan)

    http://www.500d.me/article/5441.html **************************************** 来源:五百丁 作者:LZ2016-03-18 ...

  6. 工作了3年的JAVA程序员应该具备什么技能?(转)

    工作了3年的JAVA程序员应该具备什么技能? 因为和同事有约定再加上LZ自己也喜欢做完一件事之后进行总结,因此有了这篇文章.这篇文章大部分内容都是面向整个程序员群体的,当然因为LZ本身是做Java开发 ...

  7. 4-6年经验左右、优秀的 Java 程序员应该具备的技能

    4-6年经验左右.优秀的 Java 程序员应该具备的技能有哪些,按“专业技能”和“项目”两块,包括但不限于以下内容. 专业节能方面 基础:JDK 常用类的原理.源码.使用场景. 设计模式:常用几种的原 ...

  8. 高级PHP工程师所应该具备一些技能

          很多面试,很多人员能力要求都有"PHP高级工程师的字眼",如果您真心喜欢PHP,并且您刚起步,那么我简单说说一个PHP高级工程师所应该具备的,希望给初级或已经达到中级的 ...

  9. AIOps背景/所应具备技术能力分析(上)

    本文篇幅较长,分为上,中,下,三个部分进行连载.内容分别为:AIOps 背景/所应具备技术能力分析(上),AIOps 常见的误解(中),挑战及建议(下). 前言 我大概是 5,6 年前开始接触 ITO ...

  10. 一名3年工作经验的java程序员应该具备的技能

    一名3年工作经验的Java程序员应该具备的技能,这可能是Java程序员们比较关心的内容.我这里要说明一下,以下列举的内容不是都要会的东西—-但是如果你掌握得越多,最终能得到的评价.拿到的薪水势必也越高 ...

随机推荐

  1. Type of the default value for 'data' prop must be a function的解决方法

    Type of the default value for 'data' prop must be a function的解决方法 问题现象 在写形如prop: {type: Array; defau ...

  2. new idea

    如何我希望将url链接作为大语言模型的输入,同时通过大模型的能力来学习与认识url网页链接中的文本.图片.语音等元素,应该怎么做? 要将URL链接作为输入来学习与识别URL中的文本.图片.语音等元素, ...

  3. Apollo功能及原理详解

    前言 公司里面使用的配置中心是携程开源的Apollo,之前我只使用过Nacos,遂记录一下学习过程. Apollo工作原理 模块介绍 上图就是Apollo的总体设计,从下往上挨个分析: ConfigD ...

  4. 基于AT89C51的数字时钟课程设计

    摘要:单片微型计算机简称单片机,又称为微控制器,是将CPU.RAM.ROM.定时/计数器.I/O接口电路集成到一块电路芯片上构成的微型计算机.本次设计的系统由单片机系统.数码管显示系统.键盘.蜂鸣器等 ...

  5. 如何快速的开发一个完整的iOS直播app(编解码原理)

    为什么要编码 编码就是压缩图像 手机摄像头采集的都是一帧一帧的图片,只要每秒采集了24帧,看起来就比较流畅,视频就是由一帧一帧的图片构成的,常见图片格式png,jpg,一张图片2M,一秒钟30帧,那么 ...

  6. OxyPlot:一个功能强大、漂亮.Net跨平台开源绘图库

    推荐一个支持多平台.多框架的.Net绘图库. 01 项目简介 OxyPlot是一个基于.NET开发的.跨平台的绘图库,可用于多种平台和框架,如WPF.Windows 8.Windows Phone.W ...

  7. 一文读懂 es6 中class方法中的this绑定

    一直以来有这么个疑问? class 的方法中没有自动的绑定this 为什么手动绑定之后,在绑定之后的方法里调用class中的其他的方法(这个方法为什么就能使用this,不也应该是null或者undef ...

  8. web40 无参数rce

    点击查看代码 <?php /* # -*- coding: utf-8 -*- # @Author: h1xa # @Date: 2020-09-04 00:12:34 # @Last Modi ...

  9. uniapp编译成小程序无法设置背景色

    参考地址: https://blog.csdn.net/weixin_42120767/article/details/107550236 在原生微信小程序中,我们可以设置page{backgroun ...

  10. 使用yarn安装依赖包出现“There appears to be trouble with your network connection. Retrying...”超时的提醒

    我们在使用yarn安装依赖包文件的时候,可能会出现"There appears to be trouble with your network connection. Retrying... ...