1

首先让我说我的 Oracle 知识很少。

我们有一个将数据存储到 Oracle 9.2 数据库中的专有应用程序,效果很好。我只使用这个软件,因此每 3 个月左右使用一次 Oracle。问题是,似乎由于不活动,我必须使用以下命令启动数据库/实例:

conn sys as sysdba
<enter password>
startup

如果我只离开使用服务器几个星期,我不必这样做。我只是好奇这笔交易是什么?这并不是什么大不了的事,但它是我可以修复的,还是我什至想要修复它?也许这是一个安全的事情?如果是这样的话,这个不活动设置在哪里?

我最感兴趣的是理解,所以信息越多越好。谢谢!

4

1 回答 1

5

Oracle 不会因为不活动而自行关闭。您确定机器没有重新启动,并且您没有在重新启动时启动 Oracle 的操作系统吗?

您可以查看 Oracle 警报日志以获取有关数据库关闭原因和时间的详细信息。在 9i 中,我相信默认设置是:

/u01/app/oracle/admin/<sid>/bdump/alert_<sid>.log

当您在日志中看到 Oracle 关闭时,您可以记下时间,然后查看系统日志(Linux:/var/log/messages),看看它是否对应于系统关闭。

希望这可以帮助您追踪问题。

根据反馈编辑:

有趣的是,您说服务器自 2007 年以来已重新启动,并且 Oracle 服务器关闭的警报日志中没有任何内容。这向我表明您正在查看错误/旧的日志文件,或者 Oracle 没有在操作系统关闭时干净地关闭。

几个问题:

  • 你确定启动机器时Oracle数据库是打开的吗?

    • 如果您登录到 sqlplus '/ as sysdba',如果数据库未打开,您将获得“已连接到空闲实例” 。
  • 打开数据库时是否看到 db 文件恢复?
于 2010-05-26T17:50:49.217 回答