oracle启动时报错:file size is not a multiple of logical block size的解决办法

 今天在启动oracle的时候,提示归档路径出了问题,因为之前归档是在h:\oracle\arc,不知道什么时候,我把这个文件夹删掉了。

启动的时候报错:

C:\>sqlplus /nolog

SQL*Plus: Release 11.1.0.6.0 - Production on 星期三 10月 12 16:08:48 2011

Copyright (c) 1982, 2007, Oracle.  All rights reserved.

SQL> conn / as sysdba
已连接到空闲例程。
SQL> startup
ORA-16032: parameter LOG_ARCHIVE_DEST_1 destination string cannot be translated
ORA-09291: sksachk: invalid device specified for archive destination
OSD-04018: ??????????????????????????
O/S-Error: (OS 2) ??????????????????????

 我一看,应该是由于h:\oracle\arc目录不存在造成的,但是又不想再新建这个目录,就想把归档目录移动到h:\app\arc目录下。

我找到H:\app\Administrator\product\11.1.0\db_1\database\SPFILES62.ORA,打开,将里面的一个参数做了改动:

*.log_archive_dest_1='location=h:\app\arc'

然后重新startup...

SQL> startup
ORA-01078: failure in processing system parameters
LRM-00109: ???????????????? 'H:\APP\ADMINISTRATOR\PRODUCT\11.1.0\DB_1\DATABASE\INITS62.ORA'

 

心想,哎呀,坏了,spfile应该是二进制文件,我手工改保存过之后肯定把文件给损坏了,但是又没有备份!

想到之前修改spfile的方法,就试一试:

SQL> create pfile from spfile;
create pfile from spfile
*
第 1 行出现错误:
ORA-01565: error in identifying file
'%ORACLE_HOME%\DATABASE\SPFILE%ORACLE_SID%.ORA'
ORA-27046: file size is not a multiple of logical block size
OSD-04012: ?????????????? (OS 3536)

 

发现已经不能读取spfile了,spfile已经坏了...

 

这时,找到了一个解决办法:

1. 在spfile.ora所在文件夹下面建立一个inits62.ora文件(注:s62是我的实例名,如果你的实例名是orcl,那么就是新建initorcl.ora文件)

2. 将现在的spfiles62.ora里面的参数拷贝到inits62.ora中,将乱码删掉。

3. 执行下面命令:

 startup pfile='H:\app\Administrator\product\11.1.0\db_1\database\INITS62.ORA'

启动正常了。

然后执行:

SQL> create spfile from pfile;

文件已创建。

 

OK了,spfile已经修复了。

 

正确的修改spfile方法:

1. create pfile from spfile;

2. 修改pfile,即inits62.ora里面相应的参数

3. create spfile from pfile;

 

或者使用alter system set 参数=新值 scope=spfile;

 

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值