Bonjour,
Encore un problème de backup/restaure !
Il y a t-il une possibilité de restaurer sur SQL2k5 un backup issu de SQL2K8 ?
Je pensais qu'en jouant sur le niveau de compatibilité (passer de 100 à 90) on pourrait créer un backup compatible SQL2K5. Pour celà j'ai donc écrit ce petit script
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
| USE master;
--Passer en mode SINGLE USER
ALTER DATABASE AdventureWorks
SET SINGLE_USER
WITH ROLLBACK IMMEDIATE;
--Modifier le niveau de compatibilité (passer de 100 --> 90)
ALTER DATABASE AdventureWorks
SET compatibility_level = 90;
--BACKUP FULL
BACKUP DATABASE AdventureWorks to disk='E:\BACKUP\AdventureWorks.bak' WITH init
--Remettre le niveau de compatibilité initial (passer de 90 --> 100)
ALTER DATABASE AdventureWorks
SET compatibility_level = 100;
--Passer en mode MULTIUSER
ALTER DATABASE AdventureWorks
SET MULTI_USER; |
Mais lors de la restauration sur SQL2K5 j'ai le message d'erreur suivant
Impossible d'ouvrir l'unité de sauvegarde 'D:\Backup\AdventureWorks.bak'.
Erreur 32(The process cannot access the file because it is being used by another process.)
du système d'exploitation.
RESTORE HEADERONLY s'est terminé anormalement. (.Net SqlClient Data Provider)
Le même fichier est bien restauré sur SQL2K8.
Quand j'execute la commande suivante sur SQL2K5
RESTORE HEADERONLY FROM DISK = N'D:\Backup\AdventureWorks.bak' WITH NOUNLOAD
j'ai ce message :
Msg 3241, Level 16, State 7, Line 1
La famille de supports sur l'unité 'D:\Backup\AdventureWorks.bak' est incorrecte. SQL Server ne peut pas la traiter.
Msg 3013, Level 16, State 1, Line 1
RESTORE HEADERONLY s'est terminé anormalement.
la même commande sur SQL2K8 ne gère pas d'erreur !
Ne searait-il pas interessant que Microsoft nous permet de faire un backup du genre :
BACKUP DATABASE ... WITH LEVEL = 90
histoire de générer un backup compatible SQL2K5 ?
Quelqu'un a-t-il une entrée chez MS ?
je compte sur nos MVP pour faire cette suggestion à MS
Si vous avez d'autres idées je suis preneur.
Merci d'avance
Partager