【问题标题】:How to reliably check if Oracle is running on a remote host?如何可靠地检查 Oracle 是否在远程主机上运行?
【发布时间】:2015-04-27 12:20:18
【问题描述】:

我们可以检查远程端口(通常是 1521)是否打开,但不幸的是 Oracle 在启动过程中打开了这个端口,所以我们不能依赖它。 还有其他想法吗?谢谢! (一些背景信息:我正在从 bash 脚本检查远程 oracle 主机)

更新:似乎只有使用 oracle 客户端软件才有可能

【问题讨论】:

  • 你考虑过tnsping吗?
  • tnsping 测试监听器和连接。一个问题:如果您的 DBA 正在对阻止登录的 DB 执行某些操作,则 tnsping 仍然可以正常返回。
  • 是的,oracle irc 频道上的一些人告诉我,我唯一的工具就是 oracle 客户端的东西,谢谢
  • 也许你应该把这个问题发到serverfault.com
  • 你可以 sql*plus 到服务器并运行像select * from dual 这样简单的东西,但当然这需要用户+密码才能检查。

标签: linux oracle


【解决方案1】:

好的,因为我们同意不将来自 Oracle 的客户端内容包含到我们正在执行此检查的上下文中,所以我实现了一个最小的 Java 应用程序,如果 Oracle 数据库启动并运行,则返回 0,否则返回 1。 可以从脚本中重复调用此应用程序,直到它返回 0。 在后台,我们使用 JDBC 驱动程序连接到 Oracle DB 并检查 V_$INSTANCE / STATUS 表。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-06-08
    • 2011-06-02
    • 2020-06-15
    • 1970-01-01
    • 1970-01-01
    • 2016-07-29
    • 1970-01-01
    相关资源
    最近更新 更多