CSDN漫画:什么是删库跑路?


CSDN漫画:什么是删库跑路?
本文插图
作者 | 漫话编程 来源 | 漫话编程(ID:mhcoding)
CSDN漫画:什么是删库跑路?
本文插图
CSDN漫画:什么是删库跑路?
本文插图
CSDN漫画:什么是删库跑路?
本文插图
CSDN漫画:什么是删库跑路?
本文插图
在DBA圈子有这样一个段子:


CSDN漫画:什么是删库跑路?
本文插图
最近几年 , 经常会出现各种删库跑路的事件发生 , 前几天还有报道说思科离职5个月的程序员 , 为了报复公司 , 删虚拟机跑路了 。这位思科的离职员工 , 仅凭一己之力 , 删掉了思科 456 台虚拟机 , 导致思科损失 240 万美元 , 相当于人民币 1650 万 。对于这些事件 , 程序员之所以会删库跑路无外乎两个原因 , 第一种可能是真的手误;那第二种可能就是蓄谋的了 。
CSDN漫画:什么是删库跑路?
本文插图
CSDN漫画:什么是删库跑路?
本文插图
CSDN漫画:什么是删库跑路?
本文插图
CSDN漫画:什么是删库跑路?
本文插图
怎么删库的?所谓"删库跑路"其实只是一种戏谑的说法 , 而其中的"删库"具体做法可能是删除了服务器上面的文件、清空了数据库里面的内容、删除了数据库表等 。删除不同的数据 , 使用的方式也不尽相同 。删除服务器文件Linux服务器的文件删除主要是rm命令 , rm命令可以删除一个目录中的一个或多个文件或目录 , 也可以将某个目录及其下属的所有文件及其子目录均删除掉 。在Linux上 , 使用rm命令要格外小心 。 因为一旦删除了一个文件 , 就无法再恢复它 。rm 命令的语法是rm [选项][参数] 所以 , 在使用rm的时候 , 一定要高度注意[选项][参数]的正确性 。其中选项比较危险的有:-f:强制删除文件或目录; -r或-R:递归处理 , 将指定目录下的所有文件与子目录一并处理;这两个是比较危险的 , 可能会造成非预期的无法挽回的后果 。另外 , 参数也值得注意 , 有的人习惯使用rm * 来删除文件 , 这其实是非常危险的 , 因为*代表所有文件 , 这就很容误删 。最危险的就是在服务器上执行:rm -rf * , 当然 , 比这更更更更更危险的是:sudo rm -rf / 。删除数据库除了删除服务器上面的文件外 , 也有些案例是删除了数据库 。这里的删除数据库包括了数据库以及表的删除 。1、dorp, drop 属于数据库定义语言DDL , 表示删除表 ,也可以用来删除数据库 , 删除表格中的索引 。使用drop删除表的语法是:drop table 表名 删除数据库的语法是:drop database 数据库名 2、truncate , truncate 属于数据库定义语言DDL , 表示删除表中所有数据 , DDL操作是隐性提交的!不能rollback 使用truncate删除表的语法是:truncate from 表名 特别要注意的是:使用truncate 删除的数据是不能恢复的 。清空表内容除了对数据库和表结构的操作以外 , 还有一种破坏的方式就是清空数据库中的内容 。通常使用delte语句 , delete 属于数据库操纵语言DML , 表示删除表中的数据 ,delete删除过程是每次从表中删除一行 , 并把该行删除操作作为事务记录在日志中保存 。使用delete的时候可以全部删除 , 也可以按条件删除 。使用delete删除表中全部数据:delete from 表名 使用delete按条件删除 :delete from 表名 where 条件


推荐阅读