Munchkin450
2020-07-08T10:11:47+00:00
今天犯了一直以来程序员的笑话--删库
昨天夜里版本更新,我独自上机操作更新。[s:ac:愁]
按照惯例大版本更新使用rman进行备份,我在执行备份命令后,服务器报了硬盘不足的错,我就想通list backup of database 看看删点老的备份,复制了目录到目录下删了几十个20-30g的文件(本来应该复制备份目录,脑抽了复制成了表空间目录)。。。[s:ac:无语]
然后我又执行备份还是报错(这时候应该报的错是dbf找不到),我没仔细看以为空间还不够。。就想把过期的archivelog删了,结果我到archivelog下把目录清空了,再备份还报错,这是我仔细看了下发现是dbf 找不到,想起自己最早删的好像有dbf文件,心里一惊暗想“我不会把表空间给删了吧”[s:ac:惊]
结果回到表空间目录,下面果然没了几十个dbf文件。联系了值班系统工程师紧急恢复,从23点到第二天早上10点都没恢复好(以前另外一个同事做的备份有问题,恢复也报错),我自己研究了一晚上数据恢复,死马当活马医,系统他们弄备机,我自己拿着误删的主机测试恢复,结果还真把几十个dbf给找回了,当生产数据库起来的时候,真的长舒一口气,真是不幸之中到万幸,没有啥损失,只是生产系统停机3小时。
昨天夜里版本更新,我独自上机操作更新。[s:ac:愁]
按照惯例大版本更新使用rman进行备份,我在执行备份命令后,服务器报了硬盘不足的错,我就想通list backup of database 看看删点老的备份,复制了目录到目录下删了几十个20-30g的文件(本来应该复制备份目录,脑抽了复制成了表空间目录)。。。[s:ac:无语]
然后我又执行备份还是报错(这时候应该报的错是dbf找不到),我没仔细看以为空间还不够。。就想把过期的archivelog删了,结果我到archivelog下把目录清空了,再备份还报错,这是我仔细看了下发现是dbf 找不到,想起自己最早删的好像有dbf文件,心里一惊暗想“我不会把表空间给删了吧”[s:ac:惊]
结果回到表空间目录,下面果然没了几十个dbf文件。联系了值班系统工程师紧急恢复,从23点到第二天早上10点都没恢复好(以前另外一个同事做的备份有问题,恢复也报错),我自己研究了一晚上数据恢复,死马当活马医,系统他们弄备机,我自己拿着误删的主机测试恢复,结果还真把几十个dbf给找回了,当生产数据库起来的时候,真的长舒一口气,真是不幸之中到万幸,没有啥损失,只是生产系统停机3小时。