Have a ssvr 2008 db, about 10gb. About 50 tables, 5 or so are frequent read/write, the rest are weekly write (append only), occasional read.
The server came up and down a couple times over the past week due to Sandy (gracefully, from what I can tell from the logs, it's on a UPS). Today, it was noticed a lot of records in a single table (one of the weekly write ones) were missing (everything from september forward to the first write after the last power issue). The newest records added after the last restart are fine. That's problem 1.
The arguably weirder problem is that the surviving records before september are mostly correct, except for the data in two columns (nvarchar(50) and nvarchar(100)), which has been uniformly replaced with dates (YYYY-MM-DD) and bytes (ranging from 0 to 192). The dates and bytes don't have much relation I can see to the data that should be there or the other columns in that table (the dates are all "sensible", though, between 2012-02-27 and 2012-09-09).
I'm fetching backups for before and after each outage (simple recovery, hourly full backups) so I should be able to recover, but I'm a bit disturbed.
- How'd this happen without any events in the log or CHECKDB errors?
- What could cause this in general?
- Is there any way I can determine if other tables have been similarly corrupted in ways that may not have been as obvious as the first?