cancel
Showing results for 
Search instead for 
Did you mean: 

How to salvage data when there are Invalid pages in the Checkpoint log ?

3,195

Let database file is damaged:

*** ERROR *** Assertion failed: 201865 (12.0.1.4301)[D4w]
Checkpoint log: Invalid pages at 0x6872 and 0x6873
and log file is damaged:
... Checkpoint at 2015/06/22 11:57
Log file corrupted (invalid page number found)
Corruption of log starts at offset 0071340530
Log operation at offset 0071086579 has bad data at offset 0071340531
    - Unable to start (and unload/validate/...) the database, even using "-f" and new "-ufd" database server option of ASA16 & ASA17 - servers:
    dbsrv12 -f -O "d4w.db"
    dbeng17 -ufd escalate -uf defunct -f "d4w.db"
    - Unable to backup the database using "-k recover" & "-k nocopy":
    dbbackup -c "UID=...;PWD=...;DBF=d4w.db" -s -d -k recover SQLAnybackup
    dbbackup -c "UID=...;PWD=...;DBF=d4w.db" -d -k nocopy SQLAnybackup
How to salvage data?
P.S. I think it has something wrong, if we are due to breakage of undo-log are losing real data.

VolkerBarth
Contributor
0 Kudos

Is the error in the checkpoint log resolved when you shut down the database? (AFAIK, the checkpoint log is truncated then, except that v12 and above leave some pages there to re-claim a fitting space for the next start.)

When both database file and log are damaged, the usual road would be to go back to your latest backup and restore that...

To salvage data that has been modified since the backup status, you could try to use dbunload to unload the desired data, possibly with a list of tables that are excluded/included (options -e / -t). And you might try to use DBTRAN to generate at least parts of the data modification statements...

0 Kudos

I used "dbtran -k D4w.log d4w.sql", but it returns data only until 22 June 😞
The dbunload.exe does not start 😞
The database file is damaged only the service log (Checkpoint log).
It is a pity that in such damaged real data can not be extracted 😞

Accepted Solutions (0)

Answers (0)