ORA-01114: IO error writing block to file 204 (block # 501829)


今天在做数据库移植脚本的测试,可由于数据量比较大,有很多大数据量事务(需要排序),所以temp表空间
狂吃磁盘,吃到30G,最终把我的的磁盘都吃掉,提示下面的错误

ORA-01114: IO error writing block to file 204 (block # 501829)

这个是我的磁盘空间不够了,现在想办法增加磁盘空间,我把一些暂时不用的的东西移到 其他分区了,这样 大概
腾出1.6G的空间,当时我想,我的数据文件不是很大,也可以装下了,于是我又运行移植脚本,问题依旧,还是磁盘
空间不够,磁盘空间不够,什么都无法操作,所以我把/var这个目录移到/home下,这样可以腾出点空间,用户登录的时候
没有提示信息了,

只是:
no mail

[oracle@db yw_sh]$

这是什么问题呢?

重启数据库

数据库可以正常启动,但用户无法登陆,提示的错误表明网络不通,原来监听没起来,我于是手动启动监听服务,

[oracle@db yw_sh]$ lsnrctl start

 

TNSLSNR for Linux: Version 10.2.0.3.0 - Production on 02-JAN-2008 17:59:32

Copyright (c) 1991, 2006, Oracle.  All rights reserved.

System parameter file is /home/oracle/product/10.2.0.3/db_1/network/admin/listen
er.ora
Log messages written to /home/oracle/product/10.2.0.3/db_1/network/log/listener.
log
Trace information written to /home/oracle/product/10.2.0.3/db_1/network/trace/li
stener.trc
Trace level is currently 0

Started with pid=3850
Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=db.movo.tv)(PORT=1521)))
Error listening on: (ADDRESS=(PROTOCOL=ipc)(PARTIAL=yes)(QUEUESIZE=1))
No longer listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=db.movo.tv)(PO
RT=1521)))
TNS-12557: TNS:protocol adapter not loadable
 TNS-12560: TNS:protocol adapter error
  TNS-00527: Protocol Adapter not loadable

  [oracle@db yw_sh]$ lsnrctl stop

一样的提示,什么原因呢? 怎么起不来呢?
google一下,有的人说没有/tmp空间的读写权限,可/tmp是777啊,
还有人说:原来/home/oracle/product/9.2.0.1.0/network/log/listener.log 文件超过2G,监听就会断掉(
可我的这个文件才几百兆啊),于是执行下面的命令,清空日志文件

[oracle@localhost log]$ cat /dev/null > listener.log


网上找了一会,发现有个命令可以对这个写日志进行关闭的

LSNRCTL> set log_status off

要继续写日志,只需要

LSNRCTL> set log_status on

也可以在 listener.ora 文件里面添加一项

LOGGING_LISTENER = OFF

添加了这个之后无论你怎么重启监听,都不会写日志了。


 
突然想到,可能那个/var目录
有关,我于是把var目录在copy回去,可有些目录考不会去,开发那边的哥们还在催,他们正等着呢
这是什么原因的,由于我是mv移动的,所以没有源文件了,我于是又在其他机器上copy个var目录,
这回我把原来的var改名,然后再把那个copy 移到根目录,别说好了,监听可以起来了,所以看来var
这个目录的作用还是很大的啊,后来google一下,/var 包括系统一般运行时要改变的数据.每个系统是特定的 

你可能感兴趣的:(oracle,数据库,IO,File,Google,磁盘)