我有一个Oracle数据库。在数据库上有三个表(a,b,c表)和一个视图(a和b表的联合)。
我想备份dan b表和视图。我使用了这种语法exp user/psw file=backup.dmp tables=(a,b)
,但它不备份视图,只备份表。
如何包含要备份的视图?
答案 0 :(得分:2)
从Oracle 10g开始,expdp
是标准导出命令,不推荐使用exp
。
expdp
具有include
子句,您可以在其中指定要导出的表和视图。这是一个示例命令。
expdp scott/tiger@mydb schemas=MYSCHEMA
include=TABLE:"IN ('A', 'B','C')",VIEW:"IN('my_view')"
directory=MY_DIR dumpfile=Exp_ABC_MyView.dmp logfile=expdpExp_ABC_MyView.log
此外,您还可以仅导出对象定义或数据或两者。 https://oracle-base.com/articles/10g/oracle-data-pump-10g
中的更多示例答案 1 :(得分:1)
使用“exp”实用程序时,不能包含要备份的视图。 Oracle的expdp实用程序提供了在导出时包含视图的选项。
答案 2 :(得分:-2)
对此参数使用imp commnad
imp user/pass@service file=dumpfile.dmp log=logfile.log full=y rows=n ignore=n grants=n indexes=n