代码之家  ›  专栏  ›  技术社区  ›  wadesworld

Connect应该在SQL*Plus脚本中工作吗?

  •  1
  • wadesworld  · 技术社区  · 15 年前

    我想从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命令的用法?

    3 回复  |  直到 11 年前
        1
  •  0
  •   Quassnoi    15 年前

    跑步时 CONNECT 里面 SQL*Plus ,删除引号:

    CONNECT myuser/mypass@mydb
    

    如果要将凭据作为参数传递给 sqlplus :

    sqlplus "myuser/mypass@mydb"
    

    ,以便shell分析 myuser/mypass@mydb 如果连接标识符中有空格或使用其他选项,例如 AS SYSDBA .

        2
  •  0
  •   Jeffrey Kemp    15 年前

    使用/nolog选项。

    sqlplus /nolog @myscript
    
        3
  •  0
  •   tale852150    11 年前

    Oracle 11GR2

    我通过最初作为john连接的sql*plus运行了一个.sql文件。在文件中,我以sys连接,然后运行一个grant。请参见下面的.sql文件内容:

    将sys/password连接为sysdba

    向John授予对DBMS加密的执行权限;

    连接John/Doe

    注意:我不建议将sys/password保存在文本文件btw中。

    高温高压