如何成为MySQL DBA

     作者:吴炳锡 来源:http://wubx.net/ 联系方式: wubingxi#163.com 转载请注明作/译者和出处,并且不能用于商业用途,违者必究. 

        互联网高速发展的成功,得益于MySQL数据库的给力支持。MySQL本身发展的速度较快,性能方面提升显著,让传统企业也有想法使用MySQL提供服务。目前看来MySQL DBA的缺口非常大。所以欢迎加入到MySQL DBA的团队中来。

        有同学一提到MySQL DBA或是DBA都把高难度入门联系到一块。我从事MySQL DBA差不多10几年了,在这里我也给大家讲述一下怎么成为一名MySQL DBA, 少走湾路,快速成为MySQL DBA。

        首先MySQL大多是跑在Linux环境上的,所以我们需要学习一下Linux的知识,最基础的需要了解:

      • Linux的安装及目录结构意义
      • 常用的Linux命令,大概20多个
      • 网络基本知识,进一步了解网关及路由相关概念,dhcp
      • 撑握一定的Linux网络服务,如果LAMP结构,dns,  ftp 等

      其实具备上面的条件,你就可以开始MySQL DBA的学习之路了,其它的知识,可以在学习在补。 MySQL DBA比较特殊,不象别的数据库一样,需要分为开发DBA,运维DBA,基本上MySQL DBA要把所有的活都干下来,因为MySQL太简单了,很好搞定。 那么下面给大家说一下MySQL DBA的学习路径:

      • 了解MySQL的版本意义
      • 学习MySQL的安装方式,从根本下理解MySQL的启动原理
      • 学习SQL语言,把高中数学中集合知识好好在学习一下,再来看SQL语言
      • 学习SQL在MySQL使用中的一些规范(这些最好找有经验的请教一下,或是看看大会中别人分享的学习思考)
      • 学习MySQL的高级特性: 触发器,事件,存储过程编程,分区等
      • 学习MySQL的复制,了解复制原理及实现及相关高可用配合中有什么不足
      • 学习PXC结构的实现,了解运维中的坑
      • 系统的学习一下MySQL的体系结构,思想如何做MySQL优化,总结配置优化
      • 学习MySQL的备份恢复,这块可能需要多一些时间好好的系统的学习一下
      • 掌握几种压力测试的方法,方便优化后能做一个验证
      • 深入理解Innodb的体系结构,全面理解一下事务及锁的实现,能解析出来一个update tb1 set col1=col1+1 where pk=10;  这样的语句在Innodb都干了什么了。

  可以说上面的东西并不是很难,基本上只要认真努力,都可以进入到MySQL DBA的大门了。当然如果想进入更高级的DBA工作环境,还是需要点更高级的知识:

      • 理解MySQL的特点,方便在实际环境决择
      • 理解操作系统的IO调度,内存分配,CPU使用等
      • 理解复制的优缺点及改善的方法
      • 理解系统监控及系统瓶颈点分析
      • 有一定的问题排查思路
      • 可以全面的理解高可用的实现及自定义实现高可用架构
      • 有一定的平台管理意识及实现能力
      • 理解拆分的作用及实现的方法

     万里长征驶于足下,整体上来说踏上技术这条路,就要学会保持学习,能持续更新,敢于多关注现在的资源,利用现有的资源走上更的境界:

      • 了解现有硬件的特点
      • 了解业务的实现及难点
      • 了解常见NoSQL的使用
      • 关注新技术
      • 进入MySQL DBA架构师级别可以行容量的规划

     如果想系统提高一下MySQL DBA技术的,如果你是在职人员,可以利用周六时间来参加一下我的《MySQL DBA周末提高加班》,如果你现在没有工作,那可以考虑拼博3个月参加一下我组织的《MySQL DBA零基础就业脱产班》 一同走上MySQL DBA岗位。请联系我: QQ/weixin: 82565387. 2016年一起腾飞。

     在技术的成长之路,还有有一个比较重要的路径: 多参加同行业技术交流,关注行业技术实现。推荐: MySQL中国用户组, FireFlyClub 也欢迎各位加入。