
mathnel
|
Tu tapes le mot clé : .dat sur le fichier d'aide sur sql server. Parmis les reponse tu as RESTORE. Tu le selectionne et tu suis ce qui te proposes. En voici la copie:
Référence de Transact-SQL
RESTORE Restaure les sauvegardes réalisées à l'aide de la commande BACKUP. Pour plus d'informations, voir Sauvegarde et restauration de bases de données.
Syntaxe Restaurer l'intégralité d'une base de données :
RESTORE DATABASE { database_name | @database_name_var } [ FROM < backup_device > [ ,...n ] ] [ WITH [ RESTRICTED_USER ] [ [ , ] FILE = { file_number | @file_number } ] [ [ , ] PASSWORD = { password | @password_variable } ] [ [ , ] MEDIANAME = { media_name | @media_name_variable } ] [ [ , ] MEDIAPASSWORD = { mediapassword | @mediapassword_variable } ] [ [ , ] MOVE 'logical_file_name' TO 'operating_system_file_name' ] [ ,...n ] [ [ , ] KEEP_REPLICATION ] [ [ , ] { NORECOVERY | RECOVERY | STANDBY = undo_file_name } ] [ [ , ] { NOREWIND | REWIND } ] [ [ , ] { NOUNLOAD | UNLOAD } ] [ [ , ] REPLACE ] [ [ , ] RESTART ] [ [ , ] STATS [ = percentage ] ] ]
Restaurer une partie d'une base de données :
RESTORE DATABASE { database_name | @database_name_var } < file_or_filegroup > [ ,...n ] [ FROM < backup_device > [ ,...n ] ] [ WITH { PARTIAL } [ [ , ] FILE = { file_number | @file_number } ] [ [ , ] PASSWORD = { password | @password_variable } ] [ [ , ] MEDIANAME = { media_name | @media_name_variable } ] [ [ , ] MEDIAPASSWORD = { mediapassword | @mediapassword_variable } ] [ [ , ] MOVE 'logical_file_name' TO 'operating_system_file_name' ] [ ,...n ] [ [ , ] NORECOVERY ] [ [ , ] { NOREWIND | REWIND } ] [ [ , ] { NOUNLOAD | UNLOAD } ] [ [ , ] REPLACE ] [ [ , ] RESTRICTED_USER ] [ [ , ] RESTART ] [ [ , ] STATS [= percentage ] ] ]
Restauration de fichiers ou de groupes de fichiers spécifiques :
RESTORE DATABASE { database_name | @database_name_var } < file_or_filegroup > [ ,...n ] [ FROM < backup_device > [ ,...n ] ] [ WITH [ RESTRICTED_USER ] [ [ , ] FILE = { file_number | @file_number } ] [ [ , ] PASSWORD = { password | @password_variable } ] [ [ , ] MEDIANAME = { media_name | @media_name_variable } ] [ [ , ] MEDIAPASSWORD = { mediapassword | @mediapassword_variable } ] [ [ , ] MOVE 'logical_file_name' TO 'operating_system_file_name' ] [ ,...n ] [ [ , ] NORECOVERY ] [ [ , ] { NOREWIND | REWIND } ] [ [ , ] { NOUNLOAD | UNLOAD } ] [ [ , ] REPLACE ] [ [ , ] RESTART ] [ [ , ] STATS [ = percentage ] ] ]
Restauration d'un journal des transactions :
RESTORE LOG { database_name | @database_name_var } [ FROM < backup_device > [ ,...n ] ] [ WITH [ RESTRICTED_USER ] [ [ , ] FILE = { file_number | @file_number } ] [ [ , ] PASSWORD = { password | @password_variable } ] [ [ , ] MOVE 'logical_file_name' TO 'operating_system_file_name' ] [ ,...n ] [ [ , ] MEDIANAME = { media_name | @media_name_variable } ] [ [ , ] MEDIAPASSWORD = { mediapassword | @mediapassword_variable } ] [ [ , ] KEEP_REPLICATION ] [ [ , ] { NORECOVERY | RECOVERY | STANDBY = undo_file_name } ] [ [ , ] { NOREWIND | REWIND } ] [ [ , ] { NOUNLOAD | UNLOAD } ] [ [ , ] RESTART ] [ [ , ] STATS [= percentage ] ] [ [ , ] STOPAT = { date_time | @date_time_var } | [ , ] STOPATMARK = 'mark_name' [ AFTER datetime ] | [ , ] STOPBEFOREMARK = 'mark_name' [ AFTER datetime ] ] ]
< backup_device > ::= { { 'logical_backup_device_name' | @logical_backup_device_name_var } | { DISK | TAPE } = { 'physical_backup_device_name' | @physical_backup_device_name_var } }
< file_or_filegroup > ::= { FILE = { logical_file_name | @logical_file_name_var } | FILEGROUP = { logical_filegroup_name | @logical_filegroup_name_var } }
Arguments DATABASE
Demande la restauration complète de la base de données à partir d'une sauvegarde. Si une liste de fichiers et de groupes de fichiers est fournie, seuls ceux-là seront restaurés.
{database_name | @database_name_var}
Base de données dans laquelle est restaurée la base complète ou le journal des transactions. Fourni comme variable (@database_name_var), ce nom peut être spécifié comme la constante chaîne (@database_name_var = database_name) ou comme une variable de type chaîne de caractères, sauf pour les types de données ntext et text.
FROM
Indique les unités de sauvegarde à partir desquelles effectuer la restauration. Si la clause FROM est absente, la restauration de la sauvegarde n'a pas lieu. À la place, la base de données est récupérée. L'omission de la clause FROM peut permettre de tenter la récupération d'une base, restaurée avec l'option NORECOVERY, ou de basculer vers un serveur de secours. Si la clause FROM est omise, il convient de spécifier NORECOVERY, RECOVERY ou STANDBY.
<backup_device>
Spécifie les unités de sauvegarde logiques ou physiques à utiliser pour l'opération de restauration. Il peut s'agir d'un ou plusieurs des éléments suivants :
{'logical_backup_device_name' | @logical_backup_device_name_var} Nom logique, qui doit respecter les règles applicables aux identificateurs, de l'unité de sauvegarde créée par sp_addumpdevice et à partir de laquelle est restaurée la base de données. Fourni comme variable (@logical_backup_device_name_var), le nom de l'unité peut être spécifié comme la constante chaîne (@logical_backup_device_name_var = logical_backup_device_name) ou comme une variable de type chaîne de caractères, sauf pour les types de données ntext et text.
{DISK | TAPE } = 'physical_backup_device_name' | @physical_backup_device_name_var Permet la restauration de sauvegardes à partir de l'unité de disque ou de bande spécifiée. Les types d'unité DISK et TAPE doivent être spécifiés avec le nom réel de l'unité (par exemple, le chemin complet et le nom de fichier). DISK = 'C:\Program Files\Microsoft SQL Server\MSSQL\BACKUP\Mybackup.dat' ou TAPE = '\\.\TAPE0'. Fourni comme variable (@physical_backup_device_name_var), le nom de l'unité peut être spécifié comme la constante chaîne (@physical_backup_device_name_var = 'physcial_backup_device_name') ou comme une variable de type chaîne de caractères, sauf pour les types de données ntext et text. Si vous utilisez un serveur de réseau pourvu soit d'un nom UNC, soit d'une lettre de lecteur redirigé, spécifiez le type d'unité DISK. Le compte sous lequel vous exécutez SQL Server doit disposer d'un accès en lecture (READ) au serveur de réseau ou à l'ordinateur distant pour effectuer une opération RESTORE.
n
Espace réservé qui permet de spécifier plusieurs unités de sauvegarde et des unités de sauvegarde logiques. Le nombre maximal d'unités de sauvegarde permanentes ou logiques est 64.
RESTRICTED_USER
Restreint l'accès à la base de données restaurée aux membres des rôles db_owner, dbcreator ou sysadmin. Dans SQL Server 2000, RESTRICTED_USER remplace l'option DBO_ONLY. DBO_ONLY n'est disponible qu'à des fins de compatibilité ascendante.
Utilisez avec l'option RECOVERY.
Pour plus d'informations, voir Définition des options de base de données.
FILE = { file_number | @file_number }
Identifie le jeu de sauvegardes à restaurer. Par exemple, le file_number 1 indique le premier jeu de sauvegardes sur le support et le file_number 2 désigne le second jeu.
PASSWORD = { password | @password_variable }
Fournit le mot de passe utilisé avec le jeu de sauvegardes. PASSWORD est une chaîne de caractères. Si un mot de passe a été indiqué lors de la création du jeu de sauvegardes, il doit être fourni lors de chaque opération de restauration à partir du jeu.
Pour plus d'informations sur l'utilisation des mots de passe, voir Permissions.
MEDIANAME = {media_name | @media_name_variable}
Indique le nom du support. S'il est fourni, le nom du support doit correspondre au nom du ou des volumes de sauvegarde ; sinon, l'opération de restauration prend fin. En l'absence de nom de support dans l'instruction RESTORE, aucun contrôle n'a lieu pour vérifier la correspondance des noms de support sur les volumes de sauvegarde.
Important L'emploi cohérent de noms de support dans les opérations de sauvegarde et de restauration offre une garantie supplémentaire de sécurité lors du choix des supports de restauration.
MEDIAPASSWORD = { mediapassword | @mediapassword_variable }
Fournit le mot de passe utilisé avec le jeu de supports. MEDIAPASSWORD est une chaîne de caractères.
Si un mot de passe a été indiqué lors du formatage du jeu de supports, il doit être fourni pour accéder à tout jeu de sauvegardes sur le jeu de supports.
MOVE 'logical_file_name' TO 'operating_system_file_name'
Indique que le fichier logical_file_name doit être transféré vers operating_system_file_name. Par défaut, logical_file_name est restauré dans son emplacement d'origine. Si l'instruction RESTORE est utilisée pour copier une base de données dans le même serveur ou un serveur différent, l'option MOVE peut s'avérer nécessaire afin de relocaliser les fichiers de la base et d'éviter toute collision avec des fichiers existants. Chacun des fichiers logiques de la base de données peut être mentionné dans différentes instructions MOVE.
Remarque Utilisez RESTORE FILELISTONLY pour obtenir une liste des fichiers logiques contenus dans le jeu de sauvegardes.
Pour plus d'informations, voir Copie des bases de données.
n
Espace réservé qui indique la possibilité de déplacer plusieurs fichiers logiques en spécifiant plusieurs instructions MOVE.
NORECOVERY
Permet d'empêcher, pendant la restauration, l'annulation des transactions non validées. Si un autre journal des transactions doit être appliqué, il convient de spécifier soit NORECOVERY soit STANDBY. Si aucune des options NORECOVERY, RECOVERY ou STANDBY n'est spécifiée, RECOVERY est choisie par défaut.
SQL Server exige que l'option WITH NORECOVERY soit utilisée sur toutes les instructions RESTORE, sauf la dernière, en cas de restauration d'une sauvegarde de base de données et de plusieurs journaux de transactions, ou lorsque plusieurs instructions RESTORE sont nécessaires (par exemple en cas de sauvegarde complète d'une base suivie par une sauvegarde différentielle).
Remarque Lorsque vous spécifiez l'option NORECOVERY, la base de données n'est pas utilisable dans cet état intermédiaire de non-récupération.
Employée lors de la restauration d'un fichier ou d'un groupe de fichiers, NORECOVERY oblige la base de données à rester dans l'état de restaurationen mode restaurationrestaurée?? lorsque la restauration est terminée. Cette option est utile dans l'une des situations suivantes :
un script de restauration est en cours d'exécution et le journal est toujours appliqué ;
une séquence de restaurations de fichiers est exécutée et il n'est pas nécessaire que la base soit utilisable entre les deux opérations de restauration. RECOVERY
Permet d'imposer, pendant la restauration, l'annulation des transactions non validées. Après la récupération, la base de données est prête à l'emploi.
Si d'autres opérations RESTORE (RESTORE LOG ou RESTORE DATABASE) sont planifiées, il faut spécifier NORECOVERY ou STANDBY.
Si aucune des options NORECOVERY, RECOVERY ou STANDBY n'est spécifiée, RECOVERY est choisie par défaut. Lors de la restauration de jeux de sauvegardes à partir d'une version antérieure de SQL Server, il peut s'avérer nécessaire d'opérer une mise à niveau des bases de données. Cette mise à niveau est réalisée automatiquement lorsque WITH RECOVERY est spécifiée. Pour plus d'informations, reportez-vous à Sauvegardes du journal des transactions.
STANDBY = undo_file_name
Indique le nom du fichier d'annulation afin que la récupération puisse être annulée. La taille requise pour le fichier d'annulation dépend du volume d'actions d'annulation issues des transactions non validées. Si aucune des options NORECOVERY, RECOVERY ou STANDBY n'est spécifiée, RECOVERY est choisie par défaut.
STANDBY permet la constitution d'une base de données accessible en lecture seule entre les restaurations des journaux de transactions ; elle est utilisable avec des serveurs de secours à chaud ou pour des récupérations spéciales, quand il est utile d'inspecter la base de données entre les restaurations.
Si le fichier d'annulation indiqué n'existe pas, SQL Server le crée. Si le fichier existe, SQL Server l'écrase.
Le même fichier d'annulation est utilisable pour plusieurs restaurations consécutives de la même base de données. Pour plus d'informations, voir Utilisation des serveurs de secours.
Important S'il n'y a plus de place sur le disque contenant le fichier d'annulation indiqué, la restauration s'arrête.
STANDBY n'est pas autorisée lorsqu'une mise à niveau de base de données est nécessaire.
KEEP_REPLICATION
Indique à l'opération de restauration de conserver les paramètres de réplication lors de la restauration d'une base de données publiée sur un serveur autre que celui sur lequel elle a été créée. Vous devez utiliser KEEP_REPLICATION lorsque vous intégrez l'envoi de journaux dans la configuration de la réplication. Cette option évite la suppression des paramètres de réplication lorsqu'une sauvegarde de base de données ou de journal est restaurée sur un serveur de secours à chaud et que la base de données est récupérée. Il est impossible de spécifier cette option lors de la restauration d'une sauvegarde avec l'option NORECOVERY.
NOUNLOAD
Indique que la bande ne sera pas démontée automatiquement du lecteur de bande après une restauration. NOUNLOAD reste valide jusqu'à ce que UNLOAD soit spécifiée. Cette option n'est utilisée que dans le cas d'unités de bande. Si une unité autre qu'un lecteur de bandes est utilisée pour la restauration, cette option est ignorée.
NOREWIND
Indique que SQL Server conservera la bande ouverteactive? après l'opération de sauvegarde. Le fait de maintenir la bande ouverteactive?? empêche aux autres processus d'y accéder. La bande n'est libérée qu'à l'émission d'une instruction REWIND ou UNLOAD ou à l'arrêt du serveur. Une liste des bandes ouvertesactives peut être obtenue en interrogeant la table sysopentapes de la base de données master.
NOREWIND implique NOUNLOAD. Cette option n'est utilisée que dans le cas d'unités de bande. Si une unité autre qu'un lecteur de bandes est utilisée pour la restauration, cette option est ignorée.
REWIND
Indique que SQL Server libérera et rembobinera la bande. Si ni NOREWIND ni REWIND n'est spécifié, REWIND est la valeur par défaut. Cette option n'est utilisée que dans le cas d'unités de bande. Si une unité autre qu'un lecteur de bandes est utilisée pour la restauration, cette option est ignorée.
UNLOAD
Indique que la bande est automatiquement rebobinée et démontée lorsque la restauration est terminée. UNLOAD est définie par défaut lorsqu'une nouvelle session utilisateur démarre. Elle reste valide jusqu'à ce que NOUNLOAD soit spécifiée. Cette option n'est utilisée que dans le cas d'unités de bande. Si une unité autre qu'un lecteur de bandes est utilisée pour la restauration, cette option est ignorée.
REPLACE
Indique que SQL Server doit créer la base de données spécifiée et ses fichiers même s'il en existe une autre de même nom. En pareil cas, la base existante est supprimée. Lorsque l'option REPLACE n'est pas précisée, une vérification a lieu (pour éviter le remplacement accidentel d'une autre base de données). Cette vérification garantit que l'instruction RESTORE DATABASE ne va pas restaurer la base de données sur le serveur courant si :
la base de données nommée dans l'instruction RESTORE existe déjà sur le serveur en cours, et
le nom de la base est différent du nom enregistré dans le jeu de sauvegarde. REPLACE permet également à RESTORE de remplacerécraser?? un fichier existant dont la vérification permet d'établir qu'il n'appartient pas à la base de données en cours de restaurationdont la vérification ne permet pas d'établir qu'il appartient à la base de données en cours de restaurationimpossible à vérifier du fait de son appartenance à la base de données en cours de restaurationimpossible à vérifier en tant que composante de la base de données en cours de restauration. Normalement, RESTORE refuse d'écraser les fichiers existants.
RESTART
Indique que SQL Server doit redémarrer une restauration qui a été interrompue. RESTART relance la restauration au point de son interruption.
Important Cette option ne peut être utilisée que pour les restaurations dirigées à partir de supports de bandes ou des restaurations couvrant plusieurs volumes de bandes.
STATS [= percentage]
Affiche un message à chaque fois qu'un autre pourcentage se termine et sert à évaluer l'état d'avancement de l'opération. Si percentage est omis, SQL Server affiche un message à chaque incrément de 10 pour-cent.
PARTIAL
Spécifie une opération de restauration partielle. Des erreurs de l'application ou de l'utilisateur ne concernent souvent qu'une partie isolée de la base de données, telle qu'une table. C'est par exemple le cas lors d'une mise à jour non valide ou de la suppression accidentelle d'une table. Afin que les données soient récupérées à la suite de tels événements, SQL Server offre un mécanisme qui permet de restaurer une partie de la base de données sur un autre emplacement puis de copier les données endommagées ou manquantes dans la base de données d'origine.
La granularité de la restauration partielle est le groupe de fichiers de la base de données. Le fichier et le groupe de fichiers principaux sont toujours restaurés, ainsi que les fichiers que vous spécifiez et les groupes de fichiers leur correspondant. Le résultat est un sous-ensemble de la base de données. Les groupes de fichiers qui ne sont pas restaurés sont marqués comme étant hors connexion et ne sont pas accessibles.
Pour plus d'informations, voir Opérations de restauration d'une base de données partielle.
<file_or_filegroup>
Indique le nom des fichiers logiques ou des groupes de fichiers logiques à inclure dans la restauration de la base de données. Il est possible de mentionner plusieurs fichiers ou groupes de fichiers.
FILE = {logical_file_name | @logical_file_name_var} Désigne un ou plusieurs fichiers à inclure dans la restauration de la base de données.
FILEGROUP = {logical_filegroup_name | @logical_filegroup_name_var} Désigne un ou plusieurs groupes de fichiers à inclure dans la restauration de la base de données. Lorsque cette option est utilisée, le journal des transactions doit être appliqué aux fichiers de la base après la restauration du dernier fichier ou groupe de fichiers afin que les fichiers rétablis soient cohérents avec le reste de la base. Si aucun des fichiers restauré n'a été modifié depuis la dernière sauvegarde, il n'est pas nécessaire d'appliquer le journal des transactions. L'instruction RESTORE informe l'utilisateur de cette situation.
n
Espace réservé indiquant qu'il est possible de spécifier plusieurs fichiers et groupes de fichiers. Le nombre des fichiers ou de groupes de fichiers n'est pas limité.
LOG
Spécifie qu'une sauvegarde du journal des transactions doit être appliquée à cette base de données. Les journaux de transactions doivent être sollicités dans un ordre séquentiel. SQL Server vérifie le journal des transactions sauvegardé pour s'assurer que les transactions vont être chargées dans la base de données correcte et dans l'ordre adéquat. Pour appliquer plusieurs journaux de transactions, utilisez l'option NORECOVERY sur toutes les opérations de restauration sauf la dernière. Pour plus d'informations, reportez-vous à Sauvegardes du journal des transactions.
STOPAT = date_time | @date_time_var
Indique que la base de données doit être restaurée dans l'état qui était le sien à la date et à l'heure spécifiées. Si une variable est employée pour STOPAT, elle doit être du type varchar, char, smalldatetime ou datetime. Seuls les enregistrements de journal écrits avant la date et l'heure spécifiées seront appliqués à la base de données.
Remarque Si vous spécifiez une heure STOPAT postérieure à l'opération RESTORE LOG, la base de données reste dans son état de non restauration, comme si RESTORE LOG avait été exécuté avec NORECOVERY.
STOPATMARK = 'mark_name' [ AFTER datetime ]
Spécifie l'exécution de la récupération jusqu'à la marque indiquée, transaction contenant la marque comprise. Si la clause AFTER datetime est omise, la récupération s'arrête à la première marque portant le nom spécifié. Si le paramètre AFTER datetime est spécifié, la récupération s'arrête à la première marque portant le nom spécifié et située exactement à datetime ou après.
STOPBEFOREMARK = 'mark_name' [ AFTER datetime ]
Spécifie l'exécution de la récupération jusqu'à la marque indiquée, transaction contenant la marque non comprise. Si la clause AFTER datetime est omise, la récupération s'arrête à la première marque portant le nom spécifié. Si le paramètre AFTER datetime est spécifié, la récupération s'arrête à la première marque portant le nom spécifié et située exactement à datetime ou après.
Notes Lors de la restauration, la base de données spécifiée ne peut pas être utilisée. Toutes les données que la base contient sont remplacées par les données restaurées.
Pour plus d'informations sur la récupération des bases de données, voir Sauvegarde et restauration de bases de données.
Les opérations de restauration inter-plates-formes, impliquant éventuellement des types de processeurs différents, peuvent être réalisées tant que le classement de la base de données est pris en charge par le système d'exploitation. Pour plus d'informations, voir Principes du classement SQL Server.
Types de restaurations Les types de restaurations gérées par SQL Server sont les suivants :
restauration complète de la base de données, qui récupère toute la base ;
restauration complète de la base de données et restauration différentielle. Restaure une sauvegarde différentielle avec l'instruction RESTORE DATABASE ;
restauration du journal des transactions ;
restauration de fichiers et de groupes de fichiers individuels. Les fichiers et groupes de fichiers sont restaurés à partir d'une sauvegarde de fichiers ou de groupes de fichiers, ou à partir d'une sauvegarde complète de la base de données. En cas de restauration de fichiers ou de groupes de fichiers, vous devez appliquer un journal des transactions. En outre, les sauvegardes différentielles de fichiers peuvent être restaurées après une restauration complète de fichiers. Pour plus d'informations, reportez-vous à Sauvegardes du journal des transactions.
création et maintien d'un serveur en attente ou d'un serveur en attente à chaud. Pour plus d'informations sur les serveurs en attente, reportez-vous à Utilisation des serveurs de secours. Les mots-clés suivants peuvent être utilisés dans la syntaxe de l'instruction RESTORE pour garantir la compatibilité ascendante :
Le mot-clé LOAD peut être utilisé à la place de RESTORE.
Le mot-clé TRANSACTION peut être utilisé à la place de LOG.
Le mot-clé DBO_ONLY peut être utilisé à la place de RESTRICTED_USER. Paramètres de bases de données et restauration Lors de l'utilisation de l'instruction RESTORE DATABASE, les options de la base qui sont récupérables (c'est-à-dire toutes les options paramétrables de ALTER DATABASE sauf offline et les options de réplication merge publish, published et subscribed) sont rétablies avec les valeurs en vigueur au moment ou l'opération de sauvegarde a pris fin.
Remarque Il s'agit là d'une différence par rapport aux versions antérieures de Microsoft SQL Server.
Cependant, l'utilisation de WITH RESTRICTED_USER annule ce nouvel état de fait pour le paramètre de l'option d'accès utilisateur. Ce paramètre est toujours défini suivant une instruction RESTORE qui inclut l'option WITH RESTRICTED_USER.
Pour plus d'informations, voir Sauvegarde et restauration de bases de données de réplication.
Tables historiques de restauration SQL Server inclut les tables historiques de restauration suivantes, qui permettent un suivi de l'activité RESTORE pour chaque système informatique :
restorefile
restorefilegroup
restorehistory
Remarque Lorsqu'une instruction RESTORE est effectuée, les tables historiques de sauvegarde sont modifiées.
La restauration d'une base de données master endommagée est réalisée à l'aide d'une procédure spéciale. Pour plus d'informations, voir Restauration de la base de données master.
Les sauvegardes créées avec Microsoft® SQL ServerT 2000 ne peuvent pas être restaurées dans une version antérieure de SQL Server.
Autorisations Si la base de données restaurée n'existe pas, l'utilisateur doit posséder les autorisations CREATE DATABASE afin de pouvoir exécuter RESTORE. Si elle existe, les autorisations RESTORE reviennent par défaut aux membres des rôles fixes sysadmin et dbcreator du serveur et au propriétaire (dbo) de la base.
Les autorisations RESTORE sont attribuées aux rôles dont les informations de qualité de membre sont toujours immédiatement accessibles à partir dupar le serveur. Étant donné que la qualité de membre de rôle de base de données fixe ne peut être contrôlée que lorsque la base de données est accessible et non endommagée, ce qui n'est pas toujours le cas lorsque RESTORE est exécutée, les membres du rôle de base de données fixe db_owner ne détiennent pas les autorisations RESTORE.
En outre, l'utilisateur peut spécifier des mots de passe pour un jeu de supports, un jeu de sauvegardes ou pour les deux jeux. Lorsqu'un mot de passe est défini sur un jeu de supports, il ne suffit pas à un utilisateur d'être membre des rôles de serveur ou de base de données fixes appropriés pour effectuer une sauvegarde. Il doit également fournir le mot de passe de support. De même, l'opération RESTORE n'est possible que si les mots de passe de support et de jeu de sauvegardes corrects sont spécifiés dans la commande de restauration.
La définition de mots de passe pour les jeux de sauvegardes et de supports est facultative dans l'instruction BACKUP. Les mots de passe empêchent les opérations non autorisées de restauration et d'ajouts de jeux de sauvegardes au support par le biais des outils SQL Server 2000, mais pas l'écrasement du support avec l'option FORMAT.
Par conséquent, les mots de passe permettent de protéger le contenu du support contre tout accès non autorisé effectué par le biais des outils SQL Server mais pas contre une destruction éventuelle. Les mots de passe ne constituent pas une protection totale contre les accès non autorisés au contenu du support car les données des jeux de sauvegardes ne sont pas cryptées et peuvent théoriquement être analysées par des programmes conçus à cet effet. Lorsque la sécurité est fondamentale, il est important que les personnes non autorisées ne puissent pas accéder au support.
Spécifier un mot de passe alors qu'aucun n'est défini constitue une erreur.
Exemple
Remarque Tous les exemples fournis partent du principe qu'une sauvegarde complète de la base de données a été effectuée.
A. Restaurer d'une base de données complète
Remarque La base de données MyNwind est prise comme exemple.
Cet exemple concerne la restauration d'une sauvegarde de base de données complète.
RESTORE DATABASE MyNwind FROM MyNwind_1
B. Restaurer une base de données complète et d'une sauvegarde différentielle Cet exemple concerne la restauration d'une sauvegarde de base de données complète suivi par une sauvegarde différentielle. En outre, la restauration du second jeu de sauvegardes sur le support est effectuée. La sauvegarde différentielle a été ajoutée à l'unité de sauvegarde contenant la sauvegarde de la base complète.
RESTORE DATABASE MyNwind FROM MyNwind_1 WITH NORECOVERY RESTORE DATABASE MyNwind FROM MyNwind_1 WITH FILE = 2
C. Restaurer une base de données en utilisant la syntaxe RESTART Dans cet exemple, l'option RESTART est utilisée pour redémarrer une opération RESTORE interrompue par une coupure de courant sur le serveur.
-- This database RESTORE halted prematurely due to power failure. RESTORE DATABASE MyNwind FROM MyNwind_1 -- Here is the RESTORE RESTART operation. RESTORE DATABASE MyNwind FROM MyNwind_1 WITH RESTART
D. Restaurer une base de données et déplacement des fichiers Dans cet exemple, une base de données complète et un journal des transactions sont restaurés puis la base de données restaurée est déplacée vers le répertoire C:\Program Files\Microsoft SQL Server\MSSQL\Data.
RESTORE DATABASE MyNwind FROM MyNwind_1 WITH NORECOVERY, MOVE 'MyNwind' TO 'c:\Program Files\Microsoft SQL Server\MSSQL\Data\NewNwind.mdf', MOVE 'MyNwindLog1' TO 'c:\Program Files\Microsoft SQL Server\MSSQL\Data\NewNwind.ldf' RESTORE LOG MyNwind FROM MyNwindLog1 WITH RECOVERY
E. Copier une base de données en utilisant BACKUP et RESTORE Cet exemple utilise à la fois les instructions BACKUP et RESTORE pour réaliser une copie de la base de données Northwind. L'instruction MOVE entraîne la restauration des données et du fichier journal dans des emplacements spécifiés. L'instruction RESTORE FILELISTONLY permet de déterminer le nombre et le nom des fichiers de la base de données en cours de restauration. La nouvelle copie de la base de données s'appelle TestDB. Pour plus d'informations, voir RESTORE FILELISTONLY.
BACKUP DATABASE Northwind TO DISK = 'c:\Northwind.bak' RESTORE FILELISTONLY FROM DISK = 'c:\Northwind.bak' RESTORE DATABASE TestDB FROM DISK = 'c:\Northwind.bak' WITH MOVE 'Northwind' TO 'c:\test\testdb.mdf', MOVE 'Northwind_log' TO 'c:\test\testdb.ldf' GO
F. Limitater le temps de la restauration en utilisant la syntaxe STOPAT, avec plusieurs unités Dans cet exemple, la restauration rétablit une base de données telle qu'elle était le 15 avril 1998 à 12.00 heures et implique plusieurs journaux et plusieurs unités de sauvegarde.
RESTORE DATABASE MyNwind FROM MyNwind_1, MyNwind_2 WITH NORECOVERY RESTORE LOG MyNwind FROM MyNwindLog1 WITH NORECOVERY RESTORE LOG MyNwind FROM MyNwindLog2 WITH RECOVERY, STOPAT = 'Apr 15, 1998 12:00 AM'
G. Restaurer avec la syntaxe TAPE Cet exemple restaure une sauvegarde de base de données complète à partir d'une unité de sauvegarde de type TAPE.
RESTORE DATABASE MyNwind FROM TAPE = '\\.\tape0'
H. Restaurer en utilisant la syntaxe FILE et FILEGROUP Cet exemple restaure une base de données avec deux fichiers, un groupe de fichiers et un journal des transactions.
RESTORE DATABASE MyNwind FILE = 'MyNwind_data_1', FILE = 'MyNwind_data_2', FILEGROUP = 'new_customers' FROM MyNwind_1 WITH NORECOVERY -- Restore the log backup. RESTORE LOG MyNwind FROM MyNwindLog1
I. Restaurer le journal des transactions jusqu'à la marque Cet exemple restaure le journal des transactions jusqu'à la marque « RoyaltyUpdate ».
BEGIN TRANSACTION RoyaltyUpdate WITH MARK 'Update royalty values' GO USE pubs GO UPDATE roysched SET royalty = royalty * 1.10 WHERE title_id LIKE 'PC%' GO COMMIT TRANSACTION RoyaltyUpdate GO --Time passes. Regular database --and log backups are taken. --An error occurs. USE master GO
RESTORE DATABASE pubs FROM Pubs1 WITH FILE = 3, NORECOVERY GO RESTORE LOG pubs FROM Pubs1 WITH FILE = 4, STOPATMARK = 'RoyaltyUpdate'
Voir aussi
BACKUP
Utilitaire bcp
BEGIN TRANSACTION
Types de données
RESTORE FILELISTONLY
RESTORE HEADERONLY
RESTORE LABELONLY
RESTORE VERIFYONLY
sp_addumpdevice
Utilisation des jeux et familles de supports
Utilisation des identificateurs
©1988-2000 Microsoft Corporation. Tous droits réservés.
|