Les sauvegardes SQL Server à distance expliquées

Les sauvegardes SQL à distance sont compliquées. Nous allons expliquer pourquoi et montrer toutes les options disponibles pour faire les sauvegardes de toute façon.

Serveur SQL distant est un serveur sur lequel vous avez un accès limité au système de fichiers du serveur, comme dans un environnement d’hébergement partagé.
Le serveur SQL local est un serveur sur lequel vous avez un accès complet au système de fichiers, comme un serveur local auquel vous pouvez accéder physiquement ou un serveur dédié/ virtuel dont vous avez le contrôle total.

Quel est le problème avec les sauvegardes SQL Server distantes?

Le problème principal avec les serveurs SQL distants est que vous pouvez exécuter des scripts SQL, y compris la commande DE BASE DE DONNÉES DE SAUVEGARDE, mais accéder au résultat*.le fichier bak est problématique. Le *.le fichier bak est placé quelque part sur le lecteur local de ce serveur SQL. Et si vous n’accédez pas à cet emplacement, vous ne pouvez pas copier le fichier de sauvegarde pour un traitement ultérieur comme la compression, le cryptage, le stockage, etc. (plus de détails sur ce que signifie l’automatisation de la sauvegarde SQL), vos options sont limitées à la création d’un fichier de script.

BAK (*.bak) fichier vs Script (*.fichier sql) pour les sauvegardes SQL Server

Les fichiers BAK sont les sauvegardes créées à l’aide de la commande standard de BASE de DONNÉES de sauvegarde de Microsoft (ou via SSMS ou SQLBackupAndFTP). Ils obtiennent généralement *.extension de bak. Si vous avez une option pour créer *.fichiers bak – préférez-le toujours aux alternatives car il vous permet de stocker non seulement des sauvegardes complètes, mais aussi des sauvegardes différentielles et des sauvegardes du journal des transactions. Et le format est le plus courant et n’est propriétaire d’aucune tierce partie. Vous pouvez restaurer à partir de (*.bak) fichier utilisant la commande de BASE DE DONNÉES de RESTAURATION standard et de nombreux outils tiers.

Script (*.le fichier sql) est essentiellement un ensemble de commandes SQL qui recréent les objets de base de données et insèrent les données dans les tables. L’avantage d’utiliser un fichier de script est que la plupart des environnements d’hébergement vous permettent de télécharger des fichiers de script et de les exécuter à l’aide d’un panneau de configuration d’administration d’hébergement. Ensuite, vous pouvez restaurer une base de données sans que rien ne soit installé ou configuré par l’hébergeur.

Cependant Script (*.la méthode sql) a les limitations suivantes:

  1. Il faut beaucoup plus de temps pour générer un script que pour créer une sauvegarde SQL Server de type BAK standard
  2. Un tel script prend plus d’espace car il s’agit d’une représentation textuelle (non binaire) de votre base de données, bien qu’elle soit beaucoup plus compressible qu’une sauvegarde binaire.
  3. La restauration d’une base de données à partir d’un script prend plus de temps qu’à partir d’une sauvegarde régulière
  4. Contrairement aux sauvegardes standard, les scripts ne contiennent pas d’informations de journal des transactions, vous ne pouvez donc pas appliquer une récupération ponctuelle
  5. Les scripts ne prennent pas toujours en compte les dépendances, vous risquez donc de rencontrer des problèmes lors de la recréation de la base de données

Sauvegardes SQL Server locales

