使用标准的Delphi dbexpress dbexpora.dll + oci.dll(10g) (已安装oracle instantclient)。
直接在Oracle数据库框中我们可以运行 dbexpress应用程序就好了。本地使用的dbxconnections.ini别名 case只是将我们的DB服务名称ORCL指定为“数据库”参数。
我们正在尝试连接到同一个数据库 客户端机器并收到一系列错误。
当然,我们正在尝试各种各样的字符串 数据库参数。使用字符串,如MOHAWK2:1521:ORCL 我们至少可以得到一个监听器错误:
无法连接:ORA-12514 TNS:目前没有侦听器 知道连接描述中要求的服务。
我想有一些工具可以测试命名的可用性......
答案 0 :(得分:2)
在服务器上使用TNSPING查看它是如何解析服务名称的。各种配置选项和文件可以将简单指定映射到完整服务器/端口/服务。
C:> TNSPING ORCL
使用TNSNAMES适配器来解析别名 试图联系(DESCRIPTION =(ADDRESS =(PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1521))(CONNECT_DATA =(SERVER = DEDICATED)(SERVICE_NAME = XE))) 好的(0毫秒)
提取服务器/端口/服务,并以您使用所需的组件或连接方法的任何格式构造连接字符串。
答案 1 :(得分:1)
监听器是否在oracle服务器上设置并运行?它是否接受您要连接的数据库的实例/服务的连接?你检查过lsnrctl状态了吗?您是否尝试启用sqlnet日志记录和侦听器日志记录,以查看您是否从远程站点建立了与数据库的连接,以及在列表器日志中记录了拒绝服务的原因?侦听器是接受tcp连接还是只接受IPC连接的侦听器?没有监听tcp连接,它将不接受远程连接。
答案 2 :(得分:1)
首先使用tnsping检查连接。如果确定,请尝试使用sqlplus连接。如果tnsping失败,则表示您使用的服务名称不正确,或者您尚未正确配置客户端。 如果您依赖本地配置,则要编辑的文件是ORAHOME \ NETWORK \ ADMIN中的tnsnames.ora,这将需要配置设置才能找到服务器,这包括主机,端口和服务名称。
答案 3 :(得分:1)
抱歉,关于CAPS,这对我来说都是新手。我没有任何声誉,我现在已经降低了这个问题标题是封顶。我不知道如何评论你们所有回答的人........ casue它不会让我.....我没有足够的声誉。我想我需要进入另一个论坛......
无论如何,
解决!
我设置了一个新的vmware克隆 - 安装了oracle客户端 和dir中我们的几个dll和exes一起工作。
所以我删除了盒子上无关的一切 和宾果一起工作。
我认为这是来自delphi 2007的干扰 已经在那台机器上...尽管试图 路径一切都在它周围。