问题标签 [tnsnames]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c# - 如何在使用托管 ODP.NET 时从 C# 查询 LDAP 以解析 Oracle TNS 主机名?
继我之前的问题之后,我在 Oracle 论坛的帮助下设法回答了自己,我现在有另一个问题,该问题是上一个问题的后续问题(提供背景)。
我希望直接从我的 C# 代码中查询 LDAP,以执行 Oracle TNS 主机名的 LDAP 查找,以获取连接字符串。这通常存储在tnsnames.ora中,我的组织使用 LDAP(通过ldap.ora)从使用 Active Directory 的 LDAP 服务器解析主机名。
但是,我在我的 C# 应用程序中使用ODP.NET、托管驱动程序 Beta ( Oracle.ManagedDataAccess.dll ),正如我之前提到的Oracle 论坛回复所指向的发行说明中提到的那样,它不支持 LDAP 。这就是为什么我希望直接从 C# 查询 LDAP。
我在这里找到了一种使用DirectoryEntry
and的方法DirectorySearcher
,但我不知道将什么作为参数放入DirectorySearcher
. 我可以访问以下格式的ldap.ora :
# LDAP.ORA 配置
# 由 Oracle 配置工具生成。
DEFAULT_ADMIN_CONTEXT = "dc=xx,dc=mycompany,dc=com"
DIRECTORY_SERVERS = (ldap_server1.mycompany.com:389:636,ldap_server2.mycompany.com:389:636, ...) DIRECTORY_SERVER_TYPE = OID
但是,如何将其映射到在我的 C# 代码中设置 LDAP 查询?
database - oracle 11g r2 安装错误 - ORA-00119: 系统参数 LOCAL_LISTENER 的指定无效
在我的 64 位机器上安装 Oracle 11g R2 数据库服务器后,我不断收到此错误
启动失败:ORA-00119:系统参数 LOCAL_LISTENER 的指定无效
ORA-00132: 语法错误或未解析的网络名称“LISTENER_ORLL”,请帮助。
我什至无法修改 spfile,因为我无法连接到实例;数据库尚未启动,因此无法从 spfile 创建 pfile。
tnsnames.ora 条目
listener.ora 条目
oracle - 如何在同一台机器上并排安装 ODP.NET 2.111 和 ODP.NET 4.112,同时都指向同一个数据库服务器
问题是如何在同一台机器上并排安装 ODP.NET 2.111 和 ODP.NET 4.112,同时使用 tnsnames.ora 指向同一个数据库服务器
我需要支持基于 Oracle 11.1.0 的遗留系统。系统使用 ODP.NET 2.111 连接到 oracle。有两个客户端安装在:
C:\oracle\product\11.1.0\client_1
C:\oracle\product\11.1.0\client_2
两者的 tnsnames.ora 是这样的:
系统使用上述设置启动并运行。我需要开发一个基于 EntityFramework 的新系统,这需要我使用更新版本的 Oracle.DataAccess.Dll (4.112)。
我想知道如何在不损害旧系统功能的情况下安装新客户端,以便两者可以并行工作:
注意:我确实尝试在以前的客户端上安装新的 ODP.NET,并且能够使用以下连接字符串连接到数据库:
DATA SOURCE=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=zzzzz1)(PORT=zzzzz2)))(CONNECT_DATA=(SERVICE_NAME=zzz3_SERVICE)));用户ID=\"zzzz4\";密码=\"zzzz5\";
那是不可取的,因为 1- 它破坏了旧系统,因为由于 ODP.NET 中的升级,它不再可以连接到 Oracle 2- 连接字符串看起来很奇怪
我将不胜感激任何帮助,
谢谢,艾丁
c# - Oracle TNS 协议适配器错误
我有一个远程 Oracle 11G 服务器,可以通过 SQL Plus 和 Visual Studio 的服务器资源管理器连接到该服务器。但是,当我在 C# 代码中使用相同的连接字符串时,我得到 ORA-12560: TNS:protocol adapter error。
我的连接字符串看起来像这样(已经在尝试完成的扩展版本):
我最初尝试使用主机名而不是 IP 进行连接的结果是:
使用IP,地址我得到协议适配器错误
我正在使用 11g 客户端安装目录中的 Oracle.DataAccess 版本 2.112.1.0。
服务器资源管理器的连接方式与代码内部的连接方式有什么不同吗?
c# - 尝试在 C# 中不使用 tnsname 进行连接时出现 TNS 监听器错误
我正在尝试连接到 Oracle DB 而不必使用 TNS 名称,但它一直给出此错误:{“ORA-12504: TNS:listener is not given the SERVICE_NAME in CONNECT_DATA”}
这是“TNS 名称”文件中的内容:
perl - DBI 上的 ORA-12154 错误->在 Solaris 10 中使用 Oracle Instant Client 连接到 Oracle 数据库
我已经为这个问题拉了两天的头发:
我正在尝试获取一个 perl 脚本来与 Oracle 数据库交互。我有一个新服务器,我想在上面部署我的应用程序。该脚本以前有效。
这是我到目前为止所做的:
将我的 tnsnames.ora 文件放在 Instantclient/network/admin 中:
我的 Perl 脚本如下所示:
此脚本产生以下输出:
我的 tnsnames.ora 文件包含以下条目:
这个 tnsnames.ora 文件是从一台正常工作的机器上复制的,所以我相信它可以工作。
奇怪的是,我可以在不使用 tnsnames.ora 文件的情况下连接到代码,但是当我尝试使用它时,它会中断。
有什么建议么?
php - 如何在 Linux 中为 PHP 设置环境变量?
我正在使用 Oracle 数据库实现 MediaWiki,因此我需要将 TNS_ADMIN 变量添加到我的 PHP 启动环境中。
Q1: 如何将 TNS_ADMIN 变量添加到 PHP 启动环境?
Q2:是否有特定的文件需要编辑以添加环境变量?如果是这样,我在哪里可以在 Linux 上找到它?
oracle - 使用 Oracle Instant Client 时出现 ORA-12154 错误
我在尝试使用 Windows 7 32 位上的 Oracle Instant 客户端设置在 ODBC DSN 上进行测试连接时遇到此错误。我让它在另一台装有 Vista 32 位的机器上工作。
信息:
1. 目录结构为:c:\oracle\instantclient_11_2。Instantclient_11_2 目录中的基本客户端和即时客户端文件,就像在工作机器上一样。
2. 系统路径中的 c:\oracle 和 c:\oracle\instantclient_11_2
3. 将 TNS_ADMIN 添加到系统路径并指向 c:\oracle
4. tnsnames.ora 从工作机器复制到 c:\oracle
5。 sqlnet.ora 位于 c:\oracle 中。工作副本只有“TCP.CONNECT_TIMEOUT=5”作为条目,但我尝试添加: NAMES.DIRECTORY_PATH= (LDAP, TNSNAMES, HOSTNAME) 当它不工作时
6. 我可以远程登录到 oracle 服务器和 1521 端口(在 tnsnames.ora 中定义)。
还有什么要检查的吗?
oracle - Oracle TNS-12505 错误
我正在使用 Oracle,我必须做的是将现有数据库导出到新安装。
我已经安装了新的 oracle 客户端 8.1(以前是 8.0),我已经成功导入了数据库的所有实例,(用户,角色,一切)。
基本上它是服务器,它从其他单个客户端共享数据。我现在面临的一个问题是,任何 XYZ 客户端都无法更改其登录凭据。我收到两种不同类型的错误。下面我会提到:
- TNS-12505: TNS:listener 无法解析连接描述符中给出的 SID
- TNS-12500:TNS:侦听器无法启动专用服务器进程 TNS-12560:TNS:协议适配器错误 TNS-00530:协议适配器错误
通过谷歌搜索指定的错误,我几乎尝试了所有选项。
我在服务器安装和测试时配置了 TNSNAMES.ora 和 LISTENER.ora,它们运行良好。
但问题是当我使用“Net8 Assitant”配置 TNSNAMES 后通过客户端连接时,它显示以下错误。
我将尝试附加配置文件数据: TNSNAMES.ora @ Server
LISTENER.ora @ 服务器
最后是 TNSNAMES.ora @Client
从上面的设置中,我在客户端得到以下错误:
TNS-12505: TNS:listener 无法解析连接描述符中给出的 SID
请提出任何解决方案,我将非常感激。
c# - 为什么 Oracle.ManagedDataAccess 不工作而 Oracle.DataAccess 工作?
我正在开发一个非常简单的应用程序,我打算用它来解决我在几台机器上遇到的问题,但在我还没走到那一步之前,我遇到了一些问题,包括 cpu 架构差异和 Oracle 数据库库。
我在目录中列出了一个数据库tnsnames.ora
服务器C:\oracle\11g\network\admin
。如果我 tnsping 此服务器,我会得到所需的响应。如果我使用 Oracle.DataAccess.Client 编写我的 C# 程序以使用以下代码连接到该服务器,它就可以工作。
但是 Oracle.DataAccess 依赖于它运行的系统的体系结构。我看到还有另一个库 Oracle.ManagedDataAccess 是架构独立的。当我使用这个库时,它不再能够连接到服务器。一个ORA-12545: Network Transport: Unable to resolve connect hostname
被抛出。
为什么会这样?这两个库之间有什么不同,因为根据我迄今为止阅读的内容,这应该不是问题。
额外的信息:
- %ORACLE_HOME% 和 %TNS_ADMIN% 未定义(请记住 tnsping 和 Oracle.DataAccess 有效)
- PATH 已
C:\oracle\11g\BIN
定义。 - 我的机器只有一个
tnsnames.ora
文件
如果我将 tnsnames.ora 移动到与我的 .exe 文件相同的位置,它就可以工作。为什么Oracle.DataAccess 可以在C:\oracle\11g\network\admin
目录中找到tnsnames.ora 而Oracle.ManagedAccess 找不到?