Oracle ORA-01033: 错误解决办法

本文详细记录了解决Oracle数据库启动时遇到的ORA-01157错误的过程,通过离线并删除问题数据文件成功启动数据库。同时,介绍了在Windows Server 2008环境下,关闭TCP/IP自动调谐功能以提升Oracle数据库访问速度的方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

解决步骤

第一步、sqlplus /NOLOG

第二步、SQL>connect sys/change_on_install as sysdba
提示:已成功

(1,2)或者

打开sqlplus

请输入用户名: system/sys as sysdba

第三步、SQL>shutdown normal

或者 shutdown abort
提示:
数据库已经关闭
已经卸载数据库
ORACLE 例程已经关闭

第四步、SQL>startup mount
提示:
Total System Global Area 5110898688 bytes
Fixed Size                  2806480 bytes
Variable Size            1107299632 bytes
Database Buffers        3992977408 bytes
Redo Buffers                7815168 bytes
数据库装载完毕。

第五步、SQL>alter database open(这一步出错)
提示:
ORA-01157: 无法标识/锁定数据文件11 - 请参阅DBWR 跟踪文件
ORA-01110: 数据文件11: ''''I:\tablesapce\APP0104_DEFAULT.dbf''

看到这个APP0104_DEFAULT.dbf 想起来了,是之前往数据库里导入DMP文件时创建的,当时是在移动硬盘上的,后来硬盘被拿走了,所以Oracle找不到这些表空间了。按照提示的数据文件编号11,对表空间进行drop操作。

第六步、SQL>alter database datafile 11 offline drop

第七步、重复第五第六步,直到所有无法连接的的表空间都已经drop为止(当时创建太多,一直drop到40才结束)

第八步、输入shutdown normal, startup mount, alter database open

最后、 无需重启,使用原来的用户名密码即可登录成功;使用SQL Developer也可以连接。

至此,问题解决。

 

 

 

昨天发布程序到2008服务器的IIS,从Sql Server数据库取数没问题,但是从Oracle数据库取数,非常的慢,同样的程序在2003服务器上没问题,本机也没问题。一开始怀疑是这台机器有问题,后来又换了一台2008的服务器发布后也是一样的慢,就连打开它的Net Manager连接数据都很慢。经多方查询原来就是由于2008服务器和win7新增加的TCP/IP协议自动调谐功能造成的。后对【TCP/IP协议自动调谐功能】进行关闭后一切恢复正常。

具体操作步骤:

开始——》运行——》cmd回车——》在该工作窗口的DOS提示符下,输入字符串命令

netsh int tcp set global autotuninglevel=disable”  回车,显示“确定”意味着此时系统的TCP/IP协议的自动调谐功能已经被成功关闭。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值