如果在公司里不小心把数据给删除了是一种什么体验?

二货  •  |  体验 | 共 1,556 阅读 | 共25020字 | 0 评论 | 分享

比如说,公司新人进来误操作不小心把一些数据库或者网页的页面给删除了破坏了,导致用不了。那么他需要赔偿吗?首先感觉这好像没办法追究刑事责任,似乎顶多就是开除是吗?像这些数据也没什么定价,但是大家都知道这是很重要的。这要怎么处理?

古的白

那年公司ERP系统刚进行升级

因为公司陆续上了MES和PDM系统。为了加快整个公司信息化平台的统一,请了个第三方公司来做中间接口。

然后故事开始了。

某一个晚上,第三方人员问我要ERP的SA密码。

我很警惕:“你要干嘛?”

“我测试一下中间表。”

“有没有写表的操作?”

“没有,只有读表的操作。”

于是我放心的给了SA密码。给了VPN权限通道。放她进来了。

十分钟后…..

她带着哭腔打电话来(是的,对方做测试的是个93年的萌妹子。)

“吴哥哥,服务器中毒了。。。。”

我当时还在逛果壳呢,一听她说我服务器中毒了,我表示无比淡定。还以大哥的经验教训了一顿她。

“叫你不要往我服务器传插件嘛,这次帮你解决一下,下次不准了哟。”

我认为是小case呢,不就中毒了嘛,系统往回滚一天就好了。

然后悲剧的事情就出现了。远程进不去。于是我就去机房本地登录,居然也进不去。。。。我不死心,强制重启。居然还是进不去。。。。我的服务器系统就这样崩了。。。

好在那几天在做开发,系统没有启用。于是我和我的老板汇报了这个情况:

“老大,我们服务器系统崩了。”

“哦,那就搞好它让它别崩。” 果然是霸道总裁啊。

当时数据和应用服务器我都是分开跑的,所以应用服务器奔溃了,我觉得也没多大事,就重新做系统吧。于是我重新做了个系统,然后喊萌妹子上来搭平台。

“小刘啊,你可害惨我了。一个下午给你重做服务器系统了,我基础环境都配置好了,你上来搭平台吧。”

萌妹子那是无比的歉意啊,又是答应请我吃饭又是答应请我看电影的。我都想系统再崩溃一次了。

按理说这样应该是没问题了,就在我走出机房,在外面抽了根烟,45度仰望了一下天空,联想了一下和萌妹子点个9分熟的牛排,在喝一口二锅头这样浪漫的晚餐的时候。电话来了。

来电话的是萌妹子的老板。

“小吴,我想找一下information.db 和 mfmedia.db 这两个总表,没找到。你给我找一下。”

我都蒙了,从来没人问过我这样的问题,难道她老板不是IT行业的。

“数据库文件都在目录树里啊,自己去找啊。”

“没有。”

于是我登上服务器一看,我傻了。所有的表都空了。所有的表都静静的躺在那,但是里面都空了。。。。。

不可能啊,我数据库是放在另外一台服务器上的,怎么可能会没有了。

于是我问萌妹子

“XXX,你到底做了什么操作啊,为毛我数据库都没了。”

萌妹子说 我啥也没干啊,只是按照步骤一路点YES,

我才想起来,在第一次配置基础环境的时候,建账套会提示是否初始环境,如果点是了,数据库就会被初始化。然后这位萌妹子傻傻的点了是。

“你知道不知道你干了什么,公司06年到现在所有的数据,财务的,供应链的,进销存的全部都在这台服务器里。200多个G数据,因为你一个是,全没了。”

萌妹子也吓蒙了,话都说不出来了。

没办法,我再给我老板打电话。

“老板,有个好消息,有个坏消息。”

“直接说坏的。” 我就喜欢我们老板这么直接。

“恩。。恩。。那个。。就是那个。ERP的数据没了。”

“哦,那就找回来。”老板还是那么的霸气。我特么都要爱上他了。

“老板,我想你没明白这个的严重性。ERP数据没了,从06年开始的都没了,这意味着就算找回来,整理所有的表,排错也需要3天左右时间,到时候所有的生产都要暂时停止。如果找不回来,我们可能就要倒闭了。”我忽然有种掌握天下苍生的感觉。

对面沉默了5秒后,爆吼了一句:“吴XX,你给我滚到我办公室来!!”

中间和老板手握手谈心,被老板亲切慰问的细节跳过不表。

当时公司高层对数据安全还没有那么重视,之前预算做的项目,我已经做了备份的计划书,一直没被审批下来。现在估计悔得肠子都清了。

于是我开始漫长的数据恢复之旅。

我之前已经做了个本地备份的计划,每天晚上会备份一次。我把希望都放在了它身上。等我把备份的数据库附件上去,发现时间居然都是两个星期之前的。而且还有一些新表都没有。我联系对方,对方告知研发人员两个星期前做测试的时候把备份计划关了。。。。。我心里万头草泥马奔腾而过。

最后没有办法,把老服务器又翻了出来,翻出之前的老数据,开始转换。

期间老板给我短信:

“数据恢复进行的怎么样了呢。”

“报告,正在稳步进行中,按照目前的状况,可恢复的可能性超过90%。” 别问我90%怎么算出来的,我就是哄他才这样说的。

“诶,真是心急呀,睡都睡不着。小吴呀,当初要是听你的,上了备份该多好呀。”现在知道后悔了,哼哼。

“老大别担心,我会搞定的。”是的,作为一位负责的员工,我就是这么让老大心安。

“恩,那就交给你了哦,熬夜少抽点烟哦。”哎呀,瞬间觉得我老大萌萌哒有没有。

这里花了我一个晚上加一个白天。

数据转换好了,还有一些时间差的数据没法找到。于是通知各个部门,找单据,开始往里面补单子。一条一条的按照业务流程补进去。为了协同更方便,在会议室加设了几十台电脑集体办公。。。在大家一片怨声载道中,三天时间,终于把数据恢复了过来。三天内我没离开机房超过10米,吃喝拉撒都在机房,不对,拉撒不在。

这件事情造成的后果:

1. 大部分员工放假三天,我加班三天三夜。。

2. 本来很爱我的大部分员工因为单据事件,集体转为黑我恨我了。

3. 公司立马批了我的计划,冷备,热备,异地容灾。全部上全了。

4. 我挥刀自宫,自己罚了自己,扣除了自己一个月工资。

5. 老板到现在还是在怀疑请的那家公司已经被我们竞争对手收买,是故意来破坏我们的。

6. 萌妹子拉黑了我。

这真是个悲伤的故事。

李不清

这种事情我干过,而且是因为一只鸡。不要多想,真的是鸡,一只鸡的鸡,不是一个鸡的鸡……

背景交代:
事故发生在两年前,那时候我所在的公司主要客户是某国家暴力机关,我当时负责某省的售后技术,所负责的系统用户数跟互联网公司比起来不算什么,但也是以万为单位的量级,而且都是该机关的国家公职人员。

事情经过是这样的:
某天上午快下班的时候接到一个客户电话,说他把密码忘记了,让我们给重置一下。因为是内部专网系统,也因为接近中午脑子里想的都是吃,所以我甚至没有核实对方身份就进了数据库改密码。

已经说过,当时肚子太饿,只想着改完赶紧去吃饭。事实证明,在原始生理需求面前,真的会让人丧失理智。

平时为了防止出错,我一般都会用DB来修改数据库,但是当时我正好远程登录了机房的服务器,本地机器也没有开DB,所以我就直接用SQL语句给客户改密码。结果,就是为了这个方便,外加脑子里在思考一会吃什么这个永恒的人生难题,我犯了一个超级低级的错误:我只写了update 表名 set passwd=123456就开始执行!对,我没有写where useid=******。也就是说我把上万个用户的密码都改成了123456!!!

当屏幕上显示上万条数据更新完成的时候,我脑子里面想的是一会吃凉鸡还是吃牛肉,要白菜还是茼蒿……一秒钟之后,我终于清楚的意识到发生了什么事情!去你妈的凉鸡!去你妈的茼蒿!我现在想吃刀!

不幸中的万幸是事发时离下班只有十几分钟,更幸运的是国家机关工作人员的下班都极其准时甚至只会提前。事实也证明当时真的恐怕已经没有几个人还在岗位上,因为所有人的办公系统都被踢出来了我却没有接到一个电话……

