Database Dmp文件导入创建触发器错误

Database Dmp文件导入创建触发器错误,database,oracle,import,oracle11g,export,Database,Oracle,Import,Oracle11g,Export,我已使用以下命令(均使用Oracle 11g)从一台服务器进行了完整的数据库备份,以移动到另一台服务器: 现在,当我想使用以下方法将其导入另一个数据库时: imp SYSTEM/password file=backup.dmp fromuser=scott touser=scott 我首先得到一个与数据库链接相关的错误: Create Database Link Failed. ORA-01031: insufficient privileges. 如果有人能解释为什么imp命令试图将我的新

我已使用以下命令(均使用Oracle 11g)从一台服务器进行了完整的数据库备份,以移动到另一台服务器:

现在,当我想使用以下方法将其导入另一个数据库时:

imp SYSTEM/password file=backup.dmp fromuser=scott touser=scott
我首先得到一个与数据库链接相关的错误:

Create Database Link Failed. ORA-01031: insufficient privileges.
如果有人能解释为什么imp命令试图将我的新数据库链接到未连接的源数据库,那将很有帮助。 但除此之外,这不是我的主要问题

在第一个错误之后,它继续导入并导入所有的行和表,然后在最后,我得到了一系列与“createtrigger”相关的错误

ORA-00942: table or view does not exist

导入参数中是否缺少某些内容?

您似乎没有创建数据库链接的权限,请以sys用户身份运行此操作

SQL> grant create database link to scott;

 Grant succeeded.
然后重新导入dumpfile,触发器失败,因为相关表不存在,我假设首先使用数据库链接创建表

如果只希望导出scott用户,则无需连接到sys, 这就行了,

export command

exp scott/pwd@db1 file=backup.dmp log=backup_log.log owner=scott 

import command

imp scott/pwd@db? file=backup.dmp log=imp_backup.log full=y

我已经授予数据库链接,现在特权错误没有出现,但我仍然得到在创建触发器时表/视图不存在错误。这两个scott模式在不同的数据库中吗?如果是这样的话,那么您也需要表,使用rows=y将只获取数据,而不获取表结构,最好在exp命令中使用owner=scott,然后尝试导入以获取所有表结构和数据。我尝试使用FULL=y,但仍然得到相同的错误。我再也不能访问源数据库了。我刚刚使用:exp系统进行了完整的数据库备份/pass@dbnameFULL=y FILE=“C:\backup.dmp”GRANTS=y ROWS=y log=“C:\backup.log”现在我想将所有内容从一个用户导入到一个与我在目标数据库上创建的同名的用户。它不仅导入行,还创建表结构,但不创建与触发器相关的表结构。错误是“表不存在”,该表是否存在于日志文件中?如果它在那里,那么它肯定会导入,如果它不在日志文件中,那么它不在转储文件中。但是如果我做了完整备份,这怎么可能呢?
export command

exp scott/pwd@db1 file=backup.dmp log=backup_log.log owner=scott 

import command

imp scott/pwd@db? file=backup.dmp log=imp_backup.log full=y