Sauvegardes locales SQL Server

  • La sauvegarde de SQL Server est bien documentée et nous n’entrerons pas dans les détails ici. Fondamentalement, vous exécutez la commande de BASE DE DONNÉES de SAUVEGARDE, utilisez SQL Server Management Studio ou des outils tiers. Cela crée un *.fichier bak sur le système de fichiers local du serveur. Ensuite, vous compressez généralement le fichier, le chiffrez, le téléchargez sur un lecteur réseau, FTP ou un cloud, etc. Vous pouvez créer vos scripts personnalisés pour le faire ou tout obtenir dans un produit comme SQLBackupAndFTP.

    Sauvegardes SQL Server distantes vers a*.fichier bak sur le partage réseau

    Si votre serveur SQL distant est sur le même réseau que vous et SQL server et que vous avez accès au même partage réseau (comme \\servername\path), alors sur le serveur SQL, vous pouvez sauvegarder à cet emplacement avec la commande comme:

    SAUVEGARDE DE LA BASE DE DONNÉES dbname SUR LE DISQUE = N ‘\\servername\path\dbname.BAK’

    Et à partir de votre propre ordinateur, vous pourrez accéder au même emplacement, prenez le *.fichier bak et faites ce que vous voulez avec.

    Vous pouvez écrire vos propres scripts pour l’automatiser ou sauvegarder votre serveur SQL réseau à l’aide de SQLBackupAndFTP.

    L’avantage des sauvegardes sur le chemin UNC est que vous obtenez la sauvegarde dans le même convoité *.format bak. L’inconvénient est essentiellement lié à la nécessité de configurer correctement les droits d’accès. Visitez le lien ci-dessus pour plus de détails sur les autorisations.

    Sauvegardes SQL Server distantes vers un script (*.sql) fichier

    Un script SQL Server généré (*.le fichier de sauvegarde sql) contient les informations nécessaires pour recréer la base de données sur un ordinateur distant. Le script inclut des commandes pour recréer le schéma de la base de données (tables, vues, procédures stockées, déclencheurs, catalogues en texte intégral, rôles, règles, etc.) et les données. Vous avez plusieurs options pour générer un script (*.sql) fichier de sauvegarde

    Base de données de script avec SqlBackupAndFtp

    C’est de loin la méthode la plus simple pour sauvegarder vos bases de données distantes. Sélectionnez simplement « Serveur SQL distant » comme type de serveur définir les informations de connexion:

    Configurez ensuite la compression, le cryptage, l’endroit où envoyer les sauvegardes et l’endroit où envoyer les notifications par e-mail. Voir plus de détails dans Comment sauvegarder une base de données SQL Server distante à l’aide de SQLBackupAndFTP

    Base de données de script avec SQL Server Management Studio (SSMS)

    Notez que cela fonctionne comme une « sauvegarde » ad hoc, mais vous ne pouvez pas planifier les scripts SSMS. Pour générer un script de base de données avec SSMS:

    1. Ouvrez votre SSMS
    2. Connectez-vous à votre serveur SQL distant
    3. Faites un clic droit sur la base de données que vous souhaitez sauvegarder et sélectionnez Tâches – > Générer des scripts. Cela ouvre un Assistant
    4. Appuyez sur Suivant sur l’écran d’introduction
    5. Laissez la valeur par défaut « Script base de données entière et objets de base de données » sélectionnée et appuyez sur Suivant
    6. Cliquez sur le bouton Avancé et changez « Types de données en script » de « Schéma uniquement » à « Schéma et données ». Cliquez sur OK
    7. Sélectionnez l’option « Enregistrer dans une nouvelle fenêtre de requête » et cliquez sur Suivant, Suivant et Terminer

    Copiez le script dans votre fichier local et stockez ou exécutez là où vous en avez besoin.

    Autres options pour la sauvegarde SQL Server à distance

    Si l’utilisation du mot « sauvegarde » en ce qui concerne les scripts était assez longue, les options discutées dans cette section sont encore plus éloignées de ce qui est considéré comme une « sauvegarde de base de données ». Pourtant, cela vous permet d’obtenir une copie de vos données, c’est pourquoi nous allons également examiner ces options

    Déplacer des données avec l’Assistant d’importation et d’exportation SQL Server dans SSMS

    Vous pouvez utiliser l’Assistant d’importation et d’exportation SQL Server pour copier les données du serveur SQL distant vers un serveur SQL local. Notez qu’il ne copiera PAS tous les objets de la base de données, mais uniquement les données. Nous ne pouvons pas imaginer l’utiliser comme méthode de sauvegarde principale. Quoi qu’il en soit ici les instructions:

    1. Ouvrez votre SSMS
    2. Connectez-vous à votre serveur SQL local
    3. Faites un clic droit sur la base de données dans laquelle vous souhaitez restaurer les sauvegardes et sélectionnez Tâches – > Importer des données. Cela ouvre un assistant
    4. Choisissez « Client natif SQL Server » comme source de données et votre serveur SQL distant comme nom de serveur.
    5. Sélectionnez la base de données à partir de laquelle copier les données. Prochain.
    6. Choisissez « Client natif SQL Server » comme source de données et votre serveur SQL local comme nom de serveur.
    7. Sélectionnez la base de données dans laquelle copier les données. Prochain.
    8. Sélectionnez les tableaux à copier. Suivant, Suivant, Terminer
  • Laisser un commentaire

    Votre adresse e-mail ne sera pas publiée.