事情既然已经这样发生,我就不能只是悲伤的坐在你身旁,想办法解决吧。
其实也不用想,因为留给我的只有还原数据库这一个选择。但这也只是一个无奈之举而不是一个天衣无缝的方案,因为我们的数据库备份计划任务是一天一次。也就是说我只能把这张表还原到昨天的状态,但是谁也无法知道这一天之内几万用户有多少人自己改过新密码,而且这种单位人事变动又很频繁,我只能很不爱国的期待这些国家公职人员很懒或者安全意识很低从来不修改密码了……

事情最后的结果是:
1、还原数据库后的整个下午我接了十几个电话反应他们早上新修改的密码登录不了,我只能告诉他们,不如你用旧密码试一下啦,说不定会有惊喜哦……这说明这个国家其实还是很有希望的,还是有很多国家机关工作人员兢兢业业努力工作不怕麻烦安全意识很高的;
2、公司并没有知道这个事故,因为客户的所有问题都是先反映到我这里再由我反映到公司,我喜欢吃的东西很多,但是不喜欢吃鱿鱼,所以没有理由我给自己买鱿鱼吃;
3、当天中午我没有吃到午饭……

这件事情告诉我们一个道理:做任何事情,包括搞机、搞鸡、搞鸡和搞基,都一定要专心,千万不能在搞机的时候想着搞鸡、搞鸡和搞基,不然最后你可能什么ji都搞不到!

————————————————更新分割线——————————————————————

说实话,这个回答被给了这么多赞,如果说心里没有在窃喜,那是假的,因为这毕竟算是我在知乎的第一次认真答题,得到200多个赞简直比捡到200块钱还高兴。但是是窃喜的同时,更多的却是惶惶不安,因为我的这个回答并没有解决题主的问题,只是借个地方分享了一下自己的经历罢了。
同时我也看了目前得票较多的大部分回答,好像都没有从题目出发真正回答了问题。要么是跟我一样分享自己的经历,要么是讲了一些如何预防这种事情的经验。所以,这次更新主要有两个目的:
一、关于评论中很多我提到的明文密码,我们当时用的确实是明文保存。因为这个系统做得比较早,我也不知道当初为什么要这样设计,反正交到我手上的时候就已经是这样,一直到一年多前才改成了MD5.

二、我试着来回答一下题主的问题:
凭着已经尝过的一点法律知识记忆,以及询问他人,配合网上的百度的资料,整理出以下几:
1、公司一般都会有相关的规章制度,或者用人单位与劳动者签订的劳动合同里面都会有相关规定,只要这个制度和规定没有与相关法律相抵触,那应该是按照这个制度来进行相应的处理,该开除开除该处罚处罚;
2、如果没有上述制度和规定,那么事发后首先应该是劳动者与用人单位之间进行协商处理,如果劳动者对公司提出的处理意见不满意,可以申请劳动仲裁;
3、如果通过劳动仲裁还是无法达成一致意见,那只有通过诉诸法律来解决了;
4、谁主张谁举证,所以公司应该拿出证据证明损失是由于劳动者的主观过失所造成;
5、如果赔偿,一般是从员工工资里面扣除,而且每个月所扣金额不能超过员工工资的20%。如果扣除20%后员工所领到的工资已经低于当地最低工资标准,则按当地最低工资标准发放;
6、如有证据证明该过失是员工有目的为之,构成犯罪的,除了民事赔偿之外,还要追究刑事责任;
7、一般情况下是不会让员工赔偿全部损失的,需要区分责任承担相应损失。因为通常这种事情的发生也会伴随着公司管理失当等问题;
8、因为员工的过失造成的第三方损失,由用人单位对外承担责任进行赔偿,但是赔偿后用人单位可以向过失员工追偿;
9、这条是我自己主观臆断,如有不妥还请指正:如果损失金额巨大,明显超出过失劳动者的赔偿能力,比如几千万,哪怕区分责任后员工所应承担的数额依然特别巨大的情况下,过失员工应该只用承担一定数额的有限责任。毕竟用人单位如果指望过失员工来赔偿损失已经变得相当不现实;
10、具体到实践中,存在的变量太多,具体问题还得具体分析。

水平有限,无法提供系统的实践方案,仅是罗列了相关点,并且这些点本身也可能存在错误或者不严谨的地方,还请知情人士指正。然后期待能有专业人士来提供专业的回答!

mu mu

偶尔要做 DB 维护,这是一点点经验。

不要走神。不听歌,不聊天,不吃东西,不喝饮料,头脑清醒,知道自己在做什么,要做什么。

写出步骤。连接到哪个数据库,ip是什么,运行什么命令,先做什么,后做什么,出了问题怎么roll back,我知道你都懂,但要写出来,不要相信自己的记忆。

在测试环境验证。拿来写好的步骤,在测试环境中跑一遍,一半以上的可能会发现问题,然后再修改步骤,不要直接在产品环境中跑。

delete 和 update 前,先查询,用同样的 where 语句 select,至少知道有多少记录会被影响到。

drop 和 truncate 之前,检查三遍,连接的是不是正确的数据库。

一次只连接一个DB,不要开几个窗口,有的连测试,有的连产品,或早或晚,你会出错。

备份,备份,备份。

郝西哲

我实习的时候干过这种事……
外企500强,制造业,误删了上万条付款信息,金额3000多万……

背景信息:因为是小实习生,所以工作职责很简单,和四五十家代理商对接,所有代理商把他们的销售记录发给我,我帮他们整理完统一向公司申报付款。
公司有自己的系统,但是代理商并没有权限登录系统。。所以要我和老板帮他们整理审核完信息一起输到系统里。。。所以所有的记录都先会保存在一张excel表里,这就是隐患啊!!一开始老板会和我一起定期共享这张表,后来因为我表现得好,老板不过问了。。于是。。。
其实我有很仔细的保护数据。。每隔两三个小时就另存为一次。。可是。。
有一天公司升级电脑,把系统重装了。。。。我竟然把所有数据放在了桌面也就是C盘!(其实是公司给我的电脑只有C盘而我没分区。。)
于是所有数据都没了。。一整年的记录。。。

那段时间所有代理商不停追着我问“上个月的款怎么还没打啊”“我们公司怎么没收到钱啊”。。。
当时我想。。他们公司会不会因为我的失误股价大跌啊。。。

解决的办法。。。
1.一条一条地翻邮箱。。把里面涉及到付款的东西找出来。。(平时一周有上百条邮件。。我要翻一年的邮件。。感受一下。。)
2.把所有快递壳子拿出来。。因为代理商会在壳子上贴纸写金额。。也是一条一条做。。。(于是我从那以后养成了从不扔快递壳的习惯。。)
3.找文印中心。。大公司收到的发票都会复印或者扫描,从他们那里找复印文件做核对。。。

那是我那段实习生涯中最黑暗的时候。。。

解决完所有事。。到了实习的最后一个月,老板问我,你要不要续签?我问他,签多久?他说,想签多久签多久。。。我想了想。。还是没脸继续给公司工作了。。。。逃跑了。。。

当然我工作时最可怕的不是丢数据。。因为数据可以补。。最可怕的应该是丢发票。。。每天数着一张张发票,有的一张几十万。。。如果掉了一张真的赔不起真得跑了。。。

这个故事告诉我们。。大公司繁琐的流程(扫描存档、邮件沟通),有时候能救你一命。。。

这个故事也告诉我们。。大公司呆板的办事风格(不用云共享,流程节点单人负责),有时候会害你一命。。。

这个故事还告诉我们。。不要在桌面放东西。。桌面的东西都是C盘的。。

最后,这个故事告诉我们。。。不要相信实习生。。。

——————————————————
更新声明
公司有付款系统,但是代理商没权限登录,所以都是我手动帮他们输进系统的。。。
谢谢评论区大家告诉我这么多解决办法。。。可惜两年前我没有知乎啊!!!

张萌萌blingbling

1

大河向东流哇

携程的码农全放假哇

(嘿嘿 嘿嘿全放假哇)

(千万的数据全没有哇)

说没它就没哇

年终奖金不用想哇

(嘿嘿嘿嘿不用想哇)

(不扣工资烧高香啊)

路见媒体一声吼哇

该攻关时就攻关哇

公司很好没问题哇

嘿 呀 咿儿呀

嘿唉嘿咿儿呀

(嘿嘿呀 咿儿呀 嘿嘿 嘿嘿咿儿呀)

