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

Instantanés de la base de données SQL Server -3

Salut

Je vais continuer à expliquer les instantanés de base de données dans SQL Server dans cet article.

Lisez les articles précédents avant ce post.

Instantanés de la base de données SQL Server -1

Instantanés de la base de données SQL Server -2

Les instantanés de base de données sous l'onglet Bases de données sont les suivants. Étant donné qu'aucun instantané d'aucune base de données n'a été pris, l'onglet Instantanés de la base de données est vide tel qu'il apparaît

Vous ne pouvez pas créer d'instantané sur SQL Server Management Studio, vous devez utiliser le code T-SQL dans l'image suivante. Un exemple est la base de données AdventureWorks, qui est la base de données de test que j'ai utilisée dans de nombreux exemples.

SQL Server Database Snaphot code

CREATE DATABASE AdventureWorksSnaphot  ON
( NAME = AdventureWorks_Data, FILENAME = 'd:\Snapshot\AdventureWorks_SparseFile.ss' )
AS SNAPSHOT OF AdventureWorks;
GO

AdventureWorksSnaphot a été créé au bas de l'onglet Snaphot, tel qu'il apparaît sur le côté gauche lorsque le script est exécuté. Cette base de données n'est qu'une image ou un instantané de la base de données AdventureWorks. Bien qu'un fichier fragmenté soit créé jusqu'à la taille de la base de données AdventureWorks sur le disque, il est initialement créé avec une très petite taille. L'image suivante montre l'emplacement de la base de données AdventureWorksSnaphot sur le disque physique.

La taille 1 de l'image ci-dessus (1) correspond en fait à la taille de la base de données AdventureWorks Source. La taille 2 correspond à la taille du fichier Sparsefile d'AdventureWorksSnaphot. Fichier fragmenté comme indiqué dans l'image ci-dessous, seules les pages de la base de données source seront modifiées.

Lorsque nous examinons la base de données Snapshot, tous les éléments tels que la table, les vues, les procédures stockées, etc. dans la source se trouvent tous dans la base de données Snapshot. Comme dans l'image ci-dessous, les mêmes tables que la base de données source peuvent également être interrogées à partir de la base de données Snaphot.

J'ai dit que la base de données Snapshot est également efficace pour les erreurs d'administrateur et d'utilisateur. Par exemple, des erreurs telles que la suppression complète d'une table ou la troncation de la table sont connues comme erreurs d'administrateur. Par exemple, la table AWBuildVersion qui apparaît dans le cadre 1 sous le schéma DBO de la base de données AdventureWorks est en cours de suppression. Lorsque l'onglet Tables est actualisé après l'exécution du script, la table AWBuildVersion est supprimée de la base de données AdventureWorks Source telle qu'elle apparaît dans l'image numéro 2 ci-dessous.

Qu'allons-nous faire en tant que DBA maintenant ?

Je continuerai à raconter dans le prochain post.