Home  >  Article  >  Database  >  /tmp分区满,把oracle rac弄死了

/tmp分区满,把oracle rac弄死了

WBOY
WBOYOriginal
2016-06-07 17:40:54886browse

刚从山东回来,一堆麻烦事情。这不,快要下班了,客户说oraclerac挂了。这是有两个节点和一个共享存储组成的rac系统,安装了oracle11gr2.我试着登录系统查看,发

 刚从山东回来,一堆麻烦事情。这不,快要下班了,客户说oracle rac挂了。

 

这是有两个节点和一个共享存储组成的rac系统,安装了oracle 11g r2.我试着登录系统查看,发现一个服务器不能联通。另一个上去了,执行df -h ,发现一个分区 /tmp被塞满了。再进子目录查看,发现一堆0926.dmp这样的文件,每个文件大小都在600M左右。看来是程序员在执行exp备份操作,一问,服务器空间,果然如此。

 

再从rac的私有网络,试着登录另一个节点,居然进去了。这说明心跳检查是正常的。

 

在跟其他人沟通后,我采取如下步骤:

1、清理/tmp空间,香港空间,手动删除陈旧的文件,释放出至少50%的空间。

2、关闭所有oracle实例 srvctl stop instance -d  sery_db -i sery1 , srvctl stop instance -d  sery_db -i sery2.

3、查看不能从外面访问的那个服务器的网络状态,香港服务器租用,检查方法为:

(1)ip add 检查地址是否存在

(2)mii-tool 检查网线是否正常

(3)service network start 重启网络.嘿嘿,居然正常了。

4、检查asm文件系统,步骤为:

(1)ps aux | grep asm检查进程

(2) su - grid ; asmcmd 进去查看日志文件、数据文件是否存在。还好它们都在呢。

5、启动实例,然后用sqlplus登录检查数据文件等。

 

主要原因:oracle会根据需要往/tmp分区写入数据(比如排序等中间过程),如果文件系统满了,则写入失败,可能导致会话挂起。

本文出自 “sery” 博客,请务必保留此出处

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn