Oracle Developer's guide 10g 未连接到服务器
Posted
技术标签:
【中文标题】Oracle Developer\'s guide 10g 未连接到服务器【英文标题】:Oracle Developers guide 10g is not connecting to severOracle Developer's guide 10g 未连接到服务器 【发布时间】:2017-08-07 11:30:12 【问题描述】:我在windows 10中安装了oracle开发者指南10g,安装成功。
连接到 Oracle EBS 主机数据库时出现错误
在连接屏幕上输入详细信息 -
用户 - 我的用户
通过 - 我的通行证
连接字符串 - myuser@SID
错误 -
ORA-12154: TNS: 无法解析指定的连接标识符
原因
指定的服务名称在 TNSNAMES.ORA 文件。 我在我的数据库主机上检查了我的 TNSNAMES.ORA 文件
我找到条目 TNSNAMES.ORA -
SID =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = myhost)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = SID)
)
)
我需要在设置文件中进行哪些更改才能正确连接。
注意 - 主机操作系统 Linux
注意-
tnsnames.ora 和 sqlnet.ora 文件存在于两个地方
1- C:\DevSuiteHome_1\NETWORK\ADMIN - 安装 oracle developer guide 10g 后创建的路径
2- E:\app\product\11.2.0\dbhome_1\NETWORK\ADMIN - 以前的oracle安装路径
这个文件位置有什么问题吗?
【问题讨论】:
您是否尝试连接 SQLPlus? 是的,它连接正确。tnsnames.ora
必须在 client 机器上,即在您的 Windows PC 上。我不确定“oracle 开发人员指南”是什么意思,但该文件需要位于客户端应用程序所期望的位置。
我觉得这个问题会更适合Database Administrators Site
@AlexPooleOracle 开发者指南正在设计用于 oracle 的工具
【参考方案1】:
我对这个问题有点困惑,但我会尽我所能回答:
你有2个tnsnames.ora,一个在db server,一个在client,你需要在client机器(安装sql developer的地方)查看tnsnames.ora,检查SERVICE_NAME 指向 Oracle Server 的正确 SSID,然后检查 HOST 是否指向正确的机器名/IP(我个人更喜欢使用 IP)。
然后在命令提示符下,尝试 tnsping(假设你有一个):
使用您发布的 tnsnames.ora,它将类似于:
C:\>tnsping.exe SID
告诉我进展如何
更新:
下面是一个例子:
Oracle Server IP: 192.168.1.220 with SID: ORCL
My Computer IP: 192.168.1.200
我的电脑中 tnsnames.ora 的内容:
块引用
BLAHSERVER= (描述= (地址列表 = (地址 = (协议 = TCP)(主机 = 192.168.1.220)(端口 = 1521)) ) (连接数据 = (SERVICE_NAME = ORCL) ) )
那么你应该能够做到以下几点:
C:\> tnsping.exe BLAHSERVER
C:\> sqlplus username/password@BLAHSERVER
【讨论】:
在我的机器和其他主机上进行 tnsping 后,我得到以下结果 - C:\Users\mymachine>tnsping mymachine 使用的参数文件:C:\DevSuiteHome_1\network\admin\sqlnet.ora联系人 (DESCRIPTION=(CONNECT_DATA=(SERVICE_NAME=my_machine_name))(ADDRESS=(PROTOCOL=TCP)(HOST=my_ip)(PORT=1521))) OK (20 ms) C:\Users\mymachine>tnsping IP.32.88 已使用参数文件:C:\DevSuiteHome_1\network\admin\sqlnet.ora 尝试联系 (DESCRIPTION=(CONNECT_DATA=(SERVICE_NAME=192.168.32.88))(ADDRESS=(PROTOCOL=TCP)(HOST=IP.32.88)(PORT= 1521)))好的(70毫秒) 听起来不错,如果你的sqlplus用户名@IP.32.88也可以,那么sql developer应该没问题,除非sql developer没有正确加载tnsnames.ora 执行命令后 - C:\Users\afgan>sqlplus APPS@IP.32.88 Enter password: ERROR: ORA-12514: TNS:listener does not now know of service requested in connect 之后会询问user_Name ,输入用户名后得到以下 Enter user-name: APPS Enter password: ERROR: ORA-12560: TNS:protocol adapter error【参考方案2】:EBS 管理员/联系人应提供正确的 TNS 条目,您应将其添加到您的 tnsnames.ora
。如果您正在尝试为 EBS 开发,我怀疑您是否需要连接到“mymachine”,这将是 EBS 实例的非标准名称。
【讨论】:
以上是关于Oracle Developer's guide 10g 未连接到服务器的主要内容,如果未能解决你的问题,请参考以下文章
从 Oracle 的 RAW(16) 转换为 .NET 的 GUID
mysql 生成UUID() 即 ORACLE 中的guid()函数