Mac OSX Snow Leopard 上的 Oracle Sqlplus 问题
Posted
技术标签:
【中文标题】Mac OSX Snow Leopard 上的 Oracle Sqlplus 问题【英文标题】:Oracle Sqlplus Problem on Mac OSX Snow Leopard 【发布时间】:2009-09-17 23:41:05 【问题描述】:我刚刚安装了带有 SQLPlus 扩展的适用于 Mac OSX 的 Oracle Instant Client,但遇到了以下问题。我可以连接到数据库实例和架构,并且可以进行查询,但是当我尝试“描述命令”时,它只是挂起。例如:
SQL> SELECT COUNT(*) FROM APPROVABLETAB;
COUNT(*)
----------
8
SQL> desc APPROVABLETAB;
// hangs indefinitely
有人有什么想法吗?
【问题讨论】:
是的,停止使用 Sql Plus! ;) 有史以来最糟糕的开发工具。 谁说 OP 将其用作开发工具?他不应该对为什么会发生这种情况感兴趣,而不是跑到可能出现相同问题的其他事情上吗?这似乎真的不是 SQL*Plus 问题。 所以,后来证明完全没有问题。有人可以关闭这个吗? 【参考方案1】:现在,describe 命令正在运行。我在工作中使用 WIFI 和 *** 连接时遇到了一些网络连接问题。现在我正在使用有线连接并且它正在工作。奇怪的是,前几天它对描述命令失败但对查询起作用。不管怎样,我要继续前进。
【讨论】:
【参考方案2】:也许您使用的 oracle 客户端与服务器不匹配?其他客户端是否正确执行了 desc 命令?
【讨论】:
是的,describe 命令在我的 Windows 机器上运行良好并连接到同一个数据库实例。它只在我的 Mac 上失败。对于 Mac,我使用的是 sqlplus 版本 10.2.0.4.0,对于 Windows,我使用的是 11.1.0.6.0。我在 Oracle 的网站上找不到适用于 Mac 的更新版本的 sqlplus。 数据库服务器是哪个版本的?客户端应该总是“更新”的。【参考方案3】:sys 架构中是否存在无效对象?试试:
SELECT owner, object_name, object_type, status
FROM dba_objects
WHERE status <> 'VALID';
如果报告属于 SYS 的无效对象,您可能需要重建目录。
另外,您的数据库也在 Snow Leopard 上,还是在其他地方?您是否可以连接到另一个数据库并尝试使用描述命令?
此命令产生的输出与 describe 命令大致相同,它有效吗?
SELECT column_name, data_type, data_length, nullable
FROM user_tab_cols
WHERE table_name = 'APPROVABLETAB'
ORDER BY column_id;
【讨论】:
以上是关于Mac OSX Snow Leopard 上的 Oracle Sqlplus 问题的主要内容,如果未能解决你的问题,请参考以下文章
在 Mac OSX Snow Leopard 上托管 Web 服务
如何在 Mac OSX 10.6.4 Snow leopard 中使用 iOS 5 安装 xcode 4.2
如何删除或停用 Snow Leopard 上的默认 apache2 服务器?
C 程序在 Mac OS X Snow Leopard 上执行磁盘 I/O 时卡在不间断等待