EXT3-fs error故障

一。解决磁盘错误
dmesg 报错:EXT3-fs error (device hda3) in start_transaction: Journal has aborted
umount 出错分区后再mount
磁盘修复:# e2fsck -y -C 0 /dev/sdc1

二。修改/oracle/dbs/initdbnms.ora文件
*.undo_management='AUTO'
_allow_resetlogs_corruption=TRUE
_corrupted_rollback_segments=(_SYSSMU1$,_SYSSMU2$,_SYSSMU3$)
三。检查dbf损坏块
dbv file=block.dbf blocksize=8192
select open_mode from v$database;
select file#,name from v$datafile where file#=1;
select name from v$rollname;

四。编译BBED
cd /oracle/rdbms/lib/ins_rdbms.mk
make -f ins_rdbms.mk $ORACLE_HOME/rdbms/lib/bbed
BBED的缺省口令为blockedit,请谨慎使用,内部工具

五.启动时候跳过坏块检查

   1) 在初始化参数中加入:event=”10231 trace name context forever, level 10″,然后重启数据库。

   2) 然后从存在坏块的表中取出不存在坏块的数据,执行以下的语句:
        CREATE TABLE salvage_emp AS SELECT * FROM corrupt_table;

五。参考资料。
tune2fs -o ^has_journal /dev/sdc1

Racker Hacker
Words of wisdom from a server administrator  EXT3-fs error (device hda3) in start_transaction: Journal has aborted
If your system abruptly loses power, or if a RAID card is beginning to fail, you might see an ominous message like this within your logs:

EXT3-fs error (device hda3) in start_transaction: Journal has aborted

Basically, the system is telling you that it's detected a filesystem/journal mismatch, and it can't utilize the journal any longer. When this situation pops up, the filesystem gets mounted read-only almost immediately. To fix the situation, you can remount the partition as ext2 (if it isn't your active root partition), or you can commence the repair operations.
If you're working with an active root partition, you will need to boot into some rescue media and perform these operations there. If this error occurs with an additional partition besides the root partition, simply unmount the broken filesystem and proceed with these operations.
Remove the journal from the filesystem (effectively turning it into ext2):

# tune2fs -O ^has_journal /dev/hda3
Now, you will need to fsck it to correct any possible problems (throw in a -y flag to say yes to all repairs, -C for a progress bar):
# e2fsck [-y -C 0] /dev/sdc1
Once that's finished, make a new journal which effectively makes the partition an ext3 filesystem again
# tune2fs -j /dev/hda3
You should be able to mount the partition as an ext3 partition at this time:
# mount -t ext3 /dev/hda3 /mnt/fixed
Be sure to check your dmesg output for any additional errors after you're finished!

posted on 2010-11-02 09:54  IT老友  阅读(2912)  评论(0编辑  收藏  举报

导航