Please start any new threads on our new site at https://forums.sqlteam.com. We've got lots of great SQL Server experts to answer whatever question you can come up with.

 All Forums
 General SQL Server Forums
 Data Corruption Issues
 cannot restore SQL2000 backup to 2005 (Msg #601)

Author  Topic 

woody4012
Starting Member

2 Posts

Posted - 2008-06-05 : 12:31:37
Hello,

In the process of migrating a logshipped database (in non recovery mode) from SQL2000 SP4 to SQL2005 SP2, I got the following error (sorry for the french translation!):
---
Conversion de la base de données 'AdStatistiques' de la version 539 à la version actuelle 611.
Base de données 'AdStatistiques' exécutant l'étape de mise à jour de la version 539 à la version 551.
Msg 601, Niveau 12, État 3, Ligne 1
Impossible de poursuivre l'analyse avec NOLOCK car les données ont été déplacées.
Msg 3167, Niveau 16, État 1, Ligne 1
RESTORE n'a pas pu démarrer la base de données 'adstatistiques'.
Msg 3013, Niveau 16, État 1, Ligne 1
RESTORE DATABASE s'est terminé anormalement.
---

Of course, the restore operation performs well when the destination is SQL2000. I suspect the integrity checker of SQL2005 to be less permissive, hence I run a checkdb on the original DB, which raise several errors, which are quite difficult for me to analyse:
[Sorry, it's in french again]
----
Serveur : Msg 8929, Niveau 16, État 1, Ligne 1
Objet ID = 2 : Erreurs trouvées dans le texte ID = 15620702208 possédé par l'enregistrement de données identifié par RID = (1:1385:13) id = 1902629821 and indid = 1.
Serveur : Msg 8929, Niveau 16, État 1, Ligne 1
Objet ID = 2 : Erreurs trouvées dans le texte ID = 15620767744 possédé par l'enregistrement de données identifié par RID = (1:1385:14) id = 1902629821 and indid = 2.
Serveur : Msg 8929, Niveau 16, État 1, Ligne 1
Objet ID = 2 : Erreurs trouvées dans le texte ID = 15620833280 possédé par l'enregistrement de données identifié par RID = (1:1385:15) id = 1902629821 and indid = 3.
Serveur : Msg 8929, Niveau 16, État 1, Ligne 1
Objet ID = 2 : Erreurs trouvées dans le texte ID = 15620898816 possédé par l'enregistrement de données identifié par RID = (1:1385:16) id = 1902629821 and indid = 4.
Serveur : Msg 8929, Niveau 16, État 1, Ligne 1
Objet ID = 2 : Erreurs trouvées dans le texte ID = 26594574336 possédé par l'enregistrement de données identifié par RID = (1:7153632:27) id = 1031010754 and indid = 5.
Serveur : Msg 8961, Niveau 16, État 1, Ligne 1
Erreur de table : Objet ID = 2. Le nœud text, ntext ou image à la page (1:1974), slot 0, texte ID = 26594574336 ne correspond pas à sa référence dans la page (1:191177), slot 10.
Serveur : Msg 8974, Niveau 16, État 1, Ligne 1
Nœud texte référencé par plusieurs nœuds. L'objet ID = 2, page de nœud text, ntext ou image (1:1974), slot 0, texte ID = 26594574336 est pointé par la page (1:191177), slot 10 et par la page (1:38504), slot 0.
Serveur : Msg 8965, Niveau 16, État 1, Ligne 1
Erreur de table : Objet ID = 2. Le nœud text, ntext ou image à la page (1:1111184), slot 0, texte ID = 15620767744 est référencé par la page (1:191177), slot 11, mais n'a pas été vu à l'analyse.
Serveur : Msg 8965, Niveau 16, État 1, Ligne 1
Erreur de table : Objet ID = 2. Le nœud text, ntext ou image à la page (1:1111185), slot 0, texte ID = 15620833280 est référencé par la page (1:191177), slot 12, mais n'a pas été vu à l'analyse.
Résultats DBCC pour 'AdStatistiques'.
Résultats DBCC pour 'sysobjects'.
Il y a 388 lignes dans 9 pages pour l'objet 'sysobjects'.
Résultats DBCC pour 'sysindexes'.
Serveur : Msg 8965, Niveau 16, État 1, Ligne 1
Erreur de table : Objet ID = 2. Le nœud text, ntext ou image à la page (1:1111186), slot 1, texte ID = 15620898816 est référencé par la page (1:1385), slot 16, mais n'a pas été vu à l'analyse.
Il y a 437 lignes dans 26 pages pour l'objet 'sysindexes'.
CHECKDB a trouvé 0 erreurs d'allocation et 10 erreurs de cohérence dans la table 'sysindexes' (objet ID = 2).
[SNIP]
Résultats DBCC pour 'AdStatPageHeure_OLD'.
Serveur : Msg 8977, Niveau 16, État 1, Ligne 1
Erreur de table : Objet ID = 1902629821, index ID = 1. Le nœud parent pour la page (1:1043307) n'a pas été rencontré.
Serveur : Msg 8977, Niveau 16, État 1, Ligne 1
Erreur de table : Objet ID = 1902629821, index ID = 1. Le nœud parent pour la page (1:1043308) n'a pas été rencontré.
Serveur : Msg 8977, Niveau 16, État 1, Ligne 1
Erreur de table : Objet ID = 1902629821, index ID = 1. Le nœud parent pour la page (1:1043309) n'a pas été rencontré.
Serveur : Msg 8977, Niveau 16, État 1, Ligne 1
[SNIP, several errors pretty similar here]

-Trop d'erreurs trouvées (201) pour l'objet ID = 1902629821. Pour voir tous les messages d'erreurs, relancez l'instruction avec 'WITH ALL_ERRORMSGS'.
Il y a 21062117 lignes dans 72062 pages pour l'objet 'AdStatPageHeure_OLD'.
CHECKDB a trouvé 0 erreurs d'allocation et 72063 erreurs de cohérence dans la table 'AdStatPageHeure_OLD' (objet ID = 1902629821).
---

Of course, I'd like to delete the AdStatPageHeure_OLD table but I get a cryptic error message when doing that, and I can't remove the indexes that, according to some other posts I browsed, could explain the behavior:
---

La page (1:1111186), slot 1 pour le noeud text, ntext ou image n'existe pas.
Page (1:1111186), slot 1 for text, ntext, or image node does not exist. (Microsoft SQL Server, Erreur : 7105)

Pour obtenir de l'aide, cliquez sur : http://go.microsoft.com/fwlink?ProdName=Microsoft+SQL+Server&EvtSrc=MSSQLServer&EvtID=7105&LinkId=20476
---


Is there any easy option you can see to operate the transfer, since the backups I have from the DB already contain the data corruption?

Thanks a lot for any hint you could provide,
--
Julien

paulrandal
Yak with Vast SQL Skills

899 Posts

Posted - 2008-06-05 : 12:45:39
The CHECKDB I wrote for 2005 is actually a lot more comprehensive than the 2000 one, just that the process of upgrading an already corrupt database caused a corruption in 2005 that's more immediately fatal to CHECKDB.

You have corruption in the sysindexes table in your database. This is usually not repairable by any means. You might be able to drop all statistics and indexes on the corrupt table and THEN try deleting it. If that doesn't work, your only option is to extract all other schema/table info into a new database (and respectfully, get a better backup and consistency checking strategy to avoid this situation in future).

Thanks

Paul Randal
SQL Server MVP, Managing Director, SQLskills.com
Go to Top of Page

woody4012
Starting Member

2 Posts

Posted - 2008-12-22 : 17:29:44
Hello Paul,

I'm writing back on this subject, because we have been able to reduce the number of consistency errors reported by DBCC CHECKDB to only 6 instead of 70 000. Well, sysindexes is still corrupted, but maybe it's easier to understand what is going on.


Since this a good move, I wondered if you could take a look at the new reports raised by DBCC CHECKDB and let me know if you see any options that could apply to restore the db back to a normal state. Apparently the corruption is related to a statistics object, but it's not possible to drop it (an error is thrown...).
Sorry, this is french again:
---
Il y a 469 lignes dans 11 pages pour l'objet 'sysobjects'.
Résultats DBCC pour 'sysindexes'.
Msg 8929, Niveau 16, État 1, Ligne 1
Objet ID = 2 : Erreurs trouvées dans le texte ID = 15620898816 possédé par l'enregistrement de données identifié par RID = (1:1385:14) id = 1902629821 and indid = 4.
Le niveau de réparation pour l'instruction DBCC est tel que la réparation est ignorée.
Msg 8929, Niveau 16, État 1, Ligne 1
Objet ID = 2 : Erreurs trouvées dans le texte ID = 29488054272 possédé par l'enregistrement de données identifié par RID = (1:1388:7) id = 2135014687 and indid = 2.
Le système ne peut pas réparer seul cette erreur.
Msg 8965, Niveau 16, État 1, Ligne 1
Erreur de table : Objet ID = 2. Le nœud text, ntext ou image à la page (1:1111185), slot 0, texte ID = 29488054272 est référencé par la page (1:395), slot 1, mais n'a pas été vu à l'analyse.
Le niveau de réparation pour l'instruction DBCC est tel que la réparation est ignorée.
Msg 8965, Niveau 16, État 1, Ligne 1
Erreur de table : Objet ID = 2. Le nœud text, ntext ou image à la page (1:1111186), slot 1, texte ID = 15620898816 est référencé par la page (1:1385), slot 14, mais n'a pas été vu à l'analyse.
Le niveau de réparation pour l'instruction DBCC est tel que la réparation est ignorée.

[SNIP]
Résultats DBCC pour 'AdStatPageHeure_OLD'.
Msg 8979, Niveau 16, État 1, Ligne 1
Erreur de table : Objet ID = 1902629821, index ID = 1. La page (1:1110384) n'a pas de référence dans les nœuds parent (inconnu) et précédent (page (0:0)). Possibilité d'une mauvaise entrée de racine dans sysindexes.
Le niveau de réparation pour l'instruction DBCC est tel que la réparation est ignorée.
Msg 8980, Niveau 16, État 1, Ligne 1
Erreur de table : Objet ID = 1902629821, index ID = 1. Le nœud d'index page (0:0), slot 0 fait référence à la page fille (1:1288634), et à la précédente (0:0), mais elles n'ont pas été rencontrées.
Le niveau de réparation pour l'instruction DBCC est tel que la réparation est ignorée.
Il y a 0 lignes dans 1 pages pour l'objet 'AdStatPageHeure_OLD'.
CHECKDB a trouvé 0 erreurs d'allocation et 2 erreurs de cohérence dans la table 'AdStatPageHeure_OLD' (objet ID = 1902629821).
---

Thanks a lot!,
--
Woody
Go to Top of Page
   

- Advertisement -