对oracle备份和恢复的一个疑问

[复制链接]
查看11 | 回复9 | 2007-9-26 18:42:10 | 显示全部楼层 |阅读模式
比如 exp system/828707 tables=Info file=E:\114.dmp
这样生成一个备份文件114.dmp
然后我为了测试恢复操作能否成功,在Enterpise Manager将表Info删除,再运行命令:
imp system/828707 tables=Info file=E:\114.dmp
这样能正常生成表Info.
但假如我把命令改为:imp system/828707 tables=StuInfo file=E:\114.dmp
却生不成表StuInfo,说是没有发现表StuInfo。
我在想这算哪门子恢复呢?为了恢复一个表,你还得记住先前已删除表的名称,你不能在恢复时改变表的名称。我想正常的恢复应是你只需提供一个备份文件就可以进行恢复了。
回复

使用道具 举报

千问 | 2007-9-26 18:42:10 | 显示全部楼层
我在俺家院子里种了两排豆角,后来我给忘了,以为种的是黄瓜。
过几天我过去一看,咦!怎么是豆角秧子阿,怎么不是黄瓜阿!这叫哪门子种地呢?还得记住我种的是什么!
现在俺也不记了,反正种下去是什么,长出来就是什么,费那事干嘛?



回复

使用道具 举报

千问 | 2007-9-26 18:42:10 | 显示全部楼层
楼上兄台比喻很有趣。
不过我想能部分回答楼主的疑问了吧。
回复

使用道具 举报

千问 | 2007-9-26 18:42:10 | 显示全部楼层
我想你的理解偏差太大。你如果要恢复,一般是要知道要恢复什么的,如果你的exp出来的dmp文件只有一个表的话(或是就只有你想恢复的对象的话),那你imp时可以按full=y来恢复,或是不执行full或tables参数就可以了。
回复

使用道具 举报

千问 | 2007-9-26 18:42:10 | 显示全部楼层
2楼的兄台比喻很丰富啊!
回复

使用道具 举报

千问 | 2007-9-26 18:42:10 | 显示全部楼层
但是我在用sql server2000恢复一个数据库时,使用T_SQL语句我只需提供一个备份文件,在恢复数据库时就能改变数据库的名称。
回复

使用道具 举报

千问 | 2007-9-26 18:42:10 | 显示全部楼层
最初由 clever101 发布
[B]我在想这算哪门子恢复呢?......你不能在恢复时改变表的名称。我想正常的恢复应是你只需提供一个备份文件就可以进行恢复了。 [/B]

你要出差,把你养的小狗克林顿寄存到邻居家里,等你出差回来,看到小狗还是叫克林顿,说:“为什么还是叫克林顿?不是布什”,邻居只能说:“你寄存在我这里的时候就是叫克林顿这个名称,如果你想改名称,你领回去想改什么名字随你,我不能改”。
回复

使用道具 举报

千问 | 2007-9-26 18:42:10 | 显示全部楼层
大家都很幽默!
回复

使用道具 举报

千问 | 2007-9-26 18:42:10 | 显示全部楼层
只显示备份文件的内容. 你看看生成的log里的内容.
imp system/manager file=yourdmp.dmp log=yourdmp.log full=y show=y
听说修改了脚本文件后,可以更细致的控制数据导入.不过正如二楼所说.管它那么多.种豆得豆.
回复

使用道具 举报

千问 | 2007-9-26 18:42:10 | 显示全部楼层
有意思
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行