乱谈:怎么跟女朋友解释什么是删库出逃?离开5个月的程序员,为了报复公司,删了虚拟机跑了。这位思科前员工自行删除了456台思科虚拟机,导致思科损失240万美元,折合人民币1650万元。对于这些事件,程序员删库跑路的原因有两个。第一个可能是一个真正的错误;第二个可能是有预谋的。如何删除数据库?所谓“删库跑路”其实只是个玩笑,而“删库”的具体方法可能是删除服务器上的文件,清空数据库内容,删除数据库表,ETC。。不同的数据以不同的方式删除。删除服务器文件Linux服务器的文件删除主要是rm命令。rm命令可以删除一个目录下的一个或多个文件或目录,也可以删除一个目录及其下属的所有文件和子目录。在Linux上,请格外小心地使用rm命令。因为文件一旦被删除,就无法恢复。rm命令的语法是rm[option][parameter],所以在使用rm的时候一定要注意[option][parameter]的正确性。其中,选项比较危险:-f:强行删除文件或目录;-r或-R:递归处理,将指定目录下的所有文件和子目录一起处理;这两者更危险,可能会造成意想不到的不可逆转的后果。此外,参数也值得注意。有些人习惯用rm*来删除文件,其实是很危险的,因为*代表的是所有文件,很容易误删。最危险的是在服务器上执行:rm-rf*,当然比这个更危险的是:sudorm-rf/?特别声明:请勿相信本图内容,否则后果自负!删除数据库除了删除服务器上的文件外,还有删除数据库的情况。这里的数据库删除包括数据库和表的删除。1.dorp,drop属于数据库定义语言DDL,意思是删除表,也可以用来删除数据库,删除表中的索引。使用drop删除表的语法为:droptable表名删除数据库的语法为:dropdatabase数据库名2、truncate, truncate属于数据库定义语言DDL,意思是删除其中的所有数据表,并且DDL操作是隐式提交的!不能回滚使用truncate删除表的语法是:truncatefromtablename。需要特别注意的是:使用truncate删除的数据是无法恢复的。清空表内容除了对数据库和表结构进行操作外,还有一种破坏方式就是清空数据库中的内容。通常使用delte语句。delete属于数据库操作语言DML,意思是删除表中的数据。删除过程是每次从表中删除一行,并将删除行操作作为事务记录保存在日志中。使用delete时,可以全部删除,也可以按条件删除。使用delete删除表中所有数据:deletefromtablename使用delete按条件删除:deletefromtablenamewherecondition如何避免误删除首先操作者最重要的是在执行的时候要格外小心删除操作,仔细检查确认无误后再执行。对于公司管理者来说,更好的方法是做好权限控制,回收所有不该授予的权限,避免误用或恶意操作。还有一点很重要,及时备份!!!冷备热备协同工作!!!最后奉劝程序员、DBA、运维工程师不要一时冲动,删库跑一趟,坐牢菊花痒痒。作者简介:漫画编程是一个以漫画+音频的形式讲解枯燥编程知识的公众号。致力于让编程变得更有趣。本文转载自微信公众号“漫花编程”,可通过以下二维码关注。转载本文请联系漫画编程公众号。
