0

我正在尝试从网络驱动器的 .dmp 文件中导入少数用户。不幸的是,自从我得到

ORA-39001: invalid argument value
ORA-39000: bad dump file specification
ORA-31640: unable to open dump file "\\net\drive\directory\placeholder\my_dump.dmp" for read
ORA-27041: unable to open file
OSD-04002: unable to open file
O/S-Error: (OS 5) Access is denied.

我不知道为什么,因为我既可以访问该目录,也可以在那里保存一个 txt 文件。

目录在数据库中保存为 '\net\drive\directory\placeholder'。日志文件指定了其他目录(不在网络驱动器上)。

是否有任何解决方法可以导入此转储而不实际将其移动到本地驱动器?转储真的很大,我没有空间(甚至没有关闭),我也不能(可能)更改我在这个映射驱动器上的权限。

我也不能真正使转储变小。

在一个站点上,我发现了这个建议——“记住,您的操作系统用户 ID 可能不是在操作系统、UNIX、Linux 或 Windows 中运行提交的 RMAN 作业的 ID。” 解决方案是“

In the ControlPanel services:  
Right click on service
Select ?properties?
Select ?logon?
Change the default user ID to an Oracle user with Windows administrator privileges"

但我不确定改变这实际上会对服务器/数据库产生什么影响,而且我正在客户端的服务器上工作,所以我不想轻率行事。我也不想重置数据库或服务器本身。

我该怎么做有什么帮助吗?

4

1 回答 1

1

问题是您的 Oracle 实例在不同的用户帐户下运行,该用户帐户无权访问网络驱动器。除非您不想在不同的帐户下运行 Oracle,否则您可以将当前 Oracle 的实例用户帐户(通常是 Windows 平台的 LocalSystem)的读取权限授予您的网络共享。另一种选择可能是通过 dblink 从源数据库导入数据(在这种情况下您根本不需要转储文件)

于 2015-12-21T04:07:41.957 回答