oracle - Windows 批处理脚本中的 SQL*Plus 连接失败
问题描述
call sqlplus UNAME/PASSWD@DBNAME@\\FILELOCATION\SQLFILENAME.sql
错误:
ORA-01017:用户名/密码无效;登录被拒绝
CALL sqlplus UNAME@DBNAME/PASSWD@\\FILELOCATION\SQLFILENAME.sql
错误:
ORA-12154:TNS:无法解析指定的连接标识符
解决方案
尝试在连接字符串和文件之间添加一个空格(例如,在 . 之前放置一个空格@\FILELOCATION\SQLFILENAME.sql
)。
call sqlplus UNAME/PASSWD@DBNAME @\FILELOCATION\SQLFILENAME.sql
要尝试的另一件事是完全限定您的 DBNAME。您可以查看您的 tnsnames.ora 文件(检查您的 Oracle 安装文件夹,然后转到 network\admin 文件夹以找到 tnsnames.ora)。在那里,搜索您尝试连接的 DBNAME,并查看它的全名。(例如:DBNAME.SRV.YOURCOMPANY.COM 就是一个例子)。
推荐阅读
- loops - React Native:使用数组循环遍历对象数组来创建组件
- swagger - Swagger Bearer Authorization 在 ui 中不可用
- docker - 如何从不同的机器(计算机)访问 docker 容器?
- regex - bash 中 grep 对前面有几个相同字符的行的意外行为
- css - 仅 CSS 饼图 - 如何在切片之间添加间距/填充?
- r - 使用闪亮的选择,避免对搜索结果进行排序
- mysql - MariaDB:自定义数据目录:始终需要保留 /var/lib/mysql 目录
- java - java.lang.ClassNotFoundException: org.glassfish.jersey.internal.RuntimeDelegateImpl ,当抛出 BadRequestException
- java - 使用 Android Studio 中 EditTexts 中的值更新 mySql 表的所有列
- node.js - 使用 NodeJS / Express 和 HTTPS 时 socket.io 中出现 CORS 错误