Database oracle中的进出口数据库

Database oracle中的进出口数据库,database,oracle,backup,Database,Oracle,Backup,我有oracle数据库版本“oracle orahome 81”的dmp文件,我只想导入数据,而不是表或视图…等等,因为我在pc1上导出dmp文件,我想在pc2上导入数据,但pc2已经有旧数据库,我想将元数据导入pc2,因为数据库已经存在,所以使用此命令时: imp username/password@orcl file=d:\backup.dmp full=y 错误显示我已经存在数据库,因此无法将新数据导入pc2 那么如何解决这些问题呢?您应该能够指定要忽略的索引=N和约束=N 您可以使用

我有oracle数据库版本“oracle orahome 81”的dmp文件,我只想导入数据,而不是表或视图…等等,因为我在pc1上导出dmp文件,我想在pc2上导入数据,但pc2已经有旧数据库,我想将元数据导入pc2,因为数据库已经存在,所以使用此命令时:

imp username/password@orcl file=d:\backup.dmp full=y 
错误显示我已经存在数据库,因此无法将新数据导入pc2
那么如何解决这些问题呢?

您应该能够指定要忽略的索引=N和约束=N

您可以使用

imp help=y

有一个选项DATA_ONLY=Y,但我不确定它是否存在于您的oracle版本中。

如果对象已经存在且为空,或者您正在导入的数据可以安全地导入现有数据之外的数据,您可以使用:

指定应如何处理对象创建错误。如果你接受 默认设置为,
IGNORE=n
,然后导入日志或显示对象创建 在继续之前,请检查错误

如果指定
IGNORE=y
,则导入将忽略对象创建错误 当它尝试创建数据库对象,并继续而不 报告错误


导入过程中没有删除现有数据的选项,因此,如果存在现有数据并且希望替换它,则需要先清空表(可能使用
truncate
)。显然,请确保您真的不希望删除任何内容。

“我只想导入数据,而不是表或视图”和“我想导入元数据”是相互矛盾的。假设您只想将数据导入到PC2中的现有表中,那么这些表是空的吗?如果不是,新数据将与现有数据共存,还是希望被替换?使用帮助显示示例错误;在这种情况下,您是否收到大量“对象已存在”消息?