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

发布于 2024-10-16 00:15:02 字数 250 浏览 7 评论 0原文

我有一个有效的 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环境变量。我可能会错过什么?

I have a working ANT build.xml that executes sqlplus to compile PL/SQL. I develop on MacOSX. My coworker is going to start contributing to the same application. He develops on WinXP. The sqlplus exec from ANT returns a TNS ORA-12560 error on WinXP. The identical build.xml works on MacOSX. The run string that ANT should be constructing on WinXP works in the DOS shell. We have set up the TNS_ADMIN environment variable in WinXP. What could I be missing?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

韵柒 2024-10-23 00:15:02

从您的描述中我不确定您是否正在使用 ANT SQL 任务 (http:// /ant.apache.org/manual/Tasks/sql.html)或者如果您使用 exec 任务调用 Sqlplus。你能澄清一下吗?

如果您将 sqlplus 作为外部命令调用,您将受到两个主要问题的影响:
a) 环境变量
b) tnsnames.ora 文件

Windows 和 unix 在处理指定连接位置的方式上有所不同。在 OSX 中,您将设置 ORACLE_HOME 和 ORACLE_SID 环境变量。在 Windows 中,这将位于注册表中。您还可以设置 TNS_ADMIN,它决定了 tnsnames.ora 文件的位置。

首先要检查的是你们是否都使用相同的 tnsnames.ora 文件。

如果是,请双方尝试运行 tnsping 来验证别名是否配置正确。

将这些测试的结果返回给我们。

I'm not sure from your description whether you're using the ANT SQL Task (http://ant.apache.org/manual/Tasks/sql.html) or if your using the exec task to call Sqlplus. Can you please clarify?

If you're calling sqlplus as an external command, you will be at the mercy of two main things:
a) environment variables
b) tnsnames.ora file

Windows and unix are different in how they handle specifying where you want to connect. In OSX you'll have the ORACLE_HOME and ORACLE_SID environment variables set. In Windows this would be in the registry. You may also have TNS_ADMIN set which determines where your tnsnames.ora file will be found.

First thing to check would be if you are both using the same tnsnames.ora file.

If you are, have both of you try to run tnsping to verify that the alias is configured properly.

Get back to us with the results of those tests.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文