ORA-12555: TNS:permission denied
Cause: User has insufficient privileges to perform the requested operation.
Action: Acquire necessary privileges and try again.
ORA-12555: TNS:permission denied 表示用户没有被授予使用连接文件(tnsnames.ora)中定义的连接所需要的访问权限。
此错误表明用户无法获得对连接描述符中定义的连接所需的访问权限。客户端应用程序可以通过OS级别的文件访问权限来获得访问权限(提供给TNSNAMES.ORA文件),或者它可以通过TNSNAV.ORA文件中定义的各种认证方法来获取访问权限。
当用户尝试连接到数据库而不是tnsnames.ora文件时,您可能会遇到此错误:ORA-12555:TNS:权限拒绝,这可能是因为用户没有对tnsnames.ora文件的访问权限。
1. 首先,检查客户端文件夹是否具有tnsnames.ora,如果没有,则可以从服务器复制它;
2. 确认是否有可让客户机访问tnsnames.ora文件所需的正确文件访问权限,这可以使用操作系统上的chmod/attrib命令等工具完成;
3. 确保用户使用的是正确的连接文件,这可以通过查看tns_admin系统变量来执行;
4. 检查你的tnsnames.ora和sqlnet.ora文件是否正确,确保没有拼写错误,没有拼写到目标数据库之外的服务;
5. 确保正在使用正确的侦听器名称(如果有必要)。