Trying to recover from corrupted db
Posted in 1998
Topics: High Availability & Replication, Backup & Restore, Storage & Space Management, Error Codes & Troubleshooting, Server Administration
Between tape backups on our development system (SGI-IRIX 6.2),
two things happened: a lot of work was done on the database
ES 3.5.1 w/Informix v7.22) and the disk the database was on got
corrupted. So we're trying desparately to recover whatever we can.
Unfortunately, we don't know the nuts and bolts to be able to do
surgical hacking, only SQL statements and dbaccess.
With "dbaccess", I can open one of the databases but when trying
to pull up Table Info, I get "311: cannot open system catalog
(sysviolations) / 172: ISAM error: unexpected internal error".
When trying to open a different database, I get "311: cannot open
system catalog (systables) / .....unexpected internal error."
Without knowing what I'm doing, I tried "oncheck -cID <dbname>:<table>"
which produces "oncheck failure: gettab()Unknown error message 0."
"oncheck -ce" produces:
>ISAM error: Unexpected internal error>
>Error opening TBLspace sysviolations.
>
>Error opening TBLspace sysviolations.
> TBLspace name sysviolations
> Owner informix
> TBLspace number 10007f
> Tabid 27
> Row size 16
> Number of columns 4
> Number of indexes 3
> Number of rows 0
> Date created 04/10/1998
> TBLspace major version number 1
> TBLspace minor version number 1
> TBLspace type T
> Locking level R
> Number of pages used -2147483648
> First extent size 16
> Next extent size 16
> Flags 0
> Site ''
> Database name
followed by info on my tables interspersed with the "unexpected
internal error" message.
The online.log file indicates (I put x's in there):
>09:45:23 Assert Failed: WARNING! pthdrpage:ptalloc:bad partn page
>09:45:23 Who: Session(15, xx@xxxxxx, 1563, 806725068)
> Thread(40, oncheck, 301390f8, 1)
>09:45:23 Results: Cannot use TBLSpace page for TBLSpace 1048709
>09:45:23 Action: Run 'oncheck -pt 1048709'
>09:45:23 See Also: /tmp/af.28bbdc
>09:45:23 Process exited with return code 1: /bin/sh /bin/sh -c
>/usr/informix/
log_full.sh 3 1 "Table failure: ':""'." >"pthdrpage:ptalloc:bad partn page"
/tmp
/af.28
The tmp file is a hex dump which is, alas, meaningless to me.
And typing "oncheck -pt 1048709" simply produces the message
"ISAM error: Unexpected internal error".
The database from a prior backup tape works fine (tho' as mentioned,
many man-hours went into the database since then). Maybe there's a
way to combine parts of it with what I have now to recover our
database tables?
-John
Knowledge Systems, Inc.
-----== Posted via Deja News, The Leader in Internet Discussion ==-----
http://www.dejanews.com/ Now offering spam-free web-based newsreading