2010-01-25 6 views
8

J'utilise SQL Server Management Studio sur ma machine locale. Je peux me connecter à un boîtier distant (moteur de base de données) et utiliser le Studio pour créer une sauvegarde de base de données enregistrée sur un lecteur du boîtier distant.Création d'une sauvegarde de serveur SQL Server sur la machine locale

Comment l'obtenir pour enregistrer la sauvegarde sur un lecteur sur mon ordinateur local?

Répondre

1

Vous ne pouvez pas - l'ordinateur distant n'a aucune information sur la configuration de votre machine locale et ne peut pas voir les lecteurs dessus. Vous devez configurer un dossier partagé sur votre ordinateur local et vous assurer que la machine distante y a accès (ce qui signifie que les services SQL Server Agent et SQL Server sur la machine distante auront besoin d'y accéder via des comptes de domaine) .

+0

En fait, SQL ne peut pas effectuer de sauvegardes dans un dossier distant. Vous devrez ajouter le partage au serveur REMOTE et copier la sauvegarde sur votre ordinateur local. – edosoft

11

Voir this MSDN article, pour la section sur la sauvegarde sur un partage réseau, par exemple:

BACKUP DATABASE YourDatabase 
    TO DISK = '\\SomeMachine\Backups\YourDatabase.Bak'; 

Sauvegarde un fichier sur un réseau
Partager Pour SQL Server pour accéder à une à distance disque, le compte de service SQL Server doit avoir accès au le partage réseau. Cela inclut ayant les autorisations nécessaires pour les opérations de sauvegarde pour écrire sur le partage réseau et pour restaurer les opérations à partir de lui. La fonction du contexte disponibilité des lecteurs réseau et autorisations est qui service SQL Server est en cours d'exécution:

  • Pour sauvegarder sur un lecteur réseau lorsque SQL Server est en cours d'exécution dans un compte utilisateur de domaine , le partage le lecteur doit être mappé en tant que lecteur réseau dans la session où SQL Server est en cours d'exécution. Si vous démarrez Sqlservr.exe à partir de la ligne de commande , SQL Server voit tous les lecteurs réseau que vous avez mappés dans votre session de connexion .
  • Lorsque vous exécutez Sqlservr.exe en tant que service , SQL Server s'exécute dans une session distincte qui n'a aucune relation à votre session de connexion. La session en exécutée par un service peut avoir ses propres lecteurs mappés , bien que cela ne le soit généralement pas en .
  • Vous pouvez vous connecter avec le compte de service réseau en utilisant le compte d'ordinateur au lieu d'un utilisateur de domaine . Pour autoriser les sauvegardes à partir d'ordinateurs spécifiques vers un lecteur partagé, accordez l'accès aux comptes d'ordinateur. Comme tant que le processus Sqlservr.exe que écrit l'accès de sauvegarde, il est sans importance si l'utilisateur envoyant la commande BACKUP a accès.
0

Si la machine distante est sur le même réseau que votre machine, voir AdaTheDev de answer.

Sinon, vous devrez utiliser RDP ou FTP dans la machine distante et transférer la sauvegarde manuellement. Je recommande 7-zip 'il en passant.

6

ÉTAPE 1: De sql-server 2008 Se connecter au serveur distant

STEP 2: Cliquez droit sur la base de données du serveur

ÉTAPE 3: Sélectionnez l'option Exporter

ÉTAPE 4: Suivez les instructions, importation au niveau local base de données du serveur et sauvegarde à partir de la base de données locale

1

Vous pouvez effectuer les opérations suivantes. Partagez le dossier sur votre ordinateur local. Spécifiez ensuite le chemin d'accès au fichier de sauvegarde au format UNC (\\server_name\share_name\backup_folder\backup_name.bak).
Dans la plupart des cas, SQL Server s'exécute sous un compte d'utilisateur restreint spécifique et ne peut pas accéder au dossier partagé (s'il n'est pas partagé pour tous les utilisateurs). Dans ce cas, la bonne solution consiste à utiliser des outils tiers qui permettent de définir les autorisations spécifiques pour l'accès au réseau et de télécharger des fichiers de sauvegarde. J'ai utilisé EMS SQL Backup et il a résolu cette tâche.
Il est également utilisable lorsque la machine du serveur SQL n'est pas dans votre réseau local. Dans ce cas, vous pouvez installer le serveur SSH ou FTP sur votre ordinateur client, puis configurer le téléchargement des sauvegardes dans SQL Backup sur ce serveur.

0

Dans Microsoft SQL Server Management Studio, vous pouvez cliquer avec le bouton droit sur la base de données que vous souhaitez sauvegarder et cliquer sur Tâches -> Générer des scripts.

Cette ouvre automatiquement un assistant où vous pouvez définir les paramètres suivants afin d'effectuer une sauvegarde décente de votre base de données, même sur un serveur distant:

Sélectionnez la base de données que vous souhaitez sauvegarder et cliquez sur suivant, Dans le options qu'il vous présente: En 2010: sous les options Table/View, remplacez 'Script Data' et 'Script Index' par True et cliquez sur suivant, En 2012: sous 'Général', changez 'Types de données en script' de 'Schema only' à 'Schema and data' En 2014: l'option de script des données est maintenant "masquée" à l'étape "Set Scripting Options", vous devez cliquer sur "Advanced" et définir "Types de données à scripter" "à" Valeur de schéma et de données " Dans les quatre fenêtres suivantes, appuyez sur "Sélectionner tout" puis sur Choisissez de créer un script dans une nouvelle fenêtre de requête Une fois que c'est fait, un script de sauvegarde est prêt devant vous. Créez une nouvelle base de données locale (ou distante) et modifiez la première instruction 'USE' dans le script pour utiliser votre nouvelle base de données. Enregistrez le script dans un endroit sûr, et allez-y et lancez-le contre votre nouvelle base de données vide. Cela devrait vous créer une base de données locale (presque) dupliquée que vous pouvez ensuite sauvegarder comme vous le souhaitez. Si vous avez un accès complet à la base de données distante, vous pouvez cocher la case 'script all objects' dans la première fenêtre de l'assistant, puis modifier l'option 'Script Database' sur True dans la fenêtre suivante. Attention cependant, vous devrez effectuer une recherche complète & remplacer le nom de la base de données dans le script par une nouvelle base de données que vous n'aurez pas à créer dans ce cas avant d'exécuter le script. Cela devrait créer un doublon plus précis mais n'est parfois pas disponible en raison des restrictions d'autorisations.

Questions connexes