Question

Je me suis battu la tête avec cette migration d'application pendant quelques jours maintenant. Ce que j’ai, c’est une ancienne application basée sur MSSQL Server 2000 qui est en train d’être mise à niveau vers un Windows 2003 Server exécutant SMSQL Server 2005. Je connais peu de choses sur SQL Server, mais de toute évidence pas assez.

J'ai essayé de sauvegarder la base de données sur l'ancien serveur en accédant à Bases de données - > Base de données -> Toutes les tâches- > Sauvegarder la base de données ..., en sélectionnant "Complet", puis en enregistrant le fichier. J'ai déplacé ce fichier de sauvegarde sur le nouveau serveur et essayé de procéder à une restauration, mais il s'est plaint en disant qu'il recherchait le fichier [Database] .mdf à l'emplacement où il se trouvait sur l'ancien serveur.

Alors j’ai alors essayé de faire une exportation de données, sélectionné la base de données locale SQL 2000, l’a pointée vers la nouvelle base de données SQL 2005 sur l’autre machine, et cela va jusqu’à la fin et s’est plaint de la façon dont les tables sont en train d'être jointes.

J'ai ensuite essayé de faire une commande "Générer SQL" sur la machine 2000 et de l'exécuter sous SQL 2005. Il semble y avoir beaucoup de jointures externes utilisant l'ancienne syntaxe * = que SQL Server 2005 ne prend plus en charge et , ceci étant une base de données de fournisseurs, n’ont aucune idée de ce qu’elles étaient vraiment quand ils ont configuré ces tables.

Existe-t-il un autre moyen d'essayer de migrer cette base de données?

Était-ce utile?

La solution

Le fichier de sauvegarde contient le " hard " emplacement des fichiers de données qui y sont stockés. Il vous suffit de les mettre à jour:

Lorsque vous effectuez une restauration en 2005, avant de cliquer sur la dernière "ok". pour restaurer (après avoir sélectionné le fichier .bak), accédez à l’onglet Options. Cela aura les emplacements mdf et ldf qui étaient dans le fichier de sauvegarde. Remplacez-les par des répertoires légitimes sur votre nouvel ordinateur.

Autres conseils

Vous pouvez détacher la base de données de l'ancien serveur, copier les fichiers mdf et ldf (ainsi que tous les fichiers connexes) sur le serveur, puis attacher la base de données au nouveau serveur.

Lorsque vous l'attachez, SQL Server le mettra à niveau vers une base de données au format 2005. Si vous avez des problèmes de compatibilité, vous pouvez également changer cela. Dans SQL Server Management Studio, cliquez avec le bouton droit de la souris sur votre base de données, cliquez sur Propriétés, puis sur Options et modifiez le mode de compatibilité en «SQL Server 2000 (80)».

Comme Peter l'a noté, vous devez changer le chemin d'accès pour un nouveau chemin existant sur le nouveau serveur.
Cette image aidera:

restaurer

L’une des astuces que j’apprends il ya des années consiste à cliquer sur le dernier bouton d’option (& "Laisser la base de données en lecture seule ...") pendant une minute pour afficher et copier où se trouvent les fichiers de données dans le nouveau serveur. N'oubliez pas de rétablir la première option avant de restaurer

Créez une sauvegarde de la base de données SQL2000 dans un fichier. Créez une nouvelle base de données sur SQL2005 avec le même nom et restaurez le fichier de sauvegarde dans une nouvelle base de données avec l'option " forcer la restauration sur la base de données existante " et définissez le niveau copiant de la nouvelle base de données sur "SQL2000 (8.0)".

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top