ORA-12546:TNS:权限被拒绝,在Windows上通过Task Sheduler

时间:2015-11-25 10:08:33

标签: windows oracle batch-file permissions

我试图通过Windows Task Sheduler执行批处理文件来导出特定oracle用户的所有对象:

exp.exe user/pass@dbname owner=user log=mylog.txt

Oracle 11.2.0.4 x64和数据库位于同一台Windows7计算机上

任务开始正常。这意味着没有错误的用户或密码问题。但是当任务按计划启动时,它会在日志中说明:

  

ORA-12546:TNS:许可被拒绝

当手动启动任务时,在与调度用户相同的用户下(此用户是Administrators组和ora_dba组的成员,顺便说一句),它可以正常工作并完成导出。任务安排在任务属性中使用Execute with highest privileges复选框,因此我不明白为什么“按计划”和“手动”任务启动之间存在差异。

我在这个网站上的ORA-12546: TNS:permission denied上已经阅读了很多内容,但所有主题都与Linux有关。我尝试在安装了Oracle的c:\ app \ oracle上设置权限。实际上,默认情况下Administrators已拥有该目录的所有权限

我注意到,即使在按计划启动的任务中,表的导出也能正常工作:

exp.exe user/pass@dbname tables=mytable1,mytable2 log=mylog.txt

无论如何,oracle用户user具有导出整个数据库的oracle权限。

问题:

只有表被导出正常,但是使用owner=导出密钥我得到TNS:permission denied,并且只有在按计划启动Windows计划任务时,手动启动任务才能完成所有操作。

0 个答案:

没有答案