详细信息:
- 用户名是scott
- 密码是老虎
- 服务器名称-我给了prashanth PC,我在tnsnames.ora中找到了它-此时我得到了
ORA-12154:TNS:无法解析指定的连接标识符
当我使用代码连接时,它正在工作。在代码中,我将把数据源留空。但是当我使用网格视图工具进行连接时。它正在询问服务器名称。我不知道应该指定哪个服务器名称。为了参考,我发布了我的"tnsnames.ora"文件的内容。请检查一下。我使用的是Oracle 10g。
XE =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = prashanth-PC)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = XE)
)
)
EXTPROC_CONNECTION_DATA =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))
)
(CONNECT_DATA =
(SID = PLSExtProc)
(PRESENTATION = RO)
)
)
ORACLR_CONNECTION_DATA =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))
)
(CONNECT_DATA =
(SID = CLRExtProc)
(PRESENTATION = RO)
)
)
我假设您正在使用"用于oracle的.Net Framework数据提供程序"作为您的提供程序
在这种情况下,服务器名称应该包含tnsnames.ora中的"别名"——在您的情况下是"XE"
您收到的错误可能是因为找不到tnsnames.ora文件
确保将"TNS_ADMIN"环境变量设置为指向包含tnsnames.ora文件的目录的路径。
服务器名称需要Oracle服务名称,而不是机器主机名称。尝试在服务器名称处输入XE。如果失败:
- 检查是否有多个
tnsnames.ora
文件 - 如果是,请确保所有
tnsnames.ora
文件同步或找出哪个tnsnames.ora正在使用中-这可以通过检查您的路径变量&找出哪条路径首次提到tnsnames.ora - 还要确保tns侦听器服务已启动&从Windows服务列表运行
我刚才遇到了这个问题。我试图做的是与开发人员共享TNS文件文件夹,该文件夹位于oracle客户端安装位置的"Admin"文件夹下,以确保服务器上TNSentries的健全性。
我注意到,当我在"Admin"文件夹上应用共享时,(LocalHostName)\Authenticated Users"已从"Admin" 一旦我将"Authenticated Users"添加回具有默认权限的文件夹的安全上下文,错误就消失了。 操作系统版本:Win 2012 DC版 Oracle客户端客户端:Oracle客户端11.2.0