oracle ORA-01200&ORA-01110&ORA-01122

简介:     由于自己本地使用的virtual-box虚拟机,在虚拟机上安装Oracle,物理机偶尔会因为内存问题无响应,就强制断电重启,没想到虚拟机非常规关机导致oracle ORA-01200&ORA-01110&ORA-01122     启动数据库时报错: [o...
    由于自己本地使用的virtual-box虚拟机,在虚拟机上安装Oracle,物理机偶尔会因为内存问题无响应,就强制断电重启,没想到虚拟机非常规关机导致oracle ORA-01200&ORA-01110&ORA-01122
    启动数据库时报错:
[oracle@oratest ~]$ sqlplus / as sysdba
SQL*Plus: Release 11.2.0.4.0 Production on Thu Apr 6 11:32:03 2017
Copyright (c) 1982, 2013, Oracle.  All rights reserved.
Connected to an idle instance.
SQL> startup
ORACLE instance started.
Total System Global Area  839282688 bytes
Fixed Size    2257880 bytes
Variable Size  545262632 bytes
Database Buffers  289406976 bytes
Redo Buffers    2355200 bytes
Database mounted.
ORA-01122: database file 2 failed verification check
ORA-01110: data file 2: '/oradata/oracle/oradata/oradb/sysaux01.dbf'
ORA-01200: actual file size of 62720 is smaller than correct size of 66560 blocks
报错提示数据库记录 /oradata/oracle/oradata/oradb/sysaux01.dbf的大小是66560而实际大小是62720,此种报错有个简单的解决方法,就是通过dd修改报错相关的数据文件,改成数据库期望的大小,瞒过oracle:
SQL> select 66560 - 62720 from dual;
66560-62720
-----------
       3840
SQL> !dd if=/dev/zero of=/oradata/oracle/oradata/oradb/sysaux01.dbf bs=8192 count=3840 seek=62721 --bs是数据库块大小,count是差值,seek是从哪开始填充0
3840+0 records in
3840+0 records out
31457280 bytes (31 MB) copied, 0.02607 seconds, 1.2 GB/s
SQL> alter database open;
Database altered.
SQL> shutdown immediate;
Database closed.
Database dismounted.
ORACLE instance shut down.
SQL> startup;
ORACLE instance started.
Total System Global Area  839282688 bytes
Fixed Size    2257880 bytes
Variable Size  545262632 bytes
Database Buffers  289406976 bytes
Redo Buffers    2355200 bytes
Database mounted.
Database opened.
SQL> select count(*) from dba_users;
  COUNT(*)
----------
30
SQL> select count(*) from dba_data_files;
  COUNT(*)
----------
4
SQL>          
    处理后数据库能正常打开、关闭、重启了。





目录
相关文章
|
Oracle 关系型数据库 数据库
oracle启动报错:ORA-01157,ORA-01110
关键报错: ORA-01110: data file 4:'/oracle/app/oradata/workdbser_space.dbf'   今天让一个新手来装数据库,然后说建完表空间启动不了,然后一看错误,报了上面一个错,这个我第一反应就是他娘复制黏贴不注意造成的,这个应该是个user表空间的文件。
1261 0
|
2月前
|
存储 Oracle 关系型数据库
Oracle数据库的应用场景有哪些?
【10月更文挑战第15天】Oracle数据库的应用场景有哪些?
199 64
|
4月前
|
存储 自然语言处理 Oracle
Oracle数据库字符集概述及修改方式
【8月更文挑战第15天】Oracle 数据库字符集定义了数据的编码方案,决定可存储的字符类型及其表示方式。主要作用包括数据存储、检索及跨系统传输时的正确表示。常见字符集如 AL32UTF8 支持多语言,而 WE8MSWIN1252 主用于西欧语言。修改字符集风险高,可能导致数据问题,需事先备份并评估兼容性。可通过 ALTER DATABASE 语句直接修改或采用导出-导入数据的方式进行。完成后应验证数据完整性。此操作复杂,须谨慎处理。
119 5
|
16天前
|
存储 Oracle 关系型数据库
数据库数据恢复—ORACLE常见故障的数据恢复方案
Oracle数据库常见故障表现: 1、ORACLE数据库无法启动或无法正常工作。 2、ORACLE ASM存储破坏。 3、ORACLE数据文件丢失。 4、ORACLE数据文件部分损坏。 5、ORACLE DUMP文件损坏。
62 11
|
4月前
|
数据采集 Oracle 关系型数据库
实时计算 Flink版产品使用问题之怎么实现从Oracle数据库读取多个表并将数据写入到Iceberg表
实时计算Flink版作为一种强大的流处理和批处理统一的计算框架,广泛应用于各种需要实时数据处理和分析的场景。实时计算Flink版通常结合SQL接口、DataStream API、以及与上下游数据源和存储系统的丰富连接器,提供了一套全面的解决方案,以应对各种实时计算需求。其低延迟、高吞吐、容错性强的特点,使其成为众多企业和组织实时数据处理首选的技术平台。以下是实时计算Flink版的一些典型使用合集。
|
29天前
|
Oracle 关系型数据库 数据库
Oracle数据恢复—Oracle数据库文件有坏快损坏的数据恢复案例
一台Oracle数据库打开报错,报错信息: “system01.dbf需要更多的恢复来保持一致性,数据库无法打开”。管理员联系我们数据恢复中心寻求帮助,并提供了Oracle_Home目录的所有文件。用户方要求恢复zxfg用户下的数据。 由于数据库没有备份,无法通过备份去恢复数据库。
|
1月前
|
存储 Oracle 关系型数据库
oracle数据恢复—Oracle数据库文件大小变为0kb的数据恢复案例
存储掉盘超过上限,lun无法识别。管理员重组存储的位图信息并导出lun,发现linux操作系统上部署的oracle数据库中有上百个数据文件的大小变为0kb。数据库的大小缩水了80%以上。 取出&并分析oracle数据库的控制文件。重组存储位图信息,重新导出控制文件中记录的数据文件,发现这些文件的大小依然为0kb。
|
22天前
|
存储 Oracle 关系型数据库
服务器数据恢复—华为S5300存储Oracle数据库恢复案例
服务器存储数据恢复环境: 华为S5300存储中有12块FC硬盘,其中11块硬盘作为数据盘组建了一组RAID5阵列,剩下的1块硬盘作为热备盘使用。基于RAID的LUN分配给linux操作系统使用,存放的数据主要是Oracle数据库。 服务器存储故障: RAID5阵列中1块硬盘出现故障离线,热备盘自动激活开始同步数据,在同步数据的过程中又一块硬盘离线,RAID5阵列瘫痪,上层LUN无法使用。
|
1月前
|
SQL Oracle 关系型数据库
Oracle数据库优化方法
【10月更文挑战第25天】Oracle数据库优化方法
54 7
|
2月前
|
存储 Oracle 关系型数据库
数据库数据恢复—Oracle ASM磁盘组故障数据恢复案例
Oracle数据库数据恢复环境&故障: Oracle ASM磁盘组由4块磁盘组成。Oracle ASM磁盘组掉线 ,ASM实例不能mount。 Oracle数据库故障分析&恢复方案: 数据库数据恢复工程师对组成ASM磁盘组的磁盘进行分析。对ASM元数据进行分析发现ASM存储元数据损坏,导致磁盘组无法挂载。