Sqlserver
 sql >> Base de données >  >> RDS >> Sqlserver

Attacher une base de données stockée à distance

Vous devriez pouvoir attacher une base de données sur le chemin UNC (je n'utiliserais pas de lecteur mappé - ce lecteur est mappé pour vous, pas le compte de service SQL Server), mais vous devez vous assurer que le compte de service SQL Server a lu/ les autorisations d'écriture sur le dossier distant et vous devez exécuter l'indicateur de trace 1807 (veuillez lire le message de Brent Ozar à ce sujet ).

N'utilisez pas non plus l'interface graphique pour cela. Une fois que vous avez défini l'indicateur de trace, redémarré le service et configuré correctement les autorisations, utilisez une nouvelle fenêtre de requête et exécutez la commande suivante :

CREATE DATABASE db_name 
ON (Filename = '\\uncpath\share\file.mdf'),
   (Filename = '\\uncpath\share\file.ldf')
FOR ATTACH;

(L'interface utilisateur ne vous proposera jamais un chemin UNC, quels que soient les indicateurs de trace que vous avez définis ou les autorisations activées.)

Soyez prêt à gérer une base de données corrompue et éventuellement irrécupérable en cas de panne du partage réseau, bien sûr.

Si cela vous fait peur, tant mieux ! Cela devrait! Ce n'est pas du tout une bonne idée. Au lieu de cela, vous devez libérer de l'espace, ajouter un lecteur ou héberger la base de données sur une autre instance.