如果脚本已完成,为什么我的任务在任务计划程序中会出现 0x5 访问被拒绝退出代码?

如果脚本已完成,为什么我的任务在任务计划程序中会出现 0x5 访问被拒绝退出代码?

我有以下批处理脚本:

copy \\remotehost.ip\c$\dumps\TEST_%date%.dmp C:\dumps\TEST_%date%.dmp

sqlplus sys/password as SYSDBA  @C:\dumps\recreate_test.sql > C:\dumps\recreate_test.log

timeout /t 10

impdp system/password@sid schemas=TEST,TEST_VIEW directory=dumps_dir dumpfile=TEST_%date%.dmp logfile=impdpTEST_%date%.log

它从同一网络中的远程主机复制 sql dmp 文件。然后运行在数据库中重新创建用户的脚本:

shutdown immediate;
startup restrict;

drop user TEST cascade;
drop user TEST_VIEW cascade;

create user TEST identified by password;
create user TEST_VIEW identified by password;

grant all privileges to TEST;
grant all privileges to TEST_VIEW;

EXEC DBMS_UTILITY.compile_schema(schema => 'TEST');
EXEC DBMS_UTILITY.compile_schema(schema => 'TEST_VIEW');

shutdown immediate;
startup;

exit;

然后运行导入脚本。所有这些 SQL 都有日志文件,似乎一切运行良好。导入过程中我遇到了一些错误,但他们只是告诉我用户已经存在(ORA-31684)并导入此现有用户的所有内容,并得到ORA-39082错误,本来是应该稍后修复的DBMS_UTILITY(是的,我在这里看到了我的错误,但这不是重点)。

我以最高权限运行它。系统管理员允许我检查选项Run whether user is logged on or not和选项Do not store password。即使我Run从任务计划程序的下拉菜单中选择手动运行任务,它也有 0x5 代码。

如果一切运行正常,为什么我的任务会以 0x5 错误代码结束?我看过日志,它们很好。

相关内容