从删库到跑路,DBA 如何防止被淘汰?

之前一段曾刷爆朋友圈的一张图,广大 DBA 玩的不亦乐乎。删库与跑路,一时成为业内的热门话题,并由此派生出很多 “创意删”,“经典跑 “等。

删库容易跑路难,一个没有删过库的 DBA 的人生是不完美的,然而当删库成为 DBA 体验刺激甚至报复的工具,此时插翅也难逃法网恢恢。

所以不论是作为数据库的守护者 DBA,还是其他的运维人员,一定要遵循职业道德不断加强自我修养。

作为广大 DBA 的一员,我们扮演神圣的角色,我们希望做用户最忠实的后盾,在任何疑难问题和故障面前,能够骄傲地说,有我在!

大数据时代是一个以数据驱动决策的时代,数据就是企业的生命,DBA 是一个高危的行业,接触并保护企业最核心的数据资产,作为大数据时代的  DBA,如何防止自己被淘汰?

一句话对比三大数据库软件

这个世界上 Oracle、SQL Server 和 MySQL 三大数据库软件呈三足鼎立之势,三者之间互有优缺点。

我把三者的优缺点对比总结成了三行文字:

  • Oracle:最贵,功能最多,支持平台数量较多,速度中等,开发和运维比较简便,最安全。

  • SQL Server:价格适中,功能比较丰富,支持平台单一,速度最慢,开发和运维最简便,比较安全。

  • MySQL:价格最低廉,功能少但可自由添加,支持平台最多,速度最快,开发和运维繁琐但可简化,比较安全。

DBA 选择数据库的方法

按性能和安全性来选择

大型国企(银行)、传统企业上市公司(保险)的企业级应用对数据的完整性和安全性要求最高,务必万无一失,因此安全性最佳、功能最齐全的 Oracle 是传统软件的首选。

一般来说,移动互联网领域的公司对数据的完整性和安全性的敏感程度并不太高,所以互联网行业的从业者可能有入行几年还没见过 Oracle 的。

不过,电商、金融类的互联网产品对安全性要求同样非常高的软件也应该选择 Oracle 作为数据库。

如果公司是非移动互联网行业的外企,那么一定要选择 Orcale,一来是洋老板普遍财大气粗,二来是外企领导不像国内领导这么依赖对 Windows 系统友好的数据库软件。

按开发速度和运维难度来选择

一般国企和事业单位以及传统企业小公司的领导对软件(一般情况下只有展示网站,连 ERP 系统都是买现成的)的要求就是价格低、快点出结果;加上国内的传统的领导对 Windows 系统有说不清的迷恋。

如此一来选择 SQL Server 能同时满足这三个要求,不过一般在这样的单位不会存在 DBA 这个岗位——让开发网站的程序员担任 DBA 的一部分职责(其实也就只有备份、恢复、作业管理等几样)。

按价格和速度因素来选择

移动互联网时代的创业公司并不需要太纠结数据的万无一失,但很在意成本,并且对数据访问速度要求很高。

因此资金不太充裕、为了给移动端提供 API 的服务器选择 MySQL 是最明智的。

事实上在互联网领域 MySQL 的市场占有率是最高的,绝大多数移动互联网公司都用 MySQL 作为数据库。

Oracle 和 SQL Server 都是具备完善功能的数据库生态系统,而 MySQL 仅是一个速度快、兼容性好的关系型数据库软件。

但好在 MySQL 是开源的,同时追求速度快和数据安全的公司(移动互联网领域的电商、金融公司)在资金充裕的情况下,可以专人负责写一个自己的 MySQL 系统,满足系统的高可用和高并发、高扩展的需求。

尽管 MySQL 的安全性一直为人所诟病,但经过多年改良,它的安全性已经超越了 SQL Server。

DBA 如何优化 SQL

一个合格的 DBA 会明白无论选择 Oracle、MySQL 还是 SQL Server,SQL 语句的优化都是数据库优化的决定性因素,而对数据库工具本身的优化只不过是细枝末节,别人的配置方式也很容易从网上查到。

SQLite 是 Android 系统上运行的数据库软件,性能与三大数据库软件不可同日而语,况且在 Java 语言的 IDE 里编写 SQL 还没有自动提示,有时候 Android 程序员对 SQL 语句优化的要求比 DBA 还高。

