Table des matières
    Réparation de la base de données SQL

    [Corrigé] Erreur SQL Server 3156 La base de données ne peut pas être restaurée


    Table des matières

      Résumé: Lorsque vous exécutez la commande DBCC CHECKDB pour réparer une base de données corrompue, vous pouvez obtenir le message d'erreur 8930. Dans cet article, vous apprendrez comment résoudre le message d'erreur 8930 dans SQL Server. Vous apprendrez également à connaître un logiciel avancé d'extraction de sauvegarde SQL qui peut vous aider à restaurer les fichiers de sauvegarde facilement.

      Introduction

      Le message d’erreur 3156 de SQL Server est lié à la restauration d’une base de données. Nous montrerons différentes alternatives pour résoudre le message d’erreur.

      Le message d’erreur est le suivant :

      Erreur SQL 3156 : Erreur SQL 3156 : Le fichier ‘nom de fichier’ ne peut pas être restauré dans ‘C:\NProgram Files\NMicrosoft SQL Server\NMSSQL.3\NMSSQL\NFTData\NNom’. Utilisez WITH MOVE pour identifier un emplacement valide pour le fichier.

      Vous pouvez également suivre les étapes mentionnées ci-dessous.

      Exigences

      Cet article est adapté à toutes les versions de SQL Server.

      • Programme d’installation de SQL Server
      • Installateur SSMS

      Pour commencer

      La première chose à faire est de vérifier si l’utilisateur qui restaure le fichier dispose des droits d’accès au fichier spécifié.

      Pour le tester, allez dans l’explorateur Windows et copiez-collez le chemin d’accès mentionné dans le message d’erreur :

      Explorateur Windows et copier-coller le chemin d'accès mentionné

      Si vous n’avez pas les permissions, rétablissez un autre chemin avec les permissions sur le dossier ou accordez les permissions à l’utilisateur dans le dossier.

      Pour modifier le chemin de restauration, dans la fenêtre Restaurer la base de données, cliquez sur l’onglet Fichiers :

      Fenêtre de restauration de la base de données

      Si vous cochez la case Relocaliser tous les fichiers dans le dossier, vous pouvez modifier l’emplacement de restauration à un endroit valide.

      changer l'emplacement de la restauration en un endroit valide

      Si vous n’aimez pas l’interface utilisateur, vous pouvez utiliser les commandes T-SQL :

      USE [master]
      RESTORE DATABASE [databasename] FROM DISK = N'C:\NProgram Files\NMicrosoft SQL Server\NMSSQL14.MSSQLSERVER\NMSSQL\NBackup\Naw.bak' WITH FILE = 1,  
      MOVE N'filename' TO C:\NProgram Files\NMicrosoft SQL Server\NMSSQL.3\NMSSQL\NFTData\Name'.mdf',  
      MOVE N'Logfile_log' TO N'C:\sql\logfile_log.ldf', NOUNLOAD, STATS = 5

      Le code utilise la clause MOVE pour déplacer les fichiers vers un autre emplacement.

      Si votre sauvegarde est endommagée, vous pouvez utiliser Stellar Toolkit for MS SQLSolution. Ce logiciel comprend trois modules :

      • Le logiciel MS SQL Database répare les fichiers de données SQL Server (MDF et NDF)
      • Le logiciel MS SQL Password Recovery récupère les mots de passe perdus de SQL Server (User et SA).
      • Le logiciel MS SQL Backup Recovery récupère les données des fichiers .BAK endommagés ou corrompus. Dans cet article, nous utiliserons ce logiciel.
      récupère les données d'un fichier endommagé

      Ouvrez l’option Extraire de MS SQL Backup et sélectionnez le fichier bak. Les fichiers de sauvegarde ont généralement l’extension bak et sont habituellement stockés dans le dossier program files\SQL Server\MSSQLXX.MSSQLSERVER\MSSQL\Backup, cependant, vous pouvez personnaliser et enregistrer les sauvegardes dans un endroit différent si vous le souhaitez.

      Sauvegarde et sélection du fichier bak

      Il existe également une option permettant de rechercher la sauvegarde si vous ne savez pas où elle se trouve. L’option Rechercher dans spécifie l’endroit où commencer la recherche et l’option Rechercher dans le dossier lance la recherche :

      Rechercher dans le dossier

      Une fois le fichier de sauvegarde sélectionné, appuyez sur le bouton Numériser :

       appuyez sur le bouton Numériser

      Le bouton “Scan” lancera la réparation de la sauvegarde et le logiciel vous offrira une fenêtre pour sélectionner le jeu de sauvegarde. Vous pouvez vérifier le nom du jeu de sauvegarde, la date :

      vérifier le nom du jeu de sauvegarde

      Une fois le jeu de sauvegarde sélectionné, cliquez sur le bouton Suivant et sélectionnez la version du serveur SQL :

      appuyez sur le bouton Suivant et sélectionnez le serveur SQL

      Vous pouvez travailler avec n’importe quelle version de SQL Server et il existe également des options pour travailler avec des fichiers créés sur une version et convertis vers une nouvelle version. Appuyez sur OK.

      Le logiciel affiche tous les objets SQL Server disponibles dans la sauvegarde, y compris les tables, les vues, les synonymes, les procédures stockées, les déclencheurs, les séquences, les règles, les valeurs par défaut, les assemblages, etc :

      Objets SQL Server dans la sauvegarde, y compris les tables

      Il est possible de prévisualiser les données à l’intérieur des tableaux :

      Prévisualisation des données contenues dans les tableaux

      Vous pouvez également vérifier le code T-SQL des vues :

      vérifier le code T-SQL des vues

      Une fois les objets sélectionnés, appuyez sur le bouton Enregistrer pour sauvegarder les informations.

      appuyez sur le bouton Enregistrer pour sauvegarder les informations

      Il y a 4 options :

      backup extractor

      L’une consiste à enregistrer les informations dans le serveur SQL (MSSQL), l’autre à les enregistrer dans un format de valeurs séparées par des virgules (CSV), dans le langage de balisage hypertexte (HTML) ou dans Excel (XLS). Dans cet exemple, nous enregistrerons les informations dans MSSQL.

      Vous pouvez enregistrer la sauvegarde dans une nouvelle base de données ou dans une base de données existante (base de données active). Vous pouvez également spécifier le nom de l’instance et le type d’authentification. Vous pouvez utiliser l’emplacement par défaut ou un emplacement personnalisé :

      Nouvelle base de données ou dans une base de données existante

      Une fois la sauvegarde terminée, vous pourrez voir la base de données restaurée dans SQL Server :

      base de données restaurée dans SQL Server

      Conclusion

      Dans cet article, nous présentons différentes façons de résoudre le message d’erreur 3156 du serveur SQL. Nous montrons comment déplacer l’emplacement de la base de données restaurée et aussi une façon de réparer la sauvegarde si elle est endommagée.

      Enfin, nous montrons comment utiliser Stellar Toolkit for MS SQL pour récupérer une sauvegarde endommagée et restaurer les informations. Il est possible de restaurer en MSSQL, HTML, Excel ou CSV.

      Was this article helpful?

      No NO

      A propos de l'auteur

      Himanshu Shakya

      Himanshu is a Tech Enthusiast and Blogger at Stellar, with expertise in data recovery solutions and a keen interest in emerging technologies. Fluent in Japanese, he brings a diverse skill set to his role, contributing to global tech conversations. Outside of work, Himanshu enjoys playing chess, sharpening his strategic thinking and problem-solving skills in his spare time.

      Article similaire

      POURQUOI STELLAR® EST LE LEADER MONDIAL

      Pourquoi choisir Stellar?

      • 0M+

        Clients

      • 0+

        Années d'excellence

      • 0+

        Ingénieurs R&D

      • 0+

        Pays

      • 0+

        Témoignages

      • 0+

        Récompenses reçues