ITPub博客

首页 > 数据库 > Oracle > ORA-01122 ORA-01110 ORA-01200

ORA-01122 ORA-01110 ORA-01200

原创 Oracle 作者:xz43 时间:2014-04-23 17:49:24 0 删除 编辑
数据库突然不能访问,发现磁盘空间满了,如是释放部分空间后启动数据库,报错:

SQL> startup
ORACLE instance started.
Total System Global Area 2483027968 bytes
Fixed Size                  2098304 bytes
Variable Size             788532096 bytes
Database Buffers         1677721600 bytes
Redo Buffers               14675968 bytes
Database mounted.
ORA-01122: database file 3 failed verification check
ORA-01110: data file 3: '/usr/app/oracle/oradata/orcl/sysaux01.dbf'
ORA-01200: actual file size of 44799 is smaller than correct size of 44800 blocks

说是该数据文件的实际大小与控制文件中的文件大小不一致。

由于没有备份,又是系统表空间的数据文件,不能直接去offline drop,只能采用 bbed 修复或者 dd 添加空文件的方式。简单起见,备份该文件,采取dd方式

[oracle@devoraclesrv javadb]$ dd if=/dev/zero of=/usr/app/oracle/oradata/orcl/sysaux01.dbf bs=8k seek=44800 count=1
1+0 records in
1+0 records out
8192 bytes (8.2 kB) copied, 0.000177 seconds, 46.3 MB/s

由于这里记录的数据文件大小和实际大小相差1块(44800-44799=1),所以这里只添加一块空文件。相差多少,count后面的参数就写多少,当然,得确定系统的块大小是8k。

执行完成后,再次启动数据库成功。


来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/9399028/viewspace-1148050/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论
鱼儿的学习空间

注册时间:2010-11-16

  • 博文量
    433
  • 访问量
    1863781