安装 Zend 框架后,我在我的 Linux 文件夹层次结构中看到了这些。
/oradiag_root/
/user/myuser/oradiag_myuser/
/user/myuser/oradiag_root/
这个名字让我想起了甲骨文。但是我没有找到任何有关此的官方文档。
我没有安装任何 Oracle 服务器。这里发生了什么?
安装 Zend 框架后,我在我的 Linux 文件夹层次结构中看到了这些。
/oradiag_root/
/user/myuser/oradiag_myuser/
/user/myuser/oradiag_root/
这个名字让我想起了甲骨文。但是我没有找到任何有关此的官方文档。
我没有安装任何 Oracle 服务器。这里发生了什么?
我从来没有在我的系统上安装过 Oracle,也不知道为什么这些目录一直被创建,但我终于设法阻止它们重新出现。这是它是如何完成的。
首先,前往:
cd ~/oradiag_<username>/diag/clients/user_<username>/host_*/trace/
接着
head sqlnet.log
您应该看到一条错误消息,抱怨目录不存在用于 r/w。对我来说,它是/usr/lib/log
。我创建了它抱怨的目录并删除了该oradiag_<username>
目录,但后来它又重新出现了;但是,sqlnet.log 文件现在抱怨不同的目录。
我重复了几次创建目录的过程,直到目录最终停止出现。在您的情况下,目录可能不同,但这是为我解决的问题:
sudo mkdir /usr/lib/log/diag/clients
sudo chmod 777 /usr/lib/log/diag/clients
显然,只有clients
目录需要是 777。
现在只需清除oradiag_<username>
当前出现的目录即可。他们不应该再次为你弹出。
如果你很好奇,下面是最终写入那个“缺失”目录的内容:
mike@mike-ubuntu:/usr/lib/log/diag/clients$ ll -a
total 8
drwxrwxrwx 2 root root 4096 2011-08-24 10:34 .
drwxr-xr-x 3 root root 4096 2011-08-24 10:34 ..
杰出的。
那里有很多建议,但唯一对我有用的是这个。
在 Oracle 11gR1 及更高版本中,您必须首先将其添加到您的 sqlnet.ora 文件中:
DIAG_ADR_ENABLED=OFF
之后,其他日志禁用设置应该可以工作:
TRACE_LEVEL_CLIENT = OFF
TRACE_DIRECTORY_CLIENT=/dev/null
LOG_DIRECTORY_CLIENT = /dev/null
LOG_FILE_CLIENT = /dev/null
LOG_LEVEL_CLIENT = OFF
创建的日志用于 Oracle客户端。当任何程序尝试访问 Oracle 数据库时,可能会显示这些日志。
如果 sqlnet.ora 不可用或未定义参数 ADR_BASE,则这些文件夹由 Oracle 11 SQL*Net 创建(请参阅http://download.oracle.com/docs/cd/B28359_01/network.111/b28317/sqlnet .htm#BIIDEAFI)。
如果您已经安装了 Zend 框架,它似乎会创建这些目录。