在 SQL 上吃过不少亏的我总结了一些 SQL 语句优化方案,在此抛砖引玉,并非外行指导内行:

  • 在 FROM 语句中包含多个表的情况下,把条目最少的表放在前面。比如表一记录某省人口数据,表二记录全国失学儿童数据,那么查询某省失学儿童的表二应该放在前面。

  • 在 WHERE 语句中过滤掉最多数据的条件必须写在前面。例如把性别写在生肖前面的查找效率是把生肖写在性别前面的 6 倍。

  • 避免使用 SELECT *。因为这样会查找所有的列名,耗费更多的时间。

  • 在 SQL 语句的 WHERE 和 JOIN 部分中用到的所有字段上,应该加上索引。

  • 移除不必要的表,可以减少很多数据库的流程。

  • 尽管 SQL 是大小写不敏感的语言,规范的 SQL 语句务必大写。

DBA 在大数据时代的发展前景

成为一个 DBA 表面上 “仅” 需要 SQL 语言和数据库基础管理的知识,所以造成了从业者的水平良莠不齐。

举一个极端的例子

我有一个留级两年的同学勉强拿到毕业证后就从事了 DBA,然而理论跟实际相差甚远。

模拟的环境根本达不到线上要求的多用户、高并发等压力,仅靠在课堂上和自学是不能成为一个合格 DBA 的,合格的 DBA 必须从企业中的实战走出来。

一个合格的 DBA 必须掌握 Linux 基本命令和操作、数据库备份和恢复、SQL 优化、数据库性能优化和至少一门脚本语言(如 Python)。

移动互联网时代雨后春笋般诞生的创业公司给人一种 DBA 的角色性变弱的错觉,其实任何 IT 公司做大后都离不开 DBA 这个岗位。

大数据时代是一个以数据驱动决策的时代,数据就是企业的生命,掌握公司命脉的 DBA 的岗位越来越重要,作用也越来越显著,待遇也越来越丰厚,发展前景也越来越明朗。

尤其在大数据的时代里,原本就一直存在的性能问题和安全问题会更加突出,这意味着企业对 DBA 人才的需求会越来越旺盛,同时这也意味着 DBA 会面临比以往更多样化的困难和更严峻的挑战。

加上近年来的大规模集群和自动化运维,很多以前手工维护的工作现在都可以通过一系列自动工具来完成。

尽管让只会增删改查的 DBA 看到了自己的可替代性,但也给对技术精益求精的 DBA 节约出了钻研新技术和新知识的时间,使他们更加专注于解决前所未有的困难。

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/26736162/viewspace-2144966/,如需转载,请注明出处,否则将追究法律责任。

