La sauvegarde de Windows Server n'est pas conçue comme un outil de sauvegarde pour SQL Server.
... Cependant, la conception le rend particulièrement adapté aux petites organisations ou aux particuliers qui ne sont pas des professionnels de l'informatique ...
Citation du guide pas à pas de la sauvegarde de Windows Server pour la section Windows Server 2008 : "Qui devrait utiliser la sauvegarde de Windows Server?"
La section que vous avez citée dit essentiellement que lorsque la sauvegarde de Windows Server interviendra, elle déclenchera la fonctionnalité VSS dans Windows. SQL Server sera conscient qu'une copie fantôme de volume est en cours et, à l'aide du service SQL Server Writer, s'assurera qu'une copie des fichiers de base de données (* .mdf, * .ndf, * .ldf) peut être effectuée.
Le but du service SQL Server Writer est défini comme suit:
Lors de l'exécution, le moteur de base de données se verrouille et dispose d'un accès exclusif aux fichiers de données. Lorsque le service SQL Writer n'est pas en cours d'exécution, les programmes de sauvegarde exécutés sous Windows n'ont pas accès aux fichiers de données et les sauvegardes doivent être effectuées à l'aide de la sauvegarde SQL Server.
Utilisez le service SQL Writer pour autoriser les programmes de sauvegarde Windows à copier les fichiers de données SQL Server pendant l'exécution de SQL Server.
Citation de la section SQL Writer Service : "Objectif"
C'est donc essentiellement tout ce qui se passe avec la sauvegarde de Windows Server.
Les sauvegardes créées avec Windows Server Backup pendant l'exécution de SQL Server doivent être cohérentes, mais les transactions non encore écrites sur le disque ne sont pas dans le cliché instantané des volumes. L'instantané de la base de données a été pris en étant EN LIGNE.
Toutefois, l'article MSDN Snapshot Backups indique:
Seuls les types de sauvegardes suivants peuvent être des sauvegardes de clichés:
- Sauvegardes complètes
- Sauvegardes partielles
- Sauvegardes de fichiers
- Sauvegardes différentielles de bases de données. Ils ne sont pris en charge que lorsque le fournisseur utilise l'interface VSS.
et en plus:
Sauf comme indiqué précédemment dans cette rubrique, les sauvegardes de clichés sont fonctionnellement équivalentes aux sauvegardes conventionnelles correspondantes. Vous pouvez utiliser des sauvegardes instantanées dans des séquences de restauration avec des sauvegardes complètes non instantanées, des sauvegardes différentielles et des sauvegardes de journaux. Comme les autres sauvegardes, les sauvegardes de clichés sont suivies dans la base de données msdb, où les sauvegardes de clichés sont identifiées par backupset.is_snapshot = 1. Pour plus d'informations sur msdb, voir Base de données msdb.
SQL Server ne prend pas en charge la restauration en ligne à partir d'une sauvegarde de capture instantanée. La restauration d'une sauvegarde d'instantané met automatiquement la base de données hors ligne. Une restauration fragmentaire peut incorporer des sauvegardes d'instantanés, mais toutes les séquences de restauration sont des restaurations hors ligne. Pour plus d'informations sur les restaurations fragmentaires, voir Exécution de restaurations fragmentaires.
Pour répondre à tes questions:
- Dois-je simplement sauvegarder le .mdf? Le .mdf et le .ldf?
- En ligne ou tout simplement hors ligne?
- Quelle est la procédure officielle de restauration des bases de données SQL Server sauvegardées de cette façon?
- Y a-t-il quelque chose de spécial à considérer lors des sauvegardes incrémentielles / différentielles?
- Où tout cela est-il documenté?
Réponses:
- Oui, vous pouvez effectuer une copie de sauvegarde Windows Server (VSS) des fichiers .mdf et .ldf. La sauvegarde doit être cohérente, mais la base de données sera HORS LIGNE après une restauration.
- Si SQL Server est arrêté / la base de données est détachée / la base de données est HORS LIGNE, une copie VSS des fichiers .mdf et .ldf est 100% cohérente.
- Je ne sais pas comment restaurer une base de données (à un point dans le temps) qui est effectuée avec la sauvegarde de Windows Server, car la base de données est restaurée dans un état HORS LIGNE. Une base de données à l'état HORS LIGNE ne peut plus être restaurée / récupérée et la mise en ligne de la base de données entraîne une récupération complète de la base de données. Je recommanderais des sauvegardes SQL Server FULL, DIFF et TLOG distinctes pour vous assurer que vous pouvez effectuer une restauration de base de données à un point dans le temps.
- Les journaux de transactions ne font pas partie des instantanés créés avec Windows Server Backup et doivent être exécutés en plus. Les instantanés différentiels sont pris en charge par des fournisseurs tiers dans le cadre de la séquence de sauvegarde, mais la sauvegarde de Windows Server ne semble pas être en mesure d'effectuer des sauvegardes différentielles. Dans ce cas, vous devrez également effectuer des sauvegardes différentielles supplémentaires. (voir 3.)
- Différentes références
Expliqué dans la mise en œuvre réelle
Dans notre environnement, nous avons une situation similaire où VMware effectue un instantané et les DBA effectuent des vidages SQL Server avec Commvault. L'historique de sauvegarde ressemble à ceci:
DBNAME TYPE BACKUPSET_NAME IS_SNAPSHOT BACKUP_START_DATE
------- ---- ------------------------- ----------- -----------------------
DB_NAME Full NULL 1 2016-12-10 18:23:59.000
DB_NAME Full CommVault Galaxy Backup 0 2016-12-10 20:07:41.000
DB_NAME Log CommVault Galaxy Backup 0 2016-12-11 06:00:40.000
DB_NAME Full NULL 1 2016-12-11 18:24:00.000
DB_NAME Diff CommVault Galaxy Backup 0 2016-12-11 20:03:38.000
DB_NAME Log CommVault Galaxy Backup 0 2016-12-12 06:02:29.000
DB_NAME Log CommVault Galaxy Backup 0 2016-12-12 07:02:17.000
L'instantané VMware créera une entrée dans les tables d'historique de la base de données MSDB avec IS_SNAPSHOT = 1
et FULL
pour chaque instantané VMware effectué (quotidiennement). Les sauvegardes SQL Server natives (bien que Commvault utilise des natives) sont effectuées à l'aide de sauvegardes FULL, DIFF et TLOG. Ces sauvegardes ne sont pas marquées comme IS_SNAPSHOT et existent en tant qu'entrées FULL supplémentaires (une fois par semaine), DIFF (tous les deux jours) et LOG (toutes les heures) dans les tables de sauvegarde de la base de données msdb.
Avec cette configuration, nous pouvons effectuer soit une restauration à la date-heure de l'instantané, puis mettre la base de données EN LIGNE, ou nous pouvons effectuer une restauration individuelle à n'importe quel point dans le temps à l'aide des sauvegardes SQL Server «natives».