Mysql DBA 20天速成指南
DBA是什么?
DBA是数据库管理员认证,英文是Database Administrator。
DBA的一些职责:
安装和升级数据库服务器(如Oracle、Microsoft SQL server),以及应用程序工具。
数据库设计系统存储方案,并制定未来的存储需求计划。
一旦开发人员设计了一个应用,就需要DBA来创建数据库存储结构(tablespaces)。
一旦开发人员设计了一个应用,就需要DBA来创建数据库对象(tables,views,indexes)。
根据开发人员的反馈信息,必要的时候,修改数据库的结构。
登记数据库的用户,维护数据库的安全性。
保证数据库的使用符合知识产权相关法规。
控制和监控用户对数据库的存取访问。
监控和优化数据库的性能。
制定数据库备份计划,灾难出现时对数据库信息进行恢复
维护适当介质上的存档或者备份数据
备份和恢复数据库
联系数据库系统的生产厂商,跟踪技术信息。
以下是一个MYSQLDBA速成学习指南需要的朋友可以阅读一下。
准备一台pc,一根网线和20天无打扰的空余时间,把MySQL 5.1参考手册设置为浏览器首页,按下面列表逐条学习即可,这本中文手册包括基本上所有的内容,补充知识google也都能查到,学习平台采用linux
基本知识
- mysql的编译安装
- mysql 第3方存储引擎安装配置方法
- mysql 主流存储引擎(MyISAM/innodb/MEMORY)的特点
- 字符串编码知识
- MySQL用户账户管理
- 数据备份/数据入导出
- mysql 支持的基本数据类型
- 库/表/字段/索引 的创建/修改/删除
- 基本sql 语法:select/insert/update/delete,掌握最基本的语法即可,什么inner join,left join的了解就行 mysql的应用场景大多都是高并发访问/业务逻辑简单,join/子查询/视图/触发器 基本上不用
- sql 聚集查询:group by/having
- 如何用explain 分析优化查询
- 常见 sql 优化技巧
- select xx from yyy limited …,
- order by random
- select count(*) from
- 各种show xxx 指令,大概有20种,每个都尝试用一次
- show VARIABLES; 大概有240项,逐条看懂,可以打印出来贴墙上
高级操作
- mysql 主从同步配置
- mysql 双master 配置
- mysql 双master+丛库+keepalived 配置高可用数据库
客户端
- 作为DBA,一定不要用各种GUI工具,mysql自带命令行client才是你的最佳武器
可选项
- mysql 分区配置,因为限制太多,实际中分表都是程序做
- 高性能 mysql
drizzle
MariaDB
handlersocket
吹牛逼用,实际工作也很难用上,因为性能从来都不是问题,凡是采用各种“ 奇巧淫技”的项目,必然是天坑,人民群众喜闻乐用的产品都是老老实实采用最简单朴素技术实现
ok,耐着性子20天学完,你就能胜任主流互联网公司Mysql DBA工作
吐个槽,我招募过很多DBA,mysql DBA的工作知识就这么些,其他DBA也差不多,看一遍操作一遍你就学会了,基本上不用智商。所谓亿万用户海量计算,哪只是一种经历,你在现场你就会有。DBA只是一个”看门狗”的角色:有事能打电话找到人,出了事故有人可以被罚款,没事就一边凉快去。
互联网让获取知识的成本越来越低,数据库越来越像一个普通软件,你见过浏览器,office需要专人操作么?
所以,DBA不是一个可以承载梦想的职业,年轻人如果想在技术领域有发展,想要“改变世界”,老老实实写代码当程序员去吧。
原文来自:lutaf.com