SQLTeam.com | Weblogs | Forums

DBCC CHECKDB - same errors on multiple databases


#1

We are getting consistency check failures during Backup Exec back ups. I have since run DBCC CHECKDB over several databases and I seem to get the same errors regardless of the database I run it over. I also created a new ZDummy database with no tables and got the same errors (below). Some databases are fine and don't return an error with DBCC CHECKDB.
I guess this means that a common system object or database, that the individual user databases are referencing, is corrupt or damaged but I don't know where to look.

Can anybody help or suggest how to resolve this?
Thanks.

Msg 8992, Level 16, State 1, Line 1
Check Catalog Msg 3851, State 1: An invalid row (class=60,depid=1,depsubid=0) was found in the system table sys.syssingleobjrefs (class=60).
Msg 8992, Level 16, State 1, Line 1
Check Catalog Msg 3851, State 1: An invalid row (class=26,depid=1,depsubid=0,indepid=3,indepsubid=0) was found in the system table sys.sysmultiobjrefs (class=26).
Msg 8992, Level 16, State 1, Line 1
Check Catalog Msg 3851, State 1: An invalid row (class=60,depid=2,depsubid=0) was found in the system table sys.syssingleobjrefs (class=60).
Msg 8992, Level 16, State 1, Line 1
Check Catalog Msg 3851, State 1: An invalid row (class=60,depid=3,depsubid=0) was found in the system table sys.syssingleobjrefs (class=60).
Msg 8992, Level 16, State 1, Line 1
Check Catalog Msg 3851, State 1: An invalid row (class=60,depid=4,depsubid=0) was found in the system table sys.syssingleobjrefs (class=60).
Msg 8992, Level 16, State 1, Line 1
Check Catalog Msg 3851, State 1: An invalid row (class=60,depid=5,depsubid=0) was found in the system table sys.syssingleobjrefs (class=60).
Msg 8992, Level 16, State 1, Line 1
Check Catalog Msg 3851, State 1: An invalid row (class=26,depid=257,depsubid=0,indepid=3,indepsubid=0) was found in the system table sys.sysmultiobjrefs (class=26).
Msg 8992, Level 16, State 1, Line 1
Check Catalog Msg 3851, State 1: An invalid row (class=26,depid=258,depsubid=0,indepid=3,indepsubid=0) was found in the system table sys.sysmultiobjrefs (class=26).
Msg 8992, Level 16, State 1, Line 1
Check Catalog Msg 3851, State 1: An invalid row (class=26,depid=259,depsubid=0,indepid=3,indepsubid=0) was found in the system table sys.sysmultiobjrefs (class=26).
Msg 8992, Level 16, State 1, Line 1
Check Catalog Msg 3851, State 1: An invalid row (class=26,depid=260,depsubid=0,indepid=3,indepsubid=0) was found in the system table sys.sysmultiobjrefs (class=26).
Msg 8992, Level 16, State 1, Line 1
Check Catalog Msg 3851, State 1: An invalid row (class=26,depid=263,depsubid=0,indepid=3,indepsubid=0) was found in the system table sys.sysmultiobjrefs (class=26).
Msg 8992, Level 16, State 1, Line 1
Check Catalog Msg 3851, State 1: An invalid row (class=26,depid=273,depsubid=0,indepid=3,indepsubid=0) was found in the system table sys.sysmultiobjrefs (class=26).
Msg 8992, Level 16, State 1, Line 1
Check Catalog Msg 3851, State 1: An invalid row (class=26,depid=285,depsubid=0,indepid=3,indepsubid=0) was found in the system table sys.sysmultiobjrefs (class=26).
Msg 8992, Level 16, State 1, Line 1
Check Catalog Msg 3851, State 1: An invalid row (class=26,depid=285,depsubid=0,indepid=4,indepsubid=0) was found in the system table sys.sysmultiobjrefs (class=26).
Msg 8992, Level 16, State 1, Line 1
Check Catalog Msg 3851, State 1: An invalid row (class=26,depid=285,depsubid=0,indepid=5,indepsubid=0) was found in the system table sys.sysmultiobjrefs (class=26).
Msg 8992, Level 16, State 1, Line 1
Check Catalog Msg 3851, State 1: An invalid row (class=26,depid=285,depsubid=0,indepid=6,indepsubid=0) was found in the system table sys.sysmultiobjrefs (class=26).
Msg 8992, Level 16, State 1, Line 1
Check Catalog Msg 3851, State 1: An invalid row (class=26,depid=285,depsubid=0,indepid=7,indepsubid=0) was found in the system table sys.sysmultiobjrefs (class=26).
Msg 8992, Level 16, State 1, Line 1
Check Catalog Msg 3851, State 1: An invalid row (class=26,depid=285,depsubid=0,indepid=8,indepsubid=0) was found in the system table sys.sysmultiobjrefs (class=26).
Msg 8992, Level 16, State 1, Line 1
Check Catalog Msg 3851, State 1: An invalid row (class=26,depid=285,depsubid=0,indepid=9,indepsubid=0) was found in the system table sys.sysmultiobjrefs (class=26).
Msg 8992, Level 16, State 1, Line 1
Check Catalog Msg 3851, State 1: An invalid row (class=26,depid=285,depsubid=0,indepid=10,indepsubid=0) was found in the system table sys.sysmultiobjrefs (class=26).
Msg 8992, Level 16, State 1, Line 1
Check Catalog Msg 3851, State 1: An invalid row (class=26,depid=286,depsubid=0,indepid=3,indepsubid=0) was found in the system table sys.sysmultiobjrefs (class=26).
Msg 8992, Level 16, State 1, Line 1
Check Catalog Msg 3851, State 1: An invalid row (class=26,depid=287,depsubid=0,indepid=3,indepsubid=0) was found in the system table sys.sysmultiobjrefs (class=26).
Msg 8992, Level 16, State 1, Line 1
Check Catalog Msg 3851, State 1: An invalid row (class=26,depid=288,depsubid=0,indepid=3,indepsubid=0) was found in the system table sys.sysmultiobjrefs (class=26).
Msg 8992, Level 16, State 1, Line 1
Check Catalog Msg 3851, State 1: An invalid row (class=26,depid=289,depsubid=0,indepid=3,indepsubid=0) was found in the system table sys.sysmultiobjrefs (class=26).
Msg 8992, Level 16, State 1, Line 1
Check Catalog Msg 3851, State 1: An invalid row (class=26,depid=289,depsubid=0,indepid=9,indepsubid=0) was found in the system table sys.sysmultiobjrefs (class=26).
Msg 8992, Level 16, State 1, Line 1
Check Catalog Msg 3851, State 1: An invalid row (class=26,depid=289,depsubid=0,indepid=10,indepsubid=0) was found in the system table sys.sysmultiobjrefs (class=26).
Msg 8992, Level 16, State 1, Line 1
Check Catalog Msg 3851, State 1: An invalid row (class=26,depid=290,depsubid=0,indepid=3,indepsubid=0) was found in the system table sys.sysmultiobjrefs (class=26).
Msg 8992, Level 16, State 1, Line 1
Check Catalog Msg 3851, State 1: An invalid row (class=26,depid=290,depsubid=0,indepid=9,indepsubid=0) was found in the system table sys.sysmultiobjrefs (class=26).
Msg 8992, Level 16, State 1, Line 1
Check Catalog Msg 3851, State 1: An invalid row (class=26,depid=290,depsubid=0,indepid=10,indepsubid=0) was found in the system table sys.sysmultiobjrefs (class=26).
Msg 8992, Level 16, State 1, Line 1
Check Catalog Msg 3851, State 1: An invalid row (class=26,depid=291,depsubid=0,indepid=3,indepsubid=0) was found in the system table sys.sysmultiobjrefs (class=26).
Msg 8992, Level 16, State 1, Line 1
Check Catalog Msg 3851, State 1: An invalid row (class=26,depid=291,depsubid=0,indepid=6,indepsubid=0) was found in the system table sys.sysmultiobjrefs (class=26).
Msg 8992, Level 16, State 1, Line 1
Check Catalog Msg 3851, State 1: An invalid row (class=26,depid=291,depsubid=0,indepid=9,indepsubid=0) was found in the system table sys.sysmultiobjrefs (class=26).
Msg 8992, Level 16, State 1, Line 1
Check Catalog Msg 3851, State 1: An invalid row (class=26,depid=291,depsubid=0,indepid=10,indepsubid=0) was found in the system table sys.sysmultiobjrefs (class=26).
Msg 8992, Level 16, State 1, Line 1
Check Catalog Msg 3851, State 1: An invalid row (class=26,depid=292,depsubid=0,indepid=3,indepsubid=0) was found in the system table sys.sysmultiobjrefs (class=26).
Msg 8992, Level 16, State 1, Line 1
Check Catalog Msg 3851, State 1: An invalid row (class=26,depid=292,depsubid=0,indepid=9,indepsubid=0) was found in the system table sys.sysmultiobjrefs (class=26).
Msg 8992, Level 16, State 1, Line 1
Check Catalog Msg 3851, State 1: An invalid row (class=26,depid=292,depsubid=0,indepid=10,indepsubid=0) was found in the system table sys.sysmultiobjrefs (class=26).
Msg 8992, Level 16, State 1, Line 1
Check Catalog Msg 3851, State 1: An invalid row (class=26,depid=295,depsubid=0,indepid=3,indepsubid=0) was found in the system table sys.sysmultiobjrefs (class=26).
Msg 8992, Level 16, State 1, Line 1
Check Catalog Msg 3851, State 1: An invalid row (class=26,depid=295,depsubid=0,indepid=6,indepsubid=0) was found in the system table sys.sysmultiobjrefs (class=26).
Msg 8992, Level 16, State 1, Line 1
Check Catalog Msg 3851, State 1: An invalid row (class=26,depid=295,depsubid=0,indepid=9,indepsubid=0) was found in the system table sys.sysmultiobjrefs (class=26).
Msg 8992, Level 16, State 1, Line 1
Check Catalog Msg 3851, State 1: An invalid row (class=26,depid=295,depsubid=0,indepid=10,indepsubid=0) was found in the system table sys.sysmultiobjrefs (class=26).
Msg 8992, Level 16, State 1, Line 1
Check Catalog Msg 3851, State 1: An invalid row (class=26,depid=296,depsubid=0,indepid=3,indepsubid=0) was found in the system table sys.sysmultiobjrefs (class=26).
Msg 8992, Level 16, State 1, Line 1
Check Catalog Msg 3851, State 1: An invalid row (class=26,depid=296,depsubid=0,indepid=6,indepsubid=0) was found in the system table sys.sysmultiobjrefs (class=26).
Msg 8992, Level 16, State 1, Line 1
Check Catalog Msg 3851, State 1: An invalid row (class=26,depid=296,depsubid=0,indepid=9,indepsubid=0) was found in the system table sys.sysmultiobjrefs (class=26).
Msg 8992, Level 16, State 1, Line 1
Check Catalog Msg 3851, State 1: An invalid row (class=26,depid=296,depsubid=0,indepid=10,indepsubid=0) was found in the system table sys.sysmultiobjrefs (class=26).
Msg 8992, Level 16, State 1, Line 1
Check Catalog Msg 3851, State 1: An invalid row (class=26,depid=299,depsubid=0,indepid=3,indepsubid=0) was found in the system table sys.sysmultiobjrefs (class=26).
Msg 8992, Level 16, State 1, Line 1
Check Catalog Msg 3851, State 1: An invalid row (class=26,depid=300,depsubid=0,indepid=3,indepsubid=0) was found in the system table sys.sysmultiobjrefs (class=26).
Msg 8992, Level 16, State 1, Line 1
Check Catalog Msg 3851, State 1: An invalid row (class=26,depid=301,depsubid=0,indepid=3,indepsubid=0) was found in the system table sys.sysmultiobjrefs (class=26).
Msg 8992, Level 16, State 1, Line 1
Check Catalog Msg 3851, State 1: An invalid row (class=26,depid=301,depsubid=0,indepid=5,indepsubid=0) was found in the system table sys.sysmultiobjrefs (class=26).
Msg 8992, Level 16, State 1, Line 1
Check Catalog Msg 3851, State 1: An invalid row (class=26,depid=303,depsubid=0,indepid=3,indepsubid=0) was found in the system table sys.sysmultiobjrefs (class=26).
Msg 8992, Level 16, State 1, Line 1
Check Catalog Msg 3851, State 1: An invalid row (class=26,depid=304,depsubid=0,indepid=3,indepsubid=0) was found in the system table sys.sysmultiobjrefs (class=26).
Msg 8906, Level 16, State 1, Line 1
Page (1:10) in database ID 15 is allocated in the SGAM (1:3) and PFS (1:1), but was not allocated in any IAM. PFS flags 'MIXED_EXT ALLOCATED 0_PCT_FULL'.
CHECKDB found 1 allocation errors and 50 consistency errors not associated with any single object.
CHECKDB found 1 allocation errors and 50 consistency errors in database 'ZDummy'.