从删库到跑路,DBA 如何防止被淘汰?相关推荐

  1. mysqldump全量恢复_删库不跑路-详解MySQL数据恢复

    日常工作中,总会有因手抖.写错条件.写错表名.错连生产库造成的误删库表和数据的事情发生,那么,如果连数据都恢复不了,还要什么 DBA. 相关文章 MySQL备份策略:https://segmentfa ...

  2. Linux 下谨慎使用 rm,避免从删库到跑路的悲剧发生

    我们该如何再次避免删库"跑路"等事件的再次发生? 对此,在企业首先做好权限管理以及多重审核机制的同时,CSDN 也曾教诸多程序员们如何在 Linux 下谨慎使用 rm,避免从删库到 ...

  3. mysql高级-15-数据库备份与恢复(删库不跑路)

    mysql高级 前言 1.物理备份与逻辑备份 2.mysqldump实现逻辑备份 2.1 备份一个数据库 2.2 备份全部数据库 2.3 备份部分数据库 2.4 备份部分表 2.5 备份单表的部分数据 ...

  4. MySQL从删库到跑路(2):大爷的SQL私房菜

    大爷的SQL私房菜 夜色如墨,月凉如水,一轮皎洁的圆月高高地挂在夜空之上,平日里鼾声如雷的室友今夜也停止了打鼾,如此静谧的夜晚,李有为却辗转难眠. 时间悄然来到凌晨一点半,他已经在窗边站了53分钟23 ...

  5. 从删库到跑路,就是这么迅速!程序员为了报复同事删了公司数据库

    从删库到跑路,就是这么迅速!程序员为了报复同事删了公司数据库 一只有头发的程序猿 2019-08-23 09:38 做过互联网行业的都知道,数据库对公司是至关重要的,存储了大量的数据在里面,要是没有这 ...

  6. MySQL从删库到跑路(5):in and not

     "哈哈哈哈,看你这几天没来上课,我还以为你去拜什么高人为师了?原来就是这个烂番薯.臭鸟蛋的小卖部大爷学装逼,你逗我玩呢?哈哈哈哈哈"  "哈哈哈哈,一个老屌丝,一个小屌 ...

  7. 手误【删库】 == 跑路,不存在的 ——删瓦辛格

    手误[删库] ==  跑路,不存在的  --删瓦辛格 前言 今天公司服务器的宝塔打不开,让我去修(ps:宝宝委屈) 打开找一下问题所在 问题: 发现是宝塔官方的cdn好像挂掉了 解决思路: (1)本地 ...

  8. 告别从删库到跑路,linux回收站实现

    在linux 下操作时经常需要用到rm -rf,一招不慎轻者从删库到跑路,重者到跑路机会都没有.趁放假,试着结合实际生产环境,实现一下之前一直想的win回收站机制 实现思路 alias 给rm取别名, ...

  9. 删库不跑路,详解MySQL数据恢复

    日常工作中,总会有因手抖.写错条件.写错表名.错连生产库造成的误删库表和数据的事情发生.那么,如果连数据都恢复不了,还要什么 DBA >>>> 1 前言 数据恢复的前提的做好备 ...

  10. editplus设置不生成备份文件_删库不跑路,手把手教你MySQL数据恢复

    你知道的越多,不知道的就越多,业余的像一棵小草! 你来,我们一起精进!你不来,我和你的竞争对手一起精进! 编辑:业余草 来源:segmentfault.com/a/1190000020116271 推 ...

最新文章

  1. TensorRT 7.2.1 开发概要(下)
  2. 深度学习中softmax交叉熵损失函数的理解
  3. 【笔试题】简单的两道笔试题(1、打印杨辉三角;2、三个数排序)
  4. 程序员小测试:保守派 vs 自由派
  5. 平舌音 Z C S 的正确发音方式
  6. 小程序开发(6)-之自定义导航栏
  7. jdk1.6+Maven
  8. element ui el-carousel 滚动图 vue 基于vue-lazyload图片懒加载、延迟加载 解决方案
  9. 想学IT的必看!深度解析跳槽从开始到结束完整流程万字长文!
  10. java遇到无穷大抛异常_Java中一个for语句导致无穷大死循环的例子
  11. albert-chinese-ner使用预训练语言模型ALBERT做中文NER
  12. 《深度学习》李宏毅 -- task2 回归
  13. 链表的自顶向下归并排序
  14. 大学生DW网页设计基础知识
  15. linux用户及组管理实训,实训 Linux下用户和组的管理和权限命令操作.doc
  16. ADS1112|MS1112|16位AD转换芯片|国产兼容PIN-TO-PIN。兼容替代无需修改软硬件
  17. android11屏蔽导航栏
  18. 简单实现网站灰色效果以谨记2020年4月4日悼念日
  19. 智能家居系统解决方案
  20. MySQL数据库餐厅点菜系统_餐馆点餐管理系统-数据库课程设计-MySQL

热门文章

  1. 笔记本电池电量保持在50~55%可延长电池寿命
  2. 关于我的大学ACM江湖
  3. 比尔·盖茨、UNIX之父等全球14位IT大佬,总结的18句编程名言!
  4. java网络爬虫如何控制爬取的深度_Java 动手写爬虫: 二、 深度爬取
  5. 揭开HPC应用的神秘面纱
  6. 手机如何远程控制挂机宝? 影云挂机宝
  7. OSPF- P2P网络、NBMA网络和P2MP网络
  8. 计算机专业英语第12章在线测试答案,计算机专业英语第章在线测试.doc
  9. Android8.1 MTK平台 修改系统默认语言和默认输入法
  10. 电商后台系统:管理后台之账号管理(一)