匿名用户

刚工作的时候,部门老大到项目组巡视。给我们表演真正的技术,不料手滑把数据库干瘫痪了,老大直接把硬盘从服务器上拽下来,喀喀两下摔坏了。然后去跟客户讲你们硬盘坏了,这数据库是很重要的要做双机。

我还是匿名吧,被以前同事认出来就完了。

蓝色鼓点

兄弟出来做第一个份工作就是电话股票交易系统。那还是2000年前,网络,电脑还不普及,
这个系统用电话语音菜单进行股票交易,查询,还是算高大上的系统。

这时我还是大四没毕业,就已经上班进了这公司。话说我一进公司,交接的人给我一天时间熟悉,然后就拍屁股走人了。这个业务系统是一个小型机上跑带语音卡,交易数据库用的叫Btrieve数据库(谢谢@岑海阳 提醒),然后计费系统的用命令行工具把数据导入到window下的foxbase,然后进行计费。

话说下面某地市电信局的交易系统出问题了,上班不到一周我的就打发到这里来处理。原因就是计费不准,于是我就用命令行工具读了数据到foxbase来进行分析和处理。搞完了发现,业务系统数据库变成很小?于是我问一下 工作人员怎么回事,小姑娘说:

这个命令行工具读完后就会自动把交易数据库记录删除。
自动把交易数据库记录删除。
自动把记录删除。
自动删除。
删除。
删。

我操他祖宗,没人告诉我这个数据库是这样的啊,老子才入职一周啊。刚才我做测试的导入数据被我删除啊。。。。

大约是一周的交易数据丢失了,我想了一夜,把业务系统的刚产生业务数据导出来复制N份,然后一算,总的收入的跟上个月差不多,然后就算交差了,小姑娘也觉得有点不对劲,但也没明白哪里出问题。

然后我就回来了,那一段时间一直睡不好,一直在考虑是不是辞职不干回学校了,但是很神奇,居然没有人任何人找我麻烦,只是听我们公司业务说,那个局的最近一月的纠份很多,有人居然多了十多次呼叫记录。上门找电信局,不过当年电信局才不了他们,爱用不用,反正这个月电话交易费你得交。

核桃

说下自己的经历吧
小公司,业务流程基本都走网上。
测试过程中不小心删错了数据库,并没有发现。
不到半个小时,公司内部群炸了……网站登录不了
老板:我们公司网站怎么回事儿,业务员说打不开了
我:我看下啊……哦 ,数据库连不上了,我重启下服务器,半小时后后恢复。
然后很淡定的,把刚刚测试时备份的那个数据库导入了,重启了下数据库。
忙完了在qq群里看到了这么一句话
老板:系统维护中,一个半小时后恢复。
我: 囧rz
________
好多人都问为何不跑测试机,以及权限什么巴拉巴拉...
我就一个前端开发啊,运维带php和设计都是兼职,去年刚毕业暴露的技能太多被当万能钥匙用啊。权限什么的不是没有啊 ,是我掌握的太多了。
测试机还是有的,就算拿真机测试也不会直接删数据库对吧,当时是开了测试和真机两个ssh,搞完后删测试机信息呢切错终端了。
________
另外已经辞职了,月底走人。
因为对系统熟悉的不能再熟悉,总监已经放弃了在我走之后修改密码什么的,改为给一笔(feng)奖(kou)金(fei)。

张天朔

突然想起来,之前做Intern的时候有一次Mentor叫我清理一下db,我手一滑delete 时候where写错了,虽然说只是开发库,但毕竟一个team人公用的测试库。。

然后我就看到旁边QA Intern的电脑上刚刚查询完那张表,就是在我删之前查询的,结果还在屏幕上,我赶紧喊住他,,,,,把表格里面的记录复制了出来。

小爝

