- 由于备份失败,用于事务日志的磁盘似乎已满。
- 数据库不接受连接,所以我无法手动运行(HP Data Protector)备份作业。
- Oracle 实例直接从 SAN 安装磁盘,因此 Windows 看不到任何文件系统。
但是数据库服务正在运行。有没有简单的方法来恢复数据库,也许可以重新运行备份作业并恢复服务?
假设没有 Oracle 知识转换;-)
来自警报_我的数据库.log文件, (<orahome>\admin\mydatabase\bdump\
),
ORA-15041: diskgroup space exhausted
...
ARCH: Archival stopped, error occurred. Will continue retrying
...
答案1
ORA-15041: 磁盘组空间耗尽
似乎您正在使用 ASM 来存储您的存档日志/备份,并且您可能已经填满了它(可能是因为旧备份没有被清除)
正如 cagcowboy 告诉你的那样,你的数据库是大概悬挂因为它无法存档和切换其当前日志文件,但似乎不需要恢复/还原或执行其他操作。一旦您能够释放一些空间,实例将继续其活动。
正如已经建议的那样,我应该尝试联系 Oracle 支持以获得适当的建议。
问候。
答案2
一些随机想法:
假设您有 Oracle 支持合同,我会让他们参与进来。不一定是因为这是一个不寻常或特别困难的问题;而是因为您对 Oracle 不熟悉。一旦出错,您的数据库就可能被搞砸。
您为什么认为恢复是必要的?当磁盘已满时,对数据库的写入将被“冻结”(如您所见),但不应有数据丢失/损坏。
您有数据库系统密码吗?
这是一个实时/生产系统吗?
还有其他方法可以访问 SAN 文件系统吗?
回答这些问题,然后我们就可以从那里开始。
答案3
以下是更多随机想法:
1)dba 在哪里?
2) 由于数据库卷在 Windows 中不可查看,我假设数据库正在使用原始分区或 ASM。您知道哪一个吗?如果不是 asm 或 raw,那么底层数据磁盘是什么文件系统?
3)当您备份数据库时,如何处理存档日志的删除/存档?
4) 如果不使用 raw/asm 并使用文件系统,则查看存档日志的 san 卷是否可以扩展/增大大小以允许存档继续进行。然后立即进行备份并删除/存档较旧的存档日志。
5)您还可以尝试为存档日志创建一个新的卷,进入数据库并将数据库更改为存档到新的存档日志目的地。
就您的存档日志而言,数据库似乎已停止等待空间,但尚未崩溃。如果您腾出空间,它将继续运行。最好的办法是让 dba 和 san 管理员一起确定可以做些什么来腾出空间。如果您遇到困难,请致电 oracle 支持寻求帮助。