Fonctionnement de SQL Server #
SQL Server référence chaque opération d’ajout de modification ou de suppression sur une base de données par un numéro de séquence (Logical Sequence Numbers, LSN). Ces numéros permettent de garder une trace ordonnée de l’activité d’une base de données. Cette trace ordonnée est particulièrement utile pour restaurer correctement le contenu d’une base de données et récupérer son fonctionnement en cas d’incident :
- faute dans une application (transaction longue, étreinte fatale…),
- arrêt inopiné d’une application en cours de transaction,
- arrêt du système serveur (panne logicielle, matérielle… ou désastre).
Au-delà de simples références, SQL Server peut aussi garder la trace complète (le contenu) des modifications qui interviennent sur une base de données. Il s’agit du journal « après modifications » (after transaction log, en anglais). Pour offrir cette fonction, une base de données SQL Server doit être configurée pour que son mode de restauration soit « complet ».
Lisez l’article Modes de récupération (SQL Server) dans la documentation SQL Server pour en savoir plus sur ce point.
Sauvegarde d’une base de données SQL server #
Trace des opérations de sauvegarde #
Les opérations de sauvegarde des systèmes de fichiers étaient tracées par l’indicateur d’archive de chacun des fichiers. Les opérations de sauvegarde des bases de données le sont par le LSN de chaque modification.
Où sont stockés les LSN et les traces d’opérations de sauvegarde ? Dans les bases de données elles-mêmes.
Nous sommes donc dans un cas où la trace des opérations de sauvegarde est stockée dans le jeu de données à sauvegarder. L’installation d’un deuxième outil de sauvegarde concurrent au premier doit donc faire l’objet d’une attention particulière.
Sauvegarde « base ouverte » #
Aujourd’hui, sur le marché, un outil de sauvegarde de base de données se doit d’offrir la fonction de sauvegarde « bases ouvertes ». Les sauvegardes se déroulent de façon cohérente pendant les opérations de modification menées par les applications.
Pour ce faire, Microsoft SQL Server, utilise les mécanismes Volume Shadow Copy Services (VSS) de Windows en offrant notamment le composant SQL Server Writer.
Lisez les articles suivants (en anglais) What Is Volume Shadow Copy Service? Et How Volume Shadow Copy Service Works dans la documentation de Windows pour en savoir plus sur ce point.
Fonctionnement de Nuabee Backup pour SQL Server #
Nuabee Backup, lorsqu’il est configuré pour sauvegarder des bases de données Microsoft SQL Server, utilise les mécanismes Volume Shadow Copy Services (VSS) de Windows et utilise le composant SQL Server Writer.
Ce cas nous ramène à celui décrit dans « le problème » de l’article à propos des « Outils de sauvegarde multiples sur un même système informatique ».
Quelles solutions au problème ? #
Comment contourner le problème ? Il faut choisir entre plusieurs solutions d’implantation de Nuabee Backup.
Nuabee Backup seul outil de sauvegarde
Nuabee Backup peut être choisi et configuré comme le seul outil de sauvegarde des bases de données. Il remplace alors l’ancien outil de sauvegarde lorsque le PRA est mis en œuvre. C’est une solution simple, quoi que souffrant d’un impact non négligeable sur l’existant.
Nuabee Backup en mode image
Sinon, l’outillage initial est conservé et Nuabee Backup doit être configuré en utilisant la fonction de sauvegarde qui conjugue mode image et mode bloc. Nous l’avons vu dans l’article « Outils de sauvegarde multiples sur un même système informatique », cette configuration assure l’indépendance de Nuabee Backup et de l’autre outil de sauvegarde.
Choisir le mode de récupération, puis une solution de sauvegarde #
Il faut choisir le mode de récupération de chaque base de données sauvegardée. Le principal critère à considérer est celui des exigences fonctionnelles des applications et du système d’information. Le « mode de récupération complet » est le seul qui garantisse une perte de données proche de zéro en cas de sinistre. Il impose des exigences en termes d’implantation techniques qui ne sont pas développées ici. En principe, cette option a été prise avant la mise en place du PRA, lors de l’implantation des chaque application.
Par ailleurs, et après avoir statué sur le premier point, le choix du mode de récupération peut être évalué en termes de quantité de données sauvegardées et d’utilisation de bande passante sur les réseaux.
Il faut remarquer que lorsqu’une base de données est configurée en « mode de récupération complet » (le contraire du mode de récupération simple), les modifications apportées au contenu de la base sont dupliquées dans le journal après modifications. La sauvegarde incrémentale réalisée en mode image par Nuabee Backup porte sur les deux exemplaires des données modifiées. Par contre, la sauvegarde incrémentale réalisée par les VSS ne porte que sur les journaux et aboutit donc à ce que les modifications apportées au contenu des bases de données ne soient sauvegardée qu’une fois.
Le choix d’une solution fondée sur Nuabee Backup en mode image nécessite une attention supplémentaire : séparer ce qui est sauvegardé en mode image de ce qu’il l’est en mode fichier.
- Les fichiers contenant les bases de données applicatives et les journaux correspondants doivent être installés sur des disque qui les contiennent exclusivement ; ce sont ces disques qui font l’objet de la sauvegarde image.
- Les autres fichiers (annexes au système de gestion de bases de données, autres applications) sont stockés sur d’autres disques et sont sauvegardés en mode fichier.