问题标签 [tns]

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.

0 投票
2 回答
4901 浏览

oracle - Java 应用程序的 Oracle TNS 效率低下(许多往返、延迟)的任何解决方案?

我正在查看一个非常慢的 SQL 查询(源自使用 JBoss 5.1 中部署的 Hibernate 的 Java 应用程序)。这个特定的查询返回了大约 10K 条记录,但仍然需要 40 秒或更长时间。

我最终用数据库嗅探了流量(wireshark 有一个用于 TNS 的解析器)并发现了一些意想不到的东西。当数据来自服务器时,每个结果行都在其自己的 TNS 数据包中。此外,在从数据库发送下一个 TNS 数据包之前,客户端(即应用服务器)会确认每个 TNS 数据包。对于 10K 记录,有 10K 往返来获取数据包并确认它。对性能的影响是巨大的。

这是非常低效的。TCP 允许更大的数据包并具有许多机制(滑动窗口、延迟的 ACK)来减少延迟并增加吞吐量。但是,在这种情况下,是顶部的 TNS 协议添加了自己的协商。

如果我从 Oracle 的 SQL Developer 运行相同的查询,我看不到这种模式。查询在大约 1/10 的时间内完成,无需数千次往返。

简短版本:Oracle 的有线协议 (TNS) 似乎在每个查询结果行一个 TNS 数据包中传递数据,并要求客户端在服务器发送下一个数据包之前确认每个数据包。

我在 [这里][1] 找到了一些关于此的信息(向下滚动到“tnsnames.ora 文件中的 SDU 和 TDU 参数”部分)。

因此我的问题是:是否可以控制 Oracle 驱动程序的行为(我使用的是 10.2.0.4.0)以使 TNS 协议更有效?同样,这是部署在 JBoss 中的非常标准的 J2EE 应用程序。

非常感谢!

0 投票
3 回答
11819 浏览

oracle - 不使用 TNS Listener 连接到 Oracle 数据库

只是出于好奇,前几天我们讨论了是否有一种方法可以不使用 TNS Listener 连接到 DB,连接必须由任何程序 SQLPlus 进行。网络、ODBC 等。

0 投票
3 回答
7848 浏览

sql - 如何在wireshark中仅导出可打印文本(或任何其他数据包属性)

长话短说 - 我正在使用 Wireshark 将 SQL 从供应商工具捕获到 Oracle 数据库。它已经有 TNS 协议的解码器(这很棒),我可以通过以下方式访问 SQL 文本

问题是有大量的数据包,并且右键单击每个数据包可能需要很长时间。我想知道是否有任何方法可以直接从 Wireshark 导出“仅可打印文本”。理想情况下,我想要一个带有语句的文本文件。

任何帮助将不胜感激。

0 投票
1 回答
121 浏览

oracle - 当我们尝试将我们的程序与 oracle 连接时,它给出了错误

当我尝试使用此命令将我们的程序与 oracle 连接时

sqlplus crbt/crbt@crbt_new这里 crbt 是用户名, crbt_new 是密码。

它给出了错误

所以请告诉我哪里错了

0 投票
4 回答
11753 浏览

c# - oracle ASP.NET:TNS 问题

我正在尝试使用 ASP.NET/C# 连接到我的数据库 oracle。

这是我的代码:

这是我得到的错误:

这是我的 TNSNAMES.ora:

我在win2k3服务器R2上工作。

Oracle 在同一台服务器上。它是甲骨文 11g。

当我做一个 tnsping 时,我得到了这个:

这是我的 listener.ora:

0 投票
1 回答
291 浏览

oracle - 将 ANT sqlplus 执行从 MacOSX 迁移到 Windows,出现 TNS 错误

我有一个可以运行的 ANT build.xml,它执行 sqlplus 来编译 PL/SQL。我在 MacOSX 上开发。我的同事将开始为同一个应用程序做出贡献。他在 WinXP 上开发。来自 ANT 的 sqlplus exec 在 WinXP 上返回 TNS ORA-12560 错误。相同的 build.xml 适用于 MacOSX。ANT 应该在 WinXP 上构建的运行字符串在 DOS shell 中工作。我们已经在 WinXP 中设置了 TNS_ADMIN 环境变量。我会错过什么?

0 投票
0 回答
931 浏览

wcf - WCF Wsdl - 用我自己的前缀摆脱“tns”xml命名空间前缀?

tns生成my 时,有什么方法可以自己替换所有前缀WSDL

我知道设置命名空间和我的ServiceContract, OperationContract,DataContract等的名称使我没有丑陋的http://tempuri.org/命名空间,但是如何更改前缀

0 投票
2 回答
8129 浏览

oracle11g - tnsping 失败,但可以通过 sqlplus 连接到 Oracle DB

我在 Windows XP 机器上安装了 Oracle Client v. 11.2.0.1 并设置了 TNS_ADMIN 和 ORACLE_HOME 环境变量。

使用 sqlplus 通过 TNS 别名连接到远程数据库可以正常工作:

但是对相同别名的 tnsping 会导致以下错误:

对于类似的问题(即此处的 Stack Overflow 上),tnsping 至少能够从别名中解析连接字符串。在这种情况下并非如此。这使我相信某些环境变量丢失或指向错误的位置。任何建议,将不胜感激。

0 投票
8 回答
17918 浏览

asp.net - 本地 IIS 上的 Oracle ORA-12154 错误,但 Visual Studio 开发服务器上没有

我有一个 ASP.NET 应用程序,当它由 Visual Studio 开发服务器启动时,它可以连接到 Oracle,但是当我将它部署到我的本地 IIS 时,它没有连接,显示“ORA-12154:TNS:无法解析指定的连接标识符”错误。

我的连接字符串是:

Tt 正在使用 TNS。我的 tnsnames.ora 位于 C:\oracle\instantclient_10_2\network\admin,而我的 ORACLE_HOME 系统变量指向 C:\oracle\instantclient_10_2。

为了使它工作,我将连接字符串更改为:

所以不再使用TNS。

但是我想知道为什么我可以在使用 Visual Studio 进行调试时使用 TNS 进行连接,但在使用 IIS 时却不能。

有小费吗?

PS。我可以将 SqlDeveloper 与 TNS 一起使用,显示没有连接错误。

谢谢

0 投票
7 回答
32739 浏览

oracle - Oracle sqlldr 是否可以接受 TNS 条目作为 Oracle 10 和 11 中的实例限定符?

是否可以使用与 Oracle 10/11 捆绑在一起的 sqlldr 使用完全限定的 TNS 条目?

例如,在 SQLPlus 中:

但是使用 sqlldr (SQL Loader) 直接使用 TNS 条目似乎存在问题。具体来说:

这是产生的错误消息:

尝试将 TNS 条目封装在引号中会产生相同的错误。

查看了 sqlldr 文档,并尝试使用 'userid' 命令行参数无济于事。具体来说:

Oracle 希望强制用户访问本地实例以减轻将数据推送到远程主机时的 I/O 是有道理的。但是支持的语法的偏差并不是那么直观。还有其他人遇到类似的问题吗?