liaosnet 发表于 2009-02-09 14:56

[求救 SYBASE] .dat文件删除了如何恢复??

帮人发的,知道的说说....

不小心把/opt/sybase/data/目录下的.dat文件删除了,但是发现数据库还在正常运行。
我想如果下次重新应该就启不来了,想问问各位高手如何用正在运行的数据库来还原删除的数据文件,救命呀,谢谢!!

http://bbs3.chinaunix.net/thread-1365905-1-1.html
答对者两边都加分~~:em03: :em03:

chenfeng825 发表于 2009-02-09 14:56

lsof|grep "you_datafile"如果是使用文件系统设备,且现在还看到时deleted的话就应该会得来

首先:停止所有数据库连接,这个很重要。然后checkpoint all,将所有的cache刷新到磁盘
1.尝试作dump,估计会有问题
2.做bcp,应该所有对象都能够bcp出来
3.做完了,可以利用lsof看到的描述符把标志为deleted的文件dd出来,然后重启应该没问题

小心,谨慎。应该没有问题


要加一句:
所有操作,后果自负!

[ 本帖最后由 chenfeng825 于 2009-2-9 16:33 编辑 ]

chuxu 发表于 2009-02-09 15:16

但是发现数据库还在正常运行?
呵呵,这个只是表面现象,可能访问的是cache中的数据,不可能所有的页都在内存里吧

看你的UNIX系统是否有恢复文件的方法了。

liaosnet 发表于 2009-02-09 15:21

回复 #2 chuxu 的帖子

不小心删掉这个数据文件后,还跑了N天了...还正常...

chenfeng825 发表于 2009-02-09 15:42

lsof看看应该只是标志为deleted
不要停止数据库,做一个备份出来应该就可以了!

WFCJZ 发表于 2009-02-09 16:16

原帖由 chenfeng825 于 2009-2-9 15:42 发表 http://bbs2.chinaunix.net/images/common/back.gif
lsof看看应该只是标志为deleted
不要停止数据库,做一个备份出来应该就可以了!



如果按照楼主说的,能正常运行,最好检查一下,然后按照这个方法备份出来,做数据恢复是一个相当不错的方法,可就是不知道你的库真的正常运行不.

liaosnet 发表于 2009-02-09 16:27

原帖由 chenfeng825 于 2009-2-9 15:42 发表 http://bbs3.chinaunix.net/images/common/back.gif
lsof看看应该只是标志为deleted
不要停止数据库,做一个备份出来应该就可以了!

这个怎么看?~?
又看恢复呢?

liaosnet 发表于 2009-02-09 16:36

额...系统中没有lsof这个软件....:em17: :em17:

pandu 发表于 2009-02-09 16:37

用版主的方法试试看,记得处理好后结贴啊

liaosnet 发表于 2009-02-09 16:38

回复 #7 chenfeng825 的帖子

呵呵~~谢谢..学到了...不过没有lsof没办法往下做.......在想想别的办法..
http://www.ibm.com/developerworks/cn/aix/library/au-lsof.html
页: [1] 2
查看完整版本: [求救 SYBASE] .dat文件删除了如何恢复??