如何备份oracle中的视图和一些表?

How to backup view and some tables in oracle?

我有一个 Oracle 数据库。数据库上有3个table(a,b,c tables)和一个视图(union of a and b tables)。

我想备份 a 和 b tables 以及视图。我使用了这个语法 exp user/psw file=backup.dmp tables=(a,b) ,但它不备份视图,只有 table。 如何包含要备份的视图?

从 Oracle 10g 开始,expdp 是标准导出命令,exp 已弃用。

expdpinclude 子句,您可以在其中指定要导出的表和视图。这是一个示例命令。

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

中的更多示例

您不能在使用 "exp" 实用程序时包含要备份的视图。 Oracle 的 expdp 实用程序提供了在导出时包含视图的选项。

使用带此参数的 imp 命令

imp user/pass@service file=dumpfile.dmp log=logfile.log full=y rows=n  ignore=n grants=n indexes=n