导读:
最近有很多同学在跑路,有的会选择加入到DBA这个行业,可能之前做过开发,或者运维等相关行业,写这篇文章就是想让大家了解一下MySQL DBA正常工作的内容。也让大家更了解MySQL DBA。
DBA(Doctorate of Business Administration,工商管理硕士),然而并不是。也许在有些人眼中看DBA这个行业很闲一天没什么事喝喝茶水,看看报纸就下班了。也许有人看我司的DBA为啥忙成狗啊,也不知道天天在忙些什么。那么下面就简单说一下MySQL DBA的日常工作。
首先你刚来一个新的环境,或内部转岗位。第一件事就是要尽快的熟悉你的库,实例,主机等相关的信息。要做到心中有数,其中包括(高可用,备份信息等)如果这些已经完善了。那么恭喜你,今晚可以睡一个安稳觉了。当然在以后的上班期间,你要校队和检查备份,要保证高可用和备份都是可用的。
其次要熟悉MySQL的配置参数,linux系统的参数的,是否前任或者运维人员是否有配置错误,或者高可用的选择上有误,如果发现有误,要记录下来。并有计划整改。不要太过激。工作要有工作的方法和方式。
然后要进行系统和MySQL的错误日志还有slow log的查看。检查是否有错误,如果有,要提出解决办法,和避免措施。
最后要检查MySQL的版本,表的存储引擎,表是否有主键。是否有大字段,表的容量,是否有大表。包括后期的DDL执行,还有锁和隔离级别的选择。这些都是一个长期修改的过程,一定要配合开发同学,尽量的去说服他们。(表示遇见过直接去修改没有任何通知的,这种事你改出故障,那么活该你背锅)。
以上是针对新人入职或者内部转岗,新来一家单位要做的一些首要问题。那么在说说入职了一段时间后的工作内容。
首先要完善 备份 高可用 监控 巡检这些工作内容,要根据单位的实际情况做出合理划的选择。其次就是sql的变更,优化(包括SQL语句和参数等)。如果有必要就需要考虑审计。根据实际情况配合开发做新的业务数据库的表的设计的工作。
当有一定规模的时候就要考虑自动化。首先要考虑好标准化的设计,包括数据库的版本 数据库的data目录等信息,为后期的自动化做准备。尝试的写一些自动化的脚本或者工具。逐步的去尝试写自动化的平台。
最后,上述内容已经包含了升级 db的选型,监控 备份 高可用 巡检 主从 当然还有优化的内容,除此以为还有故障处理,日志分析等等,需要一定的知识储备,这些只是MySQL的内容 可能会接管其他类型的db 例如redis mongo等,还需要多留意每个版本的更新,更新了那些功能,修复那些bug。DBA要保证数据库的安全和稳定。愿各位工作顺利~