#2

If you have a clean backup of the database, restore the database from the backup.

Note: This method works only if the backup does not have inconsistencies in the metadata.
Have a look here: https://support.microsoft.com/en-us/help/2787112/-msg-8992-error-message-and-inconsistent-metadata-in-the-sql-server-sy
Generally, It's not recommended to use REPAIR_ALLOW_DATA_LOSS command. Command itself tell data loss will occur.
The best option is to use SQL Server Database Repair Tool to resolve this error. It's recommended to try the free demo version before going to license. Free demo will repair and preview the recovered data.


#3

Thanks for the response Jason. I'm confused here as my issue doesn't seem to be with one particular database. The error messages listed in my post are from running DBCC CHECKDB over a brand new database, containing no tables, that I had created 30 seconds earlier to prove that it wasn't the database that was causing the issue. I have many databases in SQL and not all of them give this issue when I run CHECHDB. My biggest and most important database is fine.
As a test, I will try and restore a database to another server to see whether that changes things but really I believe it to be a system database issue, but I don't know where or what.


#4

It appears that you may have a corrupted model, master and/or system resource database. You need to run an integrity check on master and model and verify they don't have any issues.

If either has issues then you need to determine the best option for correcting those issues. Most likely it will require rebuilding the master database...

If the corruption is with the system resource database then you have a bit more work...you would have to install a new instance with the same name up to the same version/patch level then copy the resource database from that system.

Before doing any of this you need to identify what caused the corruption and fix the hardware issues - else you will just be doing this all again.


#5

Thanks for the response. I ran the check over the system databases and all are OK except the model database. This gives the same list of errors as above. Do I assume that this is the root cause of the errors generated in the user databases?


#6

Yes - the model database is used when creating a new database so any corruption in that database is going to be seen in all new databases created since the database became corrupted.

If you have a good backup of that database where it isn't corrupted you can restore the database from that backup. If you do not have that then you can copy files from another instance that is on the same build level as this instance. If you don't have either of those then you would have to repair the system databases...

I would build a new instance and patch it to the same exact level as this instance - then restore from a backup of the new instance. Since this is only the model database that shouldn't cause any issues or problems but make sure you research what needs to be done for this process.

For existing databases with that corruption - you are going to have to extract out everything you can and rebuild the database once you have fixed the issues with the model database.


#7

Thanks for your help Jeff.


#8