我也凑个热闹吧,遇到过2次。
1,自己误操作,以为是git rm public/* 结果是,没带着git。。当时太困了,而且还手残的带了-rf。
然后我网站的所有图片都在public下面,不多800多张。。
最后记得是在git的cache文件里找到了一些之前残留的图,但是文件名字都是hash值,不是原始图片文件名了。这个没办法,写了个后台,凭借印象给用户恢复了一部分,实在恢复不了的,挂出来让用户自己领。解释一下,日记图和日记对应不上了。

这个是人为的锅。误操作。无解。

2,我机智的配置了,命令行的dropbox在vps上。然后,过了一年,偶遇机房硬盘被物理破坏,开机都开不开,所有数据丢失。

这个嘛,环境手动恢复,网站程序有git管理,图片有dropbox备份,数据库有crontab每3小时备份再打包扔到dropbox。。所以只是时间问题,还是恢复了。

然后中间有个小插曲,dropbox的最后一个数据库备份tar包,被损坏了。。我当时。。就。。

幸好,dropbox有文件版本管理,我的tar包都是只备份最新得数据,删除老的,名字是一样的。所以下了上一个版本的,也就是瘫痪前6小时前的,也还好,丢了几篇日记而已,,

哎,不遇到的人是不会理解运维备份的。

不遇到是无用功,遇到了没有,等死吧,幸亏是自己网站0 0!

lilizhou li

一个被删除了会粗大事、有多人维护的的数据库一定会有自动备份!大多数情况下还是多硬盘热备份。

那种完全没备份,或者备份数据库是几个月前的,只能说,这种不重要,要么导入一些去年记录,要么就按照楼上说的:硬盘坏了!顺便理直气壮要求领导买双硬盘做备份。

以前我师父告诉我,在数据库搞任何删除、修改之类的东西之前,一定要先备份,不管你做这件事有多微不足道。

貘吃馍香

不知道 @张云龙 邀请偶答这种问题啥意思
好像偶删过库似得
真高看偶
偶连清库的sql都不知道怎么写

即使偶删了也就是丢一天的数据呗
8年前偶顶着技术经理的雷那会儿
都有计划任务每天早上4点跑数据库备份的
然后早上上班
所有备份还会copy到公司内网一台部门的raid10里
(当然这机器密码只有偶跟偶们副总知道)
然后两边只留最近1周的数据备份

资源磁盘阵列完蛋倒是遇到过
在线服务的raid5
(提供原创K12课件、视频内容啥的)
硬盘完蛋鸟
同时完蛋2个
所有数据就都哗啦啦鸟

然后就从部门备份机里找备份啊
找到一部分
然后又从开发机里凑出剩余的部分
(视频什么的视频部那边都有单独备份,
课件啥的稳定版的都在部门备份机里,
调整中的都在各自开发机)

传上去完事
N个人折腾了1天
主要是数量大
上传太慢了

然后吧
过了2年又内阵列又完蛋了一次……
又这么折腾了一回

总之偶没不小心过就
而且没因为磁盘自然损耗没被开除过

就这样了
折叠吧

汪师傅

工作这么些年来最大的一次失误就是刚工作的时候,删除了一个数据库里我当时觉得没用的装备。在线保存后——玩家的装备全部乱七八糟,因为那个装备删除后,后面装备的ID序列号全部向前移一位,当一个玩家反馈过来的时候我想起了这个后果,马上关掉了QQ,因为我知道,我的QQ信息马上会以潮水般涌来。我即便不关,QQ也会因为信息数量太多机器反应不过来而卡死掉。

关掉QQ后,我躺在椅子上,感觉一身轻地笑了。觉得这个世界终于安静了。(因为事情已经不可逆。)

从那以后得到的教训就是——备份备份备份备份备份备份备份备份备份备份备份备份备份备份备份备份备份备份备份备份备份备份备份备份备份备份备份备份备份备份。

重要的话要说30次。

这件事非常严重,但是并没有造成什么严重的后果,因为当时是店大欺客,感觉自己就是上帝,崩溃了一个服,那么第二天就重新开一个新的就好了。玩家骂了一样会继续玩。

再说一次前几年某知名页游公司的某款红极全国的页游的数据库被删除事件。

运维在开服前会清理掉即将开服的一些残存的数据,但那个运维删错了,把一个正在运行中的老服的数据全部清除,后来也无法恢复。最后的处理结果是,这个研发商赔给平台方这个服务器的全部推广费用,并且这单个的服务器的充值,永不需要分成给研发商。

章小弟

其实做IT工作出问题才是正常的,每一个IT攻城狮都是从无数错误中成长起来。想我第一份工作,连锁超市做IT,那时候还是Novell NETWARE网络,刚毕业的小白啥也不懂,干过两次大事故,一次把数据库锁死了,全部收银机不能结账,由此留下了数据库恐惧症,再也不愿意干跟数据库有关的工作;还有一次用NETWARE的一个内置功能,类似于QQ,可以在局域网中给别人发消息,结果一不小心,发到了所有电脑,包括收银的POS机,然后收银机又不能干活了。

说一个我亲身经历的数据丢失事故吧。
大约10年前,去了个新成立的公司,那年正好娶媳妇、搬新家,准备春节前公司放假、民政局还开门的日子去领证;然后年初一搬进新居。
春节前最后一天上班,深圳打工仔一般都是提前请假回老家,IT部就我一个家在本地的还坚守工作岗位。那公司是个新成立的公司,新厂房、新服务器、新系统,上的是Sun+Solaris+Oracle做ERP系统,有个总部在上海的公司做技术支持。系统上线半年多,因为马上春节了,支持公司的工程师也回上海了。由于是新厂房,一些监控、考勤之类的系统还在施工,施工方也很开心,我公司放假他们也就可以休息了。
17点下班,16:30,做监控、考勤的工人开始在机房收拾东西准备回家,那个二货队长直接坐在机房UPS上跟工人聊天,起身的时候手很自然的撑了一下,好死不死直接捅到了UPS的电源开关,全机房瞬间断电!
悲催的我开始重启各各服务器,PC服务器都正常,但是ERP的系统起不来啦!!!立刻上报老板,老板可能觉得问题不会太大,而且还花钱请了支持公司,又赶着回国,就让我全权负责。悲惨的日子开始,当天在公司干通宵,上海的支持攻城狮电话指导,干了一晚上搞不定,上海支持公司所的备份计划有问题,根本恢复不了数据!!!赶快给已经回国的老板、副总打电话,跟出国旅游的IT老大汇报,NND,他们全不管事,就让我一个小兵全权负责解决问题。然后我找上海支持公司,要求他们派人来深圳处理问题,对方死活不干,只答应电话支持,竟然老板也同意他们电话支持,难道为了省这点机票费!!!TNND,整个春节假期全部泡在公司清理烂摊子,全公司只有一个外聘的司机陪着我,负责接送我外出或者帮忙买快餐。太阳的,我一个负责网络的攻城狮,开始从unix的基础开始学起,从Oracle的基础开始折腾起,再加上上海的那个攻城狮电话支持,干了12还是15天,最终还是没搞定,只是恢复到了3个月前的数据!!!等正式上班,全公司人员开始补数据,补了半个多月才基本把数据据补全。
这个悲催的假期,我还有两件人生头等大事等着:结婚和乔迁新居,领证那天,老婆先去民政局排队,快排到了,司机拉着我去民政局拿证,拿完证继续回公司折腾。搬家那天也是,广东这边规矩多,丈母娘还算了进家门的时辰:初一早上6点,还要带N样东西,全家每人要拿不同的东西,还有进家门的顺序之类,反正我是顾不上了,全部老婆、老爸、老弟负责,年30晚上在公司通宵,初一早上五点叫上司机,先回家拉上全家人,然后去新家,进了家门还要开火吃一顿饭,然后又是回公司卖命,各类搬家具、搬电器、新家具、新电器安装全部媳妇、老爸、老弟负责。
假期之后,负责ERP系统的那些家伙,春节死活不肯回来干活,节后又怕我抢他们饭碗,死活不给我碰ERP系统,懒得理他,反正我对搞数据库没兴趣,继续干我的清闲网络工作。老大们再也不敢假期把IT所有人都放回家,ERP部分必须留一个坚守到最后一天。不过那个ERP再也没有发生过大事故,丢数据的事故都没有发生过一次;再过了5、6年,ERP迁移去了海外总部,ERP相关的人员裁了一大半。

新鲜的韭菜

我同学,在一家动漫公司,给人家重装系统的时候不小心把一个t数据格式化了,人家一个月的心血,后来花了3天恢复了
搞笑的是他跟主管说我想辞职,主管训他说,别特么遇到点逼事儿就辞职,好好干着。

李鑫

作为一名程序员我向你致敬,因为你可能是想小小的教训一下你们老大,坐在办公室默默的看他们是怎么着急的,只是你没有告诉他们在删除之前悄悄的备份了所有数据,时机一到恢复数据,所有人都低头灰溜溜的走开,你紧接着在公司开始装逼!

2015/05/29 凌晨1点钟左右
这个时候运营总监对手下的兄弟们说:看到了没,这就是策略,我们不就是1小时100W吗,让你们花1200W你能让整个媒体给你做广告并且还这么上杆子的在我们这等着,这比那些傻逼公司花几个亿在ccav上直播几秒钟效果好的多吧,我们也是直播耶!

小弟们都无比的膜拜他们的营销老大,一起欢呼!

这时候梁建章(携程CEO)和荣兰祥(蓝翔老总)牵着手来到了市场运营部,荣兰祥说感谢携程的全体员工,是你们的运营策略和手段让我们两家企业无缝连接,也给我们蓝翔做了很大的广告,我们要强强合作,让我们互联网旅游事业与我们蓝翔的挖掘机技术发展出新的蓝天!

所有在场的员工都无比的膜拜他们,纷纷表示祝贺,心里都想着我们也是干过一次漂亮仗的新生代人员,我们要努力加油!

Jerrysun0227

2010年的时候,在一家做SP业务的公司上班,某天在开发一个短信抽奖的活动,用客户端同时连接了生产库和测试库,测试完,需要清表的时候,由于没有看清楚是哪个库,结果直接把生产库里的那张表的数据清了。在我犹豫了四有四分之三秒后,我去找老大承认了错误,然后赶紧找到负责维护服务器的同事,找到记录短信发送的日志,同事用ruby将中奖的记录又重新导入到了那个表里,事后被老大批评了一通。当时觉得ruby简直不能太好用啊。

护航

刚才给你找这篇文章来着,看看也许有用,你永远不会是这种事情的创始人,没事的

 

2010年7月份,我22岁,在加州的一家网游公司工作。我刚毕业,这是我的第一份真正意义上的工作。我有了工资收入,有了自己的宿舍。我感觉长大了,头一次有这样的感觉。

有两个“工程师”在为公司的旗舰产品——一款RPG游戏——写代码,我是其中之一。我在大学里学的是哲学,这意味着,虽然我知道如何去思考、解决一个问题,但我对最佳实践方法、设计模式等方面的知识很缺乏。我完全倚仗基本的LAMP相关知识,对它们付出了极大的热情。

这款游戏的设计者(我们的老大)经常从暴雪公司出品的风靡世界的游戏“魔兽世界”中吸取灵感。在当时,魔兽世界里的“Raids”玩法在玩家中激起了前所未有的兴奋和热情。这个东西是我们特别想在我们的游戏中复制的功能。

我被分派去实现我们的游戏中的Raids。同事山姆被大量的重构工作纠缠住,于是我就幸运的有机会去开发一些新的令人兴奋的东西了。

我们的开发环境的一大特色是,我们开发代码直接连的是生产库。回想起来,这真是难以理解,我竟然没有询问这是为什么,真是一个笑柄。

我是使用一个MySQL客户端来查看数据库表,这个工具有个华而不实的OSXy接口的界面…远不如phpmyadmin。我的一部分测试工作涉及到手工的清除RAIDS表,然后用程序重建。

这种工作的单调让我精神恍惚,一个懒洋洋的下午,我发现自己昏昏欲睡,鼠标光标移到了USERS表达图标上,然后弹出右键菜单,点击‘clear’。

我的所作所为会带来的严重后果并没有立即击倒我。我起初只是感觉到一种灵魂出窍,好像是悬浮在黑暗的房间里,看见各位同事都勾着腰趴在发光的显示器上。

那么,究竟是什么后果呢?我们的游戏有上万个付费用户。用户花钱买装备,提升他们游戏中人物的能力。所有这些人物的数据都放在USERS表里,现在全没了。

大概一分钟之后,一个业务经理走了进来。“我感觉有什么地方出问题了”,她说。我回答说,“是的,我知道出了什么问题”。

我发现自己倚着一张桌子给数据库提供商Rackspace打电话寻求支持,耐心的听着他们的工程师解释说我们的数据库实例的备份两个月前就已经停止了。啊!

下午,一层又稠又密让人压抑的愁云充满了办公室的上空。大家知道有什么地方出来问题,但只有少部分人知道是什么问题。我被拽进了一个在会议室举行的“工程师+领导”的紧急会议。

CEO斜坐在桌子对面,看着我的脸,说,“你他妈干的好事!你让我们损失了数百万美元的收入”。他的合伙(通过Skype远程出席会议)插进一句话“你替自己祷告吧”。

整个公司在接下来的数天里都在做减灾控制。游戏开发运营上的工作全部停止。技术部员工试图通过其它数据表里的数据关系来尽可能的恢复USERS表。非技术员工来应付愤怒的客户,为那些声称记得自己游戏数据的人做记录。我这些天干脆就没回家。身上都发臭了。

一直都没有公开的信息表明我要为此全权负责。大家都收到了一份邮件,里面称这是一个“初级程序员”的责任事故。公司里只有我和另外一个人被看作是“初级程序员”。

不超过三天,很显然,所有人都知道了是我。大家开始用异样的眼光看我。少数几个人,对此表示同情。但大多数人,更多的是愤怒和不信任。对他们来说,是这个公司提供了他们这最好的工作机会。我把公司推向了困境,也同时把他们的幸福和生计推向困境。

我情绪低落,充满内疚和惭愧。在一个“全公司”的大会上我公开的进行了道歉。有人鼓掌。

一个月后,终于,我写了一封辞职信给CEO和项目经理。我离开了这个城市,头也不回的去了纽约。

英文原文:How I Fired Myself

余秋楠

当年刚毕业,试用期,在鹅厂某部门,周五,下午五点多。
需要写个脚本批量增加某批用户(500多个)的属性,因为循环处理代码里没有对某个变量的值进行初始化,所以,500多个用户,就在一瞬间。。。资料全变成了第一个用户的(这应该也等同于删了吧。。。)

然后,总监把我叫过去拍着桌子训斥了十几分钟,我呆呆站在那里,有点发抖,眼眶湿润,就差没哭出来。要知道,当年部门每天300多w的收入(现在应该不算机密了吧),就是这500个衣食父母贡献的啊。。。

在我接受‘审判’的时候,我的一些同事在根据“操作日志”、数据库冷热备份对数据进行恢复,过程持续到晚上9点,全部数据修复。

修复过后,总监把我叫过去,给了我一个拥抱,告诉我,“事情过去了,犯错才能成长,下一次注意就是了。我刚才太凶,向你道歉”。

这件事情过后,转正的时候部门并没有卡我,给予了宽容。我更谨慎地做事情了,虽然有时候还是会粗心,但基本没犯什么错误,也收获了并肩作战的同事。这件事情带来以下教训:

(1)对写操作代码重复、多人review,允许的话,先做灰度测试验证。
(2)不要在周五快下班的时候执行有危险性的操作。
(3)此类操作操作审计日志必须有。

Brian

我们有个同事倒是没有删除数据库,但是,他update居然没有写条件,没有写条件,没有写条件。。。然后业务全瘫了,当时他吓死了,偷偷告诉我,我淡淡地看了他一眼,然后说:没事,我帮你恢复下吧。然后我写了个脚本,从别的表里面计算出正确的值更新回去了。这个例子说明,数据有校验是多么重要!

郭晟

这是去年十二月份的某一天下午,风和日丽,一切看上去跟往常没有什么差别,我已经忙完了大部分的事情。坐在工位上悠闲的享受着下班之前的最后两个钟头。

"我尼马,腾讯云的一个下忍删除了我们服务器上的所有数据。"

发出声音的是坐在我对面的一个运维部的同事ZD,我赶紧过去,只见他神情慌乱,挤了一下眉头,把还没有关闭的聊天窗口拖到桌面最顶端,盖住了其后一大堆新建文件夹,QQ图片20150416101151.png,未命名8123.txt之类的乱七八糟。

我看着聊天窗口,上面正显示着:

....

xx技术

你再确认一下,我这边所有的东西都打不开了。

云下忍

不好意思刚才操作错误了,我去帮您看看有没有办法恢复。

"怎么回事?",我问同事ZD。

"腾讯云的一个下忍使用禁术删除了我们服务器上的所有数据。",ZD语气强烈,我已经基本确定他不是在开玩笑。

"针对云磁盘的操作,好比你的电脑系统被格式化了一样。"ZD又接着解释道。

技术部一下子炸开了锅,ZD的工位旁聚集了七八个刚刚得到了消息的同事。我看了一下,还有几个是暗部的。

没想到事情影响这么大,连村子里的几个高层都出动了。我心里暗暗的自忖。

"你确定啊,不会是幻术吧。"忍者学校的一年级生ZZ低声说了一句。对于像他这种村子里的实习生而言,讲话向来是没有太多威信的。然而到了现在,如临大敌的关键时刻,闷声发大财也未必是最好的选择了。多一个人就多一份力量,他也顾不了那么多。

"云磁盘操作这种S级别的任务,一定要取得root权限,传说中的三巨头bat怎么可能安排一个下忍做这种事情。"

"不管那么多,把机器重启一下看看。"销售部的大佬S大声说。

S是公司元老,深得着领导大人的信任。平日里说话很有分量。

ZD皱了一下眉头,按下了电脑机箱上的重启按钮,等了一分多钟。

然而这没有什么卵用。等他在重新把浏览器打开进入web控制台的时候,发现连云服务器实例都找不到了。

"通知领导大人,召开紧急会议。从现在开始村子进入全面备战状态。"业务部的C总反应很快。她已经知道了事情不容丝毫耽搁。

"ZD,你给领导大人打个电话,照实说。我们这边业务部门所有的主管把手上的事情停一下,先到会议室开个会。"

看上去也没有什么我能够马上帮得上忙的事情,我转身回到工位,公司的内部聊天群已经炸开了锅。腾讯通上面连着弹出了七八个对话框。没有太大差别的内容如

"库坏了。"

"系统坏了。"

"系统打不开了。"

"麻烦你看下我的系统打不开了。"

"帮忙看看,交不了单。"

"在吗,我这打不开了。"

....

大概十几分钟以后,此时我正在行政部勾搭一个妹纸F,我俩有说有笑、谈笑风生。正聊到高兴的地方准备今晚一起出去吃饭唱歌然后探讨人生,她的脸上一下子就僵住了。然后向我使了一个眼色,我马上意识到领导大人收到消息急匆匆从外面赶了回来。

"公司出了这么大的事情,我俩还这么闲。被领导大人知道了,你说他会不会心里很不爽。"F小声说。

"不要紧,大不了就不干了。今年执行了几次危险任务,我差点把命都丟了,上次忍者学校ZZ的同级生M加班惨死你还记得不。"我愤愤的说。

"没有钱谁他娘想干事,烂服务器挂了不就挂了。干我鸟事,老子晚上还想回家吃饭。"我接着抱怨道。

"开会去吧,还杵在这里。"ZZ过来了,手里拿着一个笔记本。“赶紧的,别撞到枪口上。”他好意提醒我。

"唉....走吧。"我低声叹了一口气。悻悻的准备去领导大人那里开会。"我又不是领导,过去干嘛。"我心里暗想。

领导大人的办公室在14楼最豪华的一个包间,推开门,我已经感觉到气氛不对。

分明是大量高浓度的查克拉。

"九尾模式"。我虎躯一震,跟ZZ对了一个眼神。

"领导大人还没有能力驾驭九尾的查克拉,如果暴走,那后果不堪设想,没想到事情到了这个地步,真是太严重了。"我心想。

“阴谋!!!”领导大人一只手按着桌面,另一只手握成拳头重重砸在上面。发出咚的一声闷响,如丛林的饿虎咆哮了一声。吐出了不清不楚的两个字。

半晌,会议室里一片鸦雀无声,我看了一下ZD,他还是一脸凝重的表情,毕竟事情弄成这样,没责任恐怕也要找个替死鬼。。我强行忍住想笑得冲动,抽动了一下嘴角。领导是个什么意思呢?我还真没想明白。

“不会的,区区一个腾讯云的下忍,没这胆子估计弄这么一出。”还是销售部的S大最懂领导心意。他率先发言打破了沉寂。“应该是一个低级别的失误。”

‘不可能吧’,我心想,‘虽然公司的项目是跟微信合作,但是,微信和腾讯云毕竟是两个部门。再说,删掉我们的数据,对他们有什么好处呢?’谁会吃力不讨好去干没有利益驱动的事情呢。

“不能排除这种情况。。” 领导稳定了一下他的情绪,继续说到:“你们几个,工作还可以,就是太年轻,不懂政治。。”,他瞟了一下刚刚发言的S大,然后续道:“但是也不排除,确实是一个低级失误。ZD,服务器运维都是你再做的,下面怎么处理?”

会议室的目光齐刷刷的投向了ZD那边,我想这个时候当明星的感觉一定很糟糕。你说这烂服务器也不是第一次宕机了,多大点事不就是要我几个苦逼的技术跟ZD一起加个班就是。。不知道怎么想到这里我心里忍不住暗暗想笑。我把手遮在鼻子下面。尽量抑制住不应该出现在这严肃的场合里那相对滑稽的表情。

“是这样的,”ZD说话了:“现在两个方案,我继续联系腾讯云看看能不能帮我们恢复数据,如果不行,那只有自己恢复了,被格式化的服务器上存储了我们作业系统代码和所有的图片文件,但是万幸的是数据库是放在另外一台服务器的,如果自己恢复估计要花一点时间。”

‘你妹的这是两个方案吗?指望腾讯云帮你恢复,黄花菜都凉了。’我心想,‘要是阿里云还有一线希望。’

“代码没问题,git版本库里面重新拉一份就是,只是图片可能需要一点时间,我们先保证作业系统可以用。”技术部的主管G赶紧补充道。

“你们看需要多长时间!?”领导问道。

“明天上午,”我脑子不知道哪根筋搭错了,插了一句。。。话一说完,我发现自己傻逼了,于是赶紧不做声,微低下头。不敢迎接领导火辣辣的眼神。

“今天晚上!”G赶紧帮我解围。好在他的反应真的是够快。我心里一阵暗暗感激。

“那么技术部的先去忙吧,其他的几个人留一下,还有点其他事情我们再讨论一下。”领导吩咐完这句话,我心里暗暗松了一口气。。心里盘算着今天的宵夜吃什么,已经饿得咕咕叫的肚子提醒我摸出了裤袋里已经快没有电的手机。

这才7点半,战斗才刚刚开始,一个灯火通明的夜。

洪宸桑

推荐个工具 赛门铁克超级备份恢复工具NBU,用过都说屌

我就是那个喜欢没事Linux上敲 rm -rf * windows上删文件都是 shift + delete从不进回收站的…
讲讲工作中遇到的几次“小”事故…

1.工作是运维相关 但不是运维(开发一些自动化运维工具 ,其中就有备份恢复软件)
开发完测试时,要往Linux上安装 ,重复测试时有时就自己手工卸载一下,这个卸载命令就是 rm -rf (笑,当然这些操作平常都是普通用户下,删也都只能删家目录下的文件,没得雕撕… 某个闷热的午后,还在沉醉在睡意中没有完全醒来开始了测试,一个手滑,开启了root模式,执行了这个命令,而且是在 / 目录下…当时立刻就清醒了…

(多亏NBU,操作系统、数据库都可以轻易恢复…我们开发的轻量级备份软件跟NBU的备份策略差不多)

2. 第二次手滑是故意的,项目组新申请了一套存储设备给我们测高可用功能,那么大空间我们用不完放实验室浪费,就有个测试组借了一部分做大数据量性能测试用,然而我们并不知道…某天版本发布前做验证,我们空间不够用了,然后发现存储上几个lun名称好奇怪,看命名风格就知道根本不是我们创建的,这特么谁跑我们这创建几个lun干毛?管他三七二十一删了再说…没过不久,就听那个组的leader一路咆哮的骂过来了,那人外号女魔头… (逃

(幸好测试数据都有工具生成,重新用工具自动构造数据就好咯)

3. 要说前两次手抖都是在实验室里还能勉为其难的搪塞过去,这一次把生产环境的数据库清空可就严重多了… 就在前不久,我们开发新版本之后想立即放到生产环境,当时决策是 先让两个版本并行一段时间,所以不是直接在旧版本上升级,而是在另一套服务器上重新搭建,运维人员提供另一套环境时搞错了,数据库地址仍然是旧的服务器地址,安装人员也没管直接在上面安装(版本安装中创建数据库用户时会删除已存在用户,所以安装过程中那个原来的用户数据全部清除重建了)突然我们发现旧版本的页面展现不正常了就跟前天打开携程网的一模一样…上线几个月的数据 没有备份 ,蛤蛤蛤…

(业务日志记录的好,数据都可以从日志记录中捞,一天天慢慢重做吧,那个酸爽,画面太美不敢想)

陶德瑀

这吊事我干过啊,狗厂,某部线上服务器。准备搞个测试数据库做内网开发用,导入两天前数据时,删除了线上正式数据库。谁特么能想到脚本第一句话是drop database,当时还纳闷测试库怎么一条数据都没有。后面的事就是加班等着DBA恢复吧,幸好binlog都在,网站流量小,恢复还算顺利。事情没闹大也没扣绩效的原因是当月运维出现了三个大的事故,然后公司在纳斯达克上市了。

浮生

我来回答。

首先,我干过这事。
其次,删干净数据且不能恢复,就不是新人能干的事。
最后,不管是谁完成了删数据的全部操作,板子不能打在他一个人身上。

十年前,我们要开发一个新系统,来了一批厂家的人做开发测试。排排坐好,连入内网。随后需要部署HPUX+SYBASE的测试环境。然后有个厂家的工程师问我,某台主机上的数据有没有用还?他说他打算把测试环境放在上面。我看了下,说没用了,可以。

然后他完成了一系列操作。我想大致应该包括关闭数据库,干掉阵列,重新分区硬盘等等。然后把测试环境部署成功。

过几天,我们领导找我,说我犯了个错误。我认为没有有用数据的主机上其实有个在用系统,现在被彻底干掉了。

其实那在用系统也没怎么用,没什么影响。所以领导只是笑着说我一句。工作在继续。

如果是现在,当技术娴熟的厂家问我类似问题,我会让他写个报告,说明拟操作的内容和目的,通过邮件发给我和我领导,然后再定怎么做。而不是我随口一句话。

所以事情的本质不是删除数据本身,而是对数据的管理问题。什么样的操作会不可逆,需要怎样的权限,需要什么样的流程来确保得到了严格审核和严密论证,需要什么样的保障来确保数据安全。这些都不是所谓新人的责任。

至于携程,支付宝这样的平台,已经不可能是主机+数据库+阵列的模式,不做运维多年,我的过时知识让我对这两件事感到匪夷所思。

王长峰

说个项目组的故事,匿名吧,某地市政府某部门现场做维护的。
客户要求把全部在符合条件的某类型信息转到B下
正确的sql应该是
update person set something='a' where pid in (select pid_change from peroson_change)
但是现场小伙写成了
update person set something='a' where pid in (select pid from peroson_change)问题是,peroson_change表里面根本没有pid这个字段,而是pid_change,其他数据库没试过,oracle中
这个sql执行后把person的全部数据都改掉。

执行之后,现场小伙没发现,下班上班炸锅了,我们这个系统不是内部使用的,具体不说是什么,我们系统如果彻底宕机2小时以上都是会上报纸的。

当时发现后我也吓个半死,好在这个表只影响部分业务,赶紧找备份数据,因为系统数据库的备份维护不再我们手上,直接动备份数据要惊动客户的信息中心,好在上周有一份我们自己的备份,恢复了一下,然后再根据业务逻辑关联,恢复了一部分数据。

这样肯定还是有没恢复的,于是找涉及的业务部门经办负责人,一共三个人,和他们做了解释,告知如果出现问题需要在系统重新办一下。

最后,我出酒钱,小伙出饭请三个负责人吃了一顿。

总结:
1、备份在备份
2、平时一定做好客户关系

stalker

前宇宙行码农。

刚工作那年半夜在数据中心做数据移行,带去的脚本边跑边改终于凌晨四点多全部跑完了,顺手写了几句sql准备truncate掉移行过程中用到的备份表,备份表名是“正式表_bak”。

谁知鬼使神差的忘记加“_bak”,好几张上百G的正式表数据全部清空了。。定时跑的批量程序开始报异常了,冷汗瞬间下来了。

多亏Oracle的闪回功能,1小时内恢复了,当时天还没开始亮。报错的批量暂停重跑,修改了输出日志,这个事情算是解决了。还好不是核心系统,只是行内某部使用的内部平台而已。

当然,后来数据中心日常变更规范日趋严格,各种自动监控以及策略都跟上了,没什么机会犯这种错误了。

wy Lament

不邀自来,大学念的计算机系,专业更偏向数据库,曾就职于某外资银行开发部门,从技术部门的角度回答一下这个问题(说起来,这个让银行的运维的来回答会更专业更详细)。
A.数据库:
大部分大公司或者银行都是不允许发生这种情况的,因为一旦发生了就不是开除几个人、让几个人进监狱能挽回损失什么的了...你想想你的存款一夜之间因为有人把数据库物理删除了就没了,他们怎么处罚这个人你都不乐意啊.....
先拿某银行举例,实习生和刚入职的职员这个级别是接触不到上线的数据库的(除非特例),但是还要你做数据库方面的工作,怎么办呢? 给你一个测试库的权限,表结构什么的跟正式的一样,专门让你干活用的。 新项目做好了之后,也是给一个跟正式使用环境一模一样的环境去运行,反复确认没有问题之后才会上线。上线之后出问题怎么办?安心 都有备份库...
在条件允许的情况下,完全可以通过合理的权限控制(最常见的:权限分离)、版本控制、定时备份、合理和完善的测试等方法避免此类状况发生。
说了这么多,有没有在线库弄坏了的? 有,某机场请了一个大牛DBA去帮忙调数据库的时候出了意外,结果几个小时内整个机场无法正常运行,损失几百万....这种情况要么甲方承担,要么乙方承担,要么俩家对半...有没有判刑的还真不知道...

作为技术人员如何避免自己一时不慎弄坏数据库,首先条件允许的情况下,弄一个跟正式库一样结构的测试专用库,在测试的上面跑没问题了再说。
第二、请在对数据库进行更改之前备份...备份!一定要备份!或者这么说,在执行update、alter、delete这类操作的时候,请务必慎重检查...
第三、善用数据库本身的特性,错了就回滚呗.....

B.在线的网站代码之类的源码。
意外删除如何恢复上这类比数据库恢复要方便很多,大部分恢复的难易程度是跟这个公司的制度是否完善直接挂钩的。
比如如果做到发布的每个版本都有专门的服务器进行储存,开发部门只能从服务器上下载并不能直接在服务器上修改就无所谓啊,就算有人把在线的网站整个全删了,硬盘用磁铁格式化了,从存储各个版本源码的服务器上找到现在的版本拷贝进去配置一下直接跑就是了,数据库一起被删了?谁特么让你把权限给到他们的..找到最近的备份点的备份库弄一份出来先用着,然后在技术范围内努力恢复这段时间的数据吧...(小网站,现在大网站看起来一直那样,实际上后台的功能模块都用集群来称呼了...)

----------写了半天突然觉得题主可能是看到携程最近“物理删除”的新闻产生疑问所以--------------------

其实吧,我觉得这新闻虚假信息太多,拿携程举例,假设风传的一个人的误操作导致整个系统连带数据库十几个小时无法恢复是真的,一个如此重要的网站,公司居然不做一个(或更多)备用系统也是够随意的,做个备用系统,平时没事切换一下保证备份系统实时可用,自动检测、主站挂了之后自动切换(bilibili都有备用系统),然后导致11小时损失了1200W.....

然后再详细吐槽几句携程的这个新闻(来源百度随便搜了一个:携程被攻击真相:或系内部高权限工程师所为(图)_中国政协):
“28日,部分携程用户反应其网站和APP无法登陆,网上传闻携程数据库遭到“物理删除”。携程方面表示,5月28日上午11:09,因携程部分服务器遭到不明攻击,导致官方网站及APP暂时无法正常使用,目前系统正在逐步恢复中。经过紧急排查,携程数据没有丢失,预订数据也保存完整。”

首先,物理删除这个说法本身不靠谱,我接触过的无论数据容量还是重要性类似甚至高于的携程系统的数据库,从数据库备份上讲,至少都分为本地高可用备份(本地定期从正式库里备份来的)、异地热备(光纤被短、该地发生自然灾害例如地震、泥石流等导致数据库无法访问时,用来实时切换)、磁带冷备(藏起来的,比如藏在银行的金库里)三道保险。然后是权限分离,从权限上讲至少分为:数据库管理员、操作系统管理员、存储管理员,注意!当后台的模块用集群来称呼的时候每模块的库都是这样划分权限的,这特么就多少人了,一个人能有权限弄挂一个库这么久都难,别说一个模块的库,更别提整个系统了。这还只是说挂掉一个库,删除就更难了,真在完善的制度下删了这个系统所有的数据库...这情节都可以拍电影了......

然后,一群员工报复社会。想报复社会没那么容易,无论是SA还是DBA还是运维刚入职的小弟恶意报复公司要承担责任的严重的就是刑事责任,职位越高约束越多(在某银行我还是实习生的时候就签了一本A4纸大小,2CM厚像书一样的保密协议),一般没人去做,请原谅我没办法细说到底违反了都有啥处罚,我英文不好基本看不懂于是根本没有读过就直接签了! 反正对于我来说,要么扣奖金、扣绩效;被开除;被告上法庭....

黑客,干这种事情就是作死...真是黑客干的过几天就被抓起来了。。

---------------------------------让我来大胆的猜测一下----------------------------------
看携程网网站从无法访问到后来恢复了几个模块的状况,数据也没有丢失,应该确实是系统被挂掉了,并且没有备用系统或者备用系统也挂了,个人猜测应该是运维使用pssh大规模的处理了所有服务器的文件,但是文件名写错了,误删除了,或者误修改了什么文件...由于没接触过他们的系统,所以最坏的状况是整个系统,所有模块N个服务器,从0开始配置....
读者问:你不说是说做好版本控制blabla的,分分钟就恢复好了嘛!
其实在现实中这种大型网站并不是这样的,平时运维部门会有一些应急方案来应对在线系统的突发状况,分分钟确实可以OK。

但是这次是整个完蛋了,不同的部门需要协调,负责不同模块的TEAM需要互相沟通,相信很多读者都有工作中跟别的部门打交道的时候把,想象一下这个时间成本;

甚至有可能有一些不常用的模块上线了之后就没有人负责了(人都转去做别的模块了),然后说不定当初参与过这个模块的人都离职了,说明文档or配置说明也没人写过(这个很有可能),有备份想上都得费点劲;

不同模块之间还有耦合和依赖关系,不太恰当的比方房子没盖好床修好了也放不进去,抽油烟机修好了,电磁炉还坏着厨房一样煮不了面条。再加上携程也是个有点年头的公司了,不同年代用的技术也不一样了..现在的技术人员要去看以前的老代码也是要时间的;面向对象的技术也是前几年才开始提倡的,我估计他们的系统也做不到全部都高内聚、低耦合,当初偷懒写死的一些东西现在想先恢复核心模块,绕开边缘模块都做不到(比如你想先修好显卡不管蓝牙模块,结果当年偷懒显卡跟蓝牙做一起了...),简直我坐在这里打字都能想到运维的人又要24小时工作了......

最后,高压下不一定每个人都能表现出强大的抗压能力,情绪不好,沟通效率降低,鸡飞狗跳..........

---------------------终于写完了-------------------------
答主因为身体不好现已改行1年多了,有一些专业词汇使用不当,或者写的不准确的地方还请多包涵。

顺便错别字什么的,回头我来检查一下,我9点多开始写这一篇写到现在中间去调了几次酒,还做了两杯咖啡,顺便跟一个客人讨论了茶叶的品鉴啥的...你们就原谅我吧.......

王树伟

哎呀卧槽,这不是说我么
弟弟我入职刚俩月,就把自己的测试机干挂了,尼玛跑了好久的数据啊~~当时从hadoop集群往本地拖一些结果数据,妈蛋,完全没有考虑测试机的心情啊,直接就灌啊。周五晚上往电脑里get,周六就无法登陆了,后来被告知硬盘已经驾鹤西去了。呵呵呵呵呵呵。
你以为就结束了?
没——有——!
换了一台测试机后,改为多个人共用一台测试机,三个月后,呵呵呵呵呵呵,又尼玛登陆不上去,原因至今不明,这里面的数据更加重要啊!!!没办法,联系OP吧,OP哥哥说:嗯,问题挺严重的,五块盘坏了三个。
什么叫坏了三个啊!不是有raid备份么!!
哥哥说,坏一个倒还能找回来,三个就不行了,联系数据恢复公司吧。
呵呵呵呵呵
然后就开始百度各种数据恢复公司,我勒个去,这些公司真是漫天要价啊,一块盘要2000左右,无论好坏都是每块这个价,尼玛我五块,就要上万了?!
我的内心几乎是崩溃的。
后来OP哥哥神技大开,找回来部分数据,算是没让我一口老血喷死在异乡。
现在长精神头了,数据一定要——多——备——份!

匿名用户

我也来自爆一下:
1、刚入职的时候(2009年),一个系统客户催着上线,然后连备份机制都还没有建立;上线不久,各种系统bug,老大就在生产上做了几条测试数据,有一天下班,老大让我把数据库中的几笔测试数据金额改成零,搞定了一起去吃饭(下午6点);然后我愉快的执行了update XXXX set xxje = 0 ;当时心想,作为一个新人,老大这么关照我,好开心;;;吃饭过程中,总感觉有什么不对劲,然后强烈建议老大,吃完饭去趟公司。。。。。。
然后去了公司,然后发现上面的update没有加查询条件,额滴那个亲娘咧,把40万纳税人的应纳税金额,全部改成了零(其实当时在想,估计广大企业主要感谢死我),当时整个人都懵了;屁颠屁颠的对坐在旁边的老大说明情况。。。。

当时心想,金融危机找份工作好难,才入职几个月又要失业,虽然只有500一个月工资,但是做的还蛮开心,老大对我也很好,估计当时连吃了我的心都有。可是、可是、当时老大很淡定的问了我一句,你有解决办法吗(后来才知道,老大曾经干过比这更严重的事情);于是我们愉快的交换了意见,老大认为我的办法可行,让我尝试着先搞,一直陪着我(好感动)。。。于是从各种关联表中找规律,现场写恢复程序,一行一行数据进行恢复;最终全部恢复(第二天凌晨3点)。。。然后老大很开心的带着我去吃了个烤羊排,论斤称,当时尽剩下激动和感动了;有这样的老大,好好干,于是一直干到今天都还没有离职(老大几年前离职了);

这个亲身经历成了我之后带人过程中,必讲的一堂课

2、有一次去外省在生产数据库(Linux服务器、Oracle数据库)上部署日志监控程序,当时对linux数据库也不是很熟,用root账号执行一个授权chmod命令的时候,忘了加 ./(前面有个点) ,直接把操作系统根目录权限给改了,额滴亲爹咧,客户当时也跟着一起懵了,完全听不懂我在说什么,只知道明天早上系统好不了,死定了;于是,连夜各种资料、论坛、朋友圈、场外电话求助,凌晨快4点才弄好,事后客户感动的说不出话来,亲自送我回酒店,刚进门,老大(不是之前那个老大)站在门口问情况如何,我说弄好了,然后他吐了一句:那我可以安心的去睡觉了,明天我们还要赶火车回去。

。。。。。。。。。此处只能匿名了,要不然被这两个老大知道了,估计得掐死我了

Liang Wang

这个题绝对是“放着我来.....”

我们组的所有产品代码现在都是放在Github上面...所以每个人有自己的备份,然后提交PR,另外的人检查然后合并....

就在上个月的某一天,我自己想从Github上面把自己的备份删掉,在找怎么删的时候点来点去点到了root下面.........然后因为中间插了些其他事情,再回到电脑前的时候就没有核对是自己名下的还是root名下的,在Github上虽然做删除是要输入备份的名字的,但是为了方便起见我的名字和root的那个是一样的,于是....我飞快的输了名字,然后按了确认......

一瞬间整个产品代码就没了.....关键还不是这个,因为代码还能从其他同事的备份里面恢复,关键是提交历史没了,bug没了...RP的记录没了.....!!!!!!!!!

第二秒我就从位子上跳起来喊了句:闯祸了...

在公司4年,还没出过这么大的篓子.....(这里要给Github做广告了)于是,很紧张的给Github support发信....结果人家10秒钟就回信说恢复了..登上去看发现提交历史还有些问题,又是几分钟就帮忙恢复了....实在是...大赞...

匿名用户

可耻匿,运营商员工

    • 第一次,刚校招进来,作为一名lab快枪手(咳咳),手速肯定要快于大脑思考速度,因为在lab敲完配置之后,我会erase(擦除所有配置),然后reboot(重启)再接下来做下一个实验的。本人技术底子比较厚,炫过几次技之后,领导对我很放心,让我直接在生产环境做实验,然后……你们都懂发生了什么,我把大约7000个人宽带用户100条政企专线全部“Duang”得一下就没了……呃,然后周边就突然沸腾起来了,周边噪音提高了好几十个分贝!!!然后台席电话,主任电话,高工电话全被打爆,后面领导把责任全推给华为……因为前会儿他们做了个版本升级,后面华为研发在调试的时候发现问题在哪了,但是……他们也不敢明说,打掉牙只能往肚子里咽,哎,好有罪恶感,所以只要华为的人来我们这边,我都会给他们倒一杯茶,散一支烟啥的,尽量好的配合他们工作。
  • 因为备用板数据已经被我清空了,我把主板卡清除重启之后,实时就彻底完蛋了,后面恢复备份FTP上昨天凌晨1点的备份数据,共耽搁了10分钟,部分用户因为数据丢失停了好几天。
  • 嗯,我被扣了一个月薪水+臭骂一顿。

匿名用户

大学实习的时候,在市里的广播电台某个频道做过一段,其实我们的专业跟那个播音和后期制作什么的毫无关系,只是这个节目是有关于生活、民生、日常琐事的,所以找我们去打打电话录录音,后期会把我们的问题减掉只留对方,剪辑成对方讲的故事。
某一天,我们那节目的负责老师脑子抽了,让我们俩实习生去剪辑(以往都是只管打电话录音就可以的),然后教完我们就走了,我们在剪辑室里做了半天,完工时我手欠,心想帮人家改个文件名吧,我以为和存在电脑上的文件是一个意思呢,结果到现在我都不知道什么原理,他们剪辑素材后保存是不能随便改名字的,不然不按默认的走就相当于丢掉了,然后我们那剪辑老师回来懵了,我都吓死了,最后还是让IT部门的人过来找回来的,那主持人还跟我们说,没事,找不回来晚上我就给大家念本书什么的,心好大啊。

匿名用户

来,这个问题我有必要回答一下,这事我干过,误删过企业应用中几千条数据。
事情是这样的,大概七八年前吧,我还是在校生,在一家台资企业实习做erp系统,在我实习开始没多久,有员工离职了,当时的部门经理让我接手他的工作(人手实在很紧张),正好应用在出了问题,需要排查bug,这里我吐槽一下不写注释的代码风格,数万行代码不写注释也没文档,当时我还是一个在校生,这bug查的我不要不要的,现在回想起来那次都是我最痛苦的一次代码排查经历,回到正题,总之我查了几天也没查出个所以然,每天晚上回去都很晚,回去之后还要跟女朋友吵吵架,心情烦躁到极点,给后面捅篓子埋下了伏笔。
有一天早上六点我就到公司开始查问题,心想今天一定要把你搞定,做开发都有这样的经历,在你的sql编辑器中会留存很多之前用的sql脚本,不会每次都清理,那天早上可能还没睡醒,本来想切到生产环境查一下数据情况,居然执行了在上面的一句delete,那时候用的是sql server,不需要手动commit,整张业务表的数据被我删光了,当时我就吓出一身冷汗,当时我还是个见识短浅的学生,不知所措,我的第一反应是马上电话求助当时带我的老员工,大致说明了情况后,问了他我应该怎么办,他让我可以试着做数据恢复,同时要汇报老板,我想能救我的只有我自己了,马上去下载了数据恢复的工具,叫什么我忘了,那个工具可以生成指定时间内产生数据变更的所有反执行脚本,当时的系统权限控制没有现在企业这么严格,不然我也不能一条龙自己安装外部工具,可能当时的时间还比较早,没有产生其他的数据变更,匆匆忙忙生成脚本执行了后,其他人也都来上班了,而我感觉像刚晨练结束,倍儿舒爽。ps。后来我也没告诉老板。这件事情也没被任何人发现,捏哈哈。。

来源:http://www.zhihu.com/question/30748582

分享到