Bonjour à tous,

Je vous expose mon problème : il y a une semaine, nous avons subi coup sur coup 2 pannes d'électricité au niveau de nos serveurs de bases de données.
A l'issue de la 1ère panne, les bases ont toutes redémarré correctement, mais en contrôlant leurs fichiers d'alerte, l'une d'elles indiquait que des blocs corrompus avaient été trouvés, mais apparemment réparés avec succès.
En voici un extrait :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
Completed redo scan
 9597 redo blocks read, 758 data blocks need recovery
Mon Nov 21 21:24:04 2005
Started recovery at
 Thread 1: logseq 3622, block 2578, scn 0.0
Mon Nov 21 21:24:04 2005
Recovery of Online Redo Log: Thread 1 Group 6 Seq 3622 Reading mem 0
  Mem# 0 errs 0: /u04/oradata/builder/redo06.log
  Mem# 1 errs 0: /u03/oradata/builder/redo16.log
***
Corrupt block relative dba: 0x00806eb5 (file 2, block 28341)
Fractured block found during crash/instance recovery
Data in bad block -
 type: 2 format: 2 rdba: 0x00806eb5
 last change scn: 0x0000.0ee2f996 seq: 0x4 flg: 0x04
 consistency value in tail: 0xb6b10203
 check value in block header: 0xc807, computed block checksum: 0xf470
 spare1: 0x0, spare2: 0x0, spare3: 0x0
***
Reread of rdba: 0x00806eb5 (file 2, block 28341) found same corrupted data
***
Corrupt block relative dba: 0x0781c0f4 (file 30, block 114932)
Fractured block found during crash/instance recovery
Data in bad block -
 type: 6 format: 2 rdba: 0x0781c0f4
 last change scn: 0x0000.0ee2f20c seq: 0x1 flg: 0x06
 consistency value in tail: 0xf8920601
 check value in block header: 0x2ee7, computed block checksum: 0xa9e
 spare1: 0x0, spare2: 0x0, spare3: 0x0
***
Reread of rdba: 0x0781c0f4 (file 30, block 114932) found same corrupted data
Mon Nov 21 21:24:04 2005
Recovery of Online Redo Log: Thread 1 Group 7 Seq 3623 Reading mem 0
Mon Nov 21 21:24:04 2005
Started recovery at
 Thread 1: logseq 3622, block 2578, scn 0.0
Mon Nov 21 21:24:04 2005
Recovery of Online Redo Log: Thread 1 Group 6 Seq 3622 Reading mem 0
  Mem# 0 errs 0: /u04/oradata/builder/redo06.log
  Mem# 1 errs 0: /u03/oradata/builder/redo16.log
***
Corrupt block relative dba: 0x00806eb5 (file 2, block 28341)
Fractured block found during crash/instance recovery
Data in bad block -
 type: 2 format: 2 rdba: 0x00806eb5
 last change scn: 0x0000.0ee2f996 seq: 0x4 flg: 0x04
 consistency value in tail: 0xb6b10203
 check value in block header: 0xc807, computed block checksum: 0xf470
 spare1: 0x0, spare2: 0x0, spare3: 0x0
***
Reread of rdba: 0x00806eb5 (file 2, block 28341) found same corrupted data
***
Corrupt block relative dba: 0x0781c0f4 (file 30, block 114932)
Fractured block found during crash/instance recovery
Data in bad block -
 type: 6 format: 2 rdba: 0x0781c0f4
 last change scn: 0x0000.0ee2f20c seq: 0x1 flg: 0x06
 consistency value in tail: 0xf8920601
 check value in block header: 0x2ee7, computed block checksum: 0xa9e
 spare1: 0x0, spare2: 0x0, spare3: 0x0
***
Reread of rdba: 0x0781c0f4 (file 30, block 114932) found same corrupted data
Mon Nov 21 21:24:04 2005
Recovery of Online Redo Log: Thread 1 Group 7 Seq 3623 Reading mem 0
  Mem# 0 errs 0: /u03/oradata/builder/redo07.log
  Mem# 1 errs 0: /u04/oradata/builder/redo17.log
Mon Nov 21 21:24:04 2005
Completed redo application
Mon Nov 21 21:24:04 2005
Ended recovery at
 Thread 1: logseq 3623, block 1938, scn 0.249780245
 764 data blocks read, 745 data blocks written, 9597 redo blocks read
Crash recovery completed successfully
A la 2ème panne, survenue le lendemain, les choses se sont moins bien passées puisque cette fois un fichier de redolog a été corrompu, et son archive perdue lors de la panne. La base a donc été entièrement restaurée à l'aide de RMAN et ouverte en mode resetlogs.

Aujourd'hui, on m'a signalé que des erreurs avaient été trouvés dans des logs applicatifs, qui concernent justement le bloc 114932 du fichier 30, qui était concerné par la corruption suite à la 1ère panne.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
java.sql.SQLException: ORA-01578: ORACLE data block corrupted (file # 30, block # 114932)
ORA-01110: data file 30: '/u01/oradata/builder/lm_big_index05.dbf'
Que faire pour résoudre le problème maintenant ?

Merci de votre aide