我想从 cron 作业运行 sqlplus 脚本。
我想我可以这样写:
CONNECT "myuser/mypass@mydb"
在脚本中,然后执行它:
sqlplus @myscript
但是,当我这样做时,我得到:
SP2-0306: Invalid Option
SP3-0157: unable to CONNECT to ORACLE after 3 attempts, exiting SQL*Plus
我是否误解了 connect 命令的用法?
CONNECT
在里面运行时SQL*Plus
,去掉引号:
CONNECT myuser/mypass@mydb
如果您将凭据作为参数传递给sqlplus
:
sqlplus "myuser/mypass@mydb"
,myuser/mypass@mydb
如果您的连接标识符中有空格或使用其他选项(如AS SYSDBA
.
使用 /NOLOG 选项。
sqlplus /nolog @myscript
甲骨文 11gR2
我通过最初作为 JOHN 连接的 SQL*Plus 运行了一个 .sql 文件。在文件中,我以 SYS 身份连接,然后运行 GRANT。请参阅下面的 .sql 文件内容:
将系统/密码连接为 sysdba
将 DBMS_CRYPTO 上的执行权限授予 JOHN;
连接约翰/能源部
注意:我不建议将系统/密码保存在文本文件中。
高温高压