605: Attempt to fetch logical page belongs to a different allocation unit (la page logique lue appartient à une autre unité d'allocation)
SQL ServerQue signifie cette erreur ?
Lors de la lecture d'une page, SQL Server a trouvé une page appartenant à un autre objet au lieu de l'objet/de l'unité d'allocation attendus. C'est un indicateur fort d'une corruption physique/logique grave de la base.
Cause
Chaînage de pages rompu à cause d'une panne de stockage/disque, d'un bug de contrôleur ou de pilote, d'une corruption du cache d'écriture lors d'une coupure de courant soudaine, ou d'un système de fichiers endommagé. Un « 605 transitoire » peut parfois provenir de problèmes d'I/O temporaires, mais les cas persistants sont une vraie corruption.
Comment la corriger
Exécutez immédiatement DBCC CHECKDB ('mydb') WITH NO_INFOMSGS, ALL_ERRORMSGS pour déterminer l'étendue des dégâts. Si possible, restaurez depuis une sauvegarde saine connue (une PITR minimisant la perte de données est préférable). Testez le stockage/le matériel et vérifiez le paramètre PAGE_VERIFY CHECKSUM. Les options REPAIR peuvent entraîner une perte de données ; ne les utilisez qu'en dernier recours et après avoir effectué une sauvegarde ; dans les environnements critiques, faites appel au support Microsoft.
Autres entrées pour ce moteur
- 3906Failed to update database because the database is read-only (échec de la mise à jour : la base est en lecture seule)
- 15023User already exists in the current database (l'utilisateur existe déjà dans la base courante)
- 18452Login failed. The login is from an untrusted domain and cannot be used with Windows authentication (échec de connexion : login provenant d'un domaine non approuvé, inutilisable avec l'authentification Windows)
- 4922ALTER TABLE ALTER COLUMN failed because one or more objects access this column (échec d'ALTER TABLE ALTER COLUMN : un ou plusieurs objets accèdent à cette colonne)
- 7202Could not find server 'name' in sys.servers (serveur 'name' introuvable dans sys.servers)
- 40501The service is currently busy. Retry the request after 10 seconds (le service est actuellement occupé ; réessayez dans 10 secondes)
- 8645A time out occurred while waiting for memory resources to execute the query (timeout en attendant les ressources mémoire nécessaires à l'exécution de la requête)