J'ai besoin de déplacer un fichier journal de base de données vers une nouvelle partition sans mettre la base de données hors ligne.
La manière normale de procéder consiste à détacher la base de données, à déplacer le fichier journal, puis à rattacher la base de données.
Est-il possible de le faire sans mettre la base de données elle-même hors ligne et si oui, comment?
sql-server
sql-server-2008-r2
Pas moi
la source
la source
Réponses:
Il n'y a aucun moyen de le faire avec une base de données en ligne.
Lorsque vous déplacez un fichier de base de données (
ALTER DATABASE ... MODIFY FILE
), vous obtenez même le message suivant:Ce n'est pas la façon "normale" ou acceptée de le faire. Pour déplacer des fichiers de base de données, je fais ce qui suit:
Voir cette référence sur TechNet: Déplacer des bases de données utilisateur
la source
Selon la référence sur les bases de données utilisateur TechNet Move de la réponse de Thomas Stringer , si vous souhaitez déplacer les fichiers sans arrêter l'intégralité de l'instance SQL Server (en suivant la "Procédure de relocalisation planifiée"), l'ordre doit être le suivant:
Notez d'abord le OFFLINE; déplacez ensuite les fichiers et informez SQL Server du ou des nouveaux emplacements.
Si vous devez supprimer l'intégralité de l'instance de SQL Server (voir la procédure de «Relocalisation pour la maintenance planifiée du disque»), il est préférable de modifier d'abord les emplacements des fichiers afin que, lorsque l'instance est redémarrée, il n'y ait aucun problème à trouver les fichiers. dans les nouveaux emplacements.
la source
Je sais que c'est une vieille question, mais ne pouvez-vous pas simplement ajouter un deuxième fichier journal (qui est ensuite utilisé par la base de données au lieu de l'original) dans le nouvel emplacement, puis réduire / supprimer l'original?
la source