Logiciel de récupération pour bases de données MS SQL : Comment réparer SQL Server
Comment réparer une base de données SQL Server
SQL Server Recovery Kit
SQL Server Recovery Kit aide à réparer des fichiers MDF corrompus de toutes les versions de MS SQL Server
Comment récupérer un stockage Microsoft SQL Server endommagé
Comment réparer une base de données Microsoft SQL Server corrompue/suspendue à l'aide de SQL Server Recovery Kit. Comment restaurer les données d'un fichier *.mdf corrompu - instructions étape par étape:
- Télécharger SQL Server Recovery Kit ici: https://all-recovery-inc.com/download/SQLServerRecoveryKitInstall.exe
- Installer SQL Server Recovery Kit
- Lancer SQL Server Recovery Kit
- Sélectionner le fichier *.mdf corrompu
- Prévisualiser les données qui peuvent être récupérées dans la base de données Microsoft SQL Server corrompue
- Choisir la méthode d'exportation des données
- Sauvegarder sur le disque en tant que scripts SQL
- Exécuter directement le script SQL sur la base de données
- Sélectionner l'information à réparer et enregistrer
- Cliquez sur Start Recovery (Commencer la restauration)
Comment récupérer une base de données Microsoft SQL Server endommagée?
SQL Server Recovery Kit est une solution logicielle pour fichiers de base de données MS SQL Server endommagés.
Caractéristiques du logiciel MDF Recovery:
- Récupère les bases de données illisibles dont l’état est suspendue
- Permet de réparer les bases de données SQL Server corrompues de différentes versions de Microsoft SQL Server : SQL Server 7/2000/2005/2008/2008 R2/2012/2014/2016/2019
- Récupère les éléments les plus importants des bases de données MS SQL : types de données, données des cellules des tables, affichages, procédures conservées, fonctions personnalisées, déclencheurs, index, clés étrangères et primaires, restrictions, et autres
- Répare les bases de données SQL gardées dans plusieurs fichiers (fichiers *.mdf + *.ndf)
- Répare les tables des partitions endommagées pendant la récupération des fichiers mdf
- Le logiciel SQL MDF Recovery peut exporter les données récupérées directement sur Microsoft SQL Server
- Enregistre sur un disque dur les données récupérées en tant que scripts SQL
- Exporte les données directement dans une nouvelle base de données
- Sélectionne des données spécifiques à enregistrer
- Peut récupérer un serveur SQL sous Windows 98/Me/2000/XP/Vista/7/8/10/11/ Server 2003/2008/2012/2016
- Le logiciel de récupération de bases de données MS SQL comprend une interface multilingue en 14 langues
- Prévisualisation les éléments et données récupérés d’un fichier MDF corrompu
- Récupère Vos Données après une Attaque/Cryptage de Logiciel Rançonneur
- MDF Viewer Tool
Cet outil très optimisé pour réparer une base SQL Server peut dépanner une base de données et un fichier *.mdf, quel que soit l’ampleur des dégâts ou de la corruption.
Comment récupérer une base de données SQL Server corrompue
Pour récupérer les données d’une base de données SQL Server endommagée, vous pouvez utiliser le backup le plus récent ou essayer SQL Server Recovery Kit. Il est très probable qu’avec SQL Server Recovery Kit votre base de données SQL Server retrouve son état original avant d’être corrompue. Afin de vérifier cette affirmation, procédez comme suit:
- Téléchargez, installez, et lancez la version DÉMO de SQL Server Recovery Kit.
- Sélectionnez un fichier MDF pour analyse.
- Exécutez une analyse d’une base de données SQL Server.
- Visualisez la liste des tables récupérées.
- Visualisez les données des tables récupérées.
- Visualisez la liste des objets d’utilisateur récupérés.
- Configurez les options de stockage.
- Sélectionnez les données et les objets à sauvegarder.
- Sauvegardez les données - disponible avec la version complète.

Comment réparer la base de données SQL Server

Si vous avez besoin de réparer rapidement le fichier MDF d’une base de données SQL Server endommagée, alors en quelques clics SQL Server Recovery Kit vous le permet. Une nouvelle base de données ou des fichiers script SQL sur disque sont générés en copiant et en réparant les données du fichier MDF corrompu. L’outil ne modifie pas les fichiers MDF existants de SQL Server. Toutes les données récupérées des fichiers *.mdf sont transférées dans une nouvelle base de données ou dans des fichiers script SQL.
Nécessite:
- Windows 98/Me/2000/XP/Vista/7/8/10/11 ou Windows Server 2003/2008/2012/2016 et versions ultérieures
- Microsoft SQL Server: 7/2000/2005/2008/2008 R2/2012/2014/2016/2019
Réponse:
Il existe deux façons d’enregistrer les données, prises en charge par SQL Server Recovery Kit:
- Vous pouvez enregistrer les scripts SQL sur le disque dur, ils vont créer des objets de base de donnée, des tables, par exemple, et insérer les données dans ces tables.
- Vous pouvez également lancer les scripts dans les bases de données, définies par l’utilisateur, ces scripts sont écrits en langue SQL.
Notez, s’il vous plaît, que les scripts SQL peuvent être différents, bien qu’ils se basent sur les mêmes fichiers de la base de données. Cela peut avoir lieu à cause des particularités de la syntaxe dans les requêtes, qui sont exécutées pour la connexion directe au serveur au moyen d’ADO ainsi que dans les requêtes SQL, effectuées dans l’environnement de l’Analyseur de requêtes qui est fourni avec MS SQL Server (l’emploi de :, de la commande Aller, etc.). La première méthode est plus sûre, tandis que la deuxième méthode est plus pratique.
Conversion des données en scripts et la sauvegarde sur le disque
1. Mise en correspondance des données enregistrees
Si vous avez choisi d’enregistrer les données sur le disque, SQL Server Recovery Kit va créer un sous-répertoire, qui va comprendre le nom du fichier source MDF, ce sous-répertoire est créé dans le répertoire défini par l'utilisateur et tous les scripts y seront placés. Tous les scripts sont nommés selon la règle, les noms comprennent un mot et un chiffre. Le mot indique le rôle du script, le chiffre indique son numéro. Il y a beaucoup de types de scripts, par exemple:
- Types*.sql – les scripts vont créer des types de données, définies par l'utilisateur
- Tables*.sql – les scripts vont créer des tables
- Indexes*.sql – les scripts vont créer des clés primaires et des index
- ForeignKeys*.sql – les scripts vont créer des clés étrangères.
- Procedure*.sql – les scripts vont créer des procédures enregistrées.
- Function*.sql – les scripts vont créer des fonctions, définies par l'utilisateur.
- View*.sql – les scripts vont créer des affichages.
- Triggers*.sql – les scripts vont créer des déclencheurs.
- Data*.sql – les scripts vont insérer les données dans les tables.
Le numéro d'ordre de script ne contient aucune donnée utile, il ne désigne pas l’ordre d’exécution du script ni aucune autre information. Ces numéros sont utilisés uniquement pour diviser les données et les enregistrer dans de nombreux petits documents au lieu d’un grand fichier. Les utilisateurs peuvent définir la taille maximum du fichier avec le script SQL. De plus les utilisateurs devraient prendre note de la numération des fichiers de données. Ce qui doit être noté, c’est que chaque fichier du Type de données peut contenir des données pour une table seulement. Les fichiers avec les numéros d’ordre contiennent toutes les données pour chaque table.
Remarque: S’il manque des numéros pour certains fichiers, cela veut dire que certaines tables ne contiennent aucune donnée.
2. Ordre d’execution des scripts
Vous pouvez voir sur cette image l’ordre recommandé d’exécution des scripts:

L’ordre d’exécution des scripts dépend des restrictions existantes pour les données existantes et de la structure de la table. Veuillez prêter une attention particulière aux facteurs suivants:
- Veuillez indiquer la clé primaire correspondante si vous aimeriez créer une clé secondaire. Pour cette raison, ces opérations sont enregistrées dans des fichiers différents, qui doivent être lancés dans cet ordre.
- Avant de créer des index et des clés secondaires, le programme remplit les tables. C’est obligatoire, puisque la vérification de l'intégrité référentielle est effectuée lorsque la table avec les clés secondaires définies est remplie. Quand les tables avec les clés secondaires sont remplies avant les tables avec les clés primaires correspondantes, il s’agit d’une erreur. De plus, cette méthode présente une autre particularité. Si les données récupérées sont en conflit avec la clé primaire, les index uniques, etc., dans ce cas, la table será remplie avec des données quand même, mais les restrictions ne seront pas créées (index, clé primaire, etc.). Si les utilisateurs exigent un autre comportement, ils peuvent sélectionner l’ordre d’exécution des scripts eux-mêmes.
- La création des objets de procédures, fonctions, affichages et déclencheurs dans la base de données présente certaines difficultés, parce que ces objets peuvent avoir des dépendances sophistiquées et ambigües. Les procédures peuvent se rapporter à d’autres procédures, les affichages peuvent se rapporter aux fonctions, les déclencheurs peuvent se rapporter à tous les objets. C’est pourquoi le programme ne peut pas aider à résoudre cet embrouillement. Les utilisateurs devraient trouver toutes les dépendances à la main et lancer les scripts SQL dans l’ordre nécessaire. Une autre possibilité est celle d’exécuter tous les scripts dans ce groupe plusieurs fois, jusqu’à ce que le message d’erreur ne disparaisse.
3. Fichier Install.bat
Le fichier Install.bat est créé pour assurer l’exécution automatisée à tous les scripts. Ce fichier exécute tous les scripts, qui ont été précédemment sauvegardés par l’outil. L’ordre d’exécution des scripts será le même, comme lors de l’application à la base de données. Ce fichier de lot exige l’installation de l’utilitaire isqlw, c’est la partie de la partie client de MS SQL Server. Veuillez spécifier les paramètres Nom du Serveur, Nom de la base de données, Nom d’utilisateur et Mot de passe pour le fichier install.bat dans la ligne de commande. Par exemple: install.bat SQLServer SQLBasededonnées SQLUtilisateur SQLMotdepassed’utilisateur.
Attention:
- Les paramètres doivent être séparés par des espaces. Si le paramètre lui-même contient un espace, vous devriez le mettre entre guillemets.
- L’ordre des paramètres ne peut pas être modifié.
- Si le fichier install.bat est exécuté sans paramètres, vous verrez un court guide, expliquant comment lancer ce fichier.
4. InstallTrusted.bat
Si vous utilisez l'authentification Microsoft SQL Server à l’aide de l'identification de connexion Windows, utilisez le fichier InstallTrusted.bat. Le fichier InstallTrusted.bat a 2 paramètres: Server name, Database name.
Exemple d’utilisation: installtrusted.bat SQLServer SQLDatabase Pour plus d’informations concernant l'authentification Windows, voir ici: https://docs.microsoft.com/fr-fr/sql/relational-databases/security/authentication-access/principals-database-engine?view=sql-server-2017
Réponse:
Réparation de la base de données au format MS SQL Server depuis plusieurs fichiers source
La base de données au format MS SQL Server contient un ou plusieurs fichiers. Il y a plusieurs types de fichiers: fichier de données principal (avec l’extension par défaut *.mdf), fichier de données secondaire (avec l’extension par défaut *.ndf) et le fichier d'enregistrement des transactions (avec l’extension par défaut *.ldf). Si vous voulez réparer les données avec SQL Server Recovery Kit, vous devriez spécifier le chemin d’accès à tous les fichiers de données secondaires et au fichier de données principal. Cela peut être effectué à l’aide de la boîte de dialogue Ouvrir un fichier.

Si la base de données corrompue contient le fichier de données principal, le(s) fichier(s) de données secondaire(s) et le(s) fichier(s) d'enregistrement des transactions, vous devez sélectionner le fichier de données principal au format *.mdf et tous les fichiers de données secondaires au format *.ndf (voir l’im. 2).

Réponse:
La récupération des grosses bases de données de MS SQL Server exige une grande quantité de mémoire RAM. Les développeurs du programme recommandent d’effectuer la récupération des grosses bases de données sur les ordinateurs possédants assez de mémoire physique libre. La mémoire physique utilisée par le programme ne doit pas être inférieure à la taille du fichier que vous récupérez divisée par 500 plus 20-100 Mo pour que le programme puisse s’exécuter. C’est-à-dire, si vous essayez de récupérer un fichier .mdf dont la taille est 100 Go, l’ordinateur doit avoir au moins (100 Go / 500) + 120 Mo = 320 Mo de mémoire physique libre.
Réponse:
Pour résoudre ce problème, vous devriez:
- Enregistrer les données en tant que scripts
- Exécuter le fichier install.bat avec tous les paramètres nécessaires depuis la ligne de commande
- Voir les fichiers de réponses (*????.sql.txt) pour découvrir quels scripts n’ont pas été exécuté correctement
- Charger les scripts exécutés avec erreurs dans l’Analyseur de requêtes du Microsoft SQL Server et essayer de les exécuter là. Quand vous aurez reçu le message d’erreur, vous devrez détecter laquelle des commandes provoque l’erreur. Si cette commande écrit les données qui n’ont pas de valeur, vous pouvez tout simplement la supprimer du fichier. Autrement vous devriez envoyer le script exécuté avec les erreurs et la capture d’écran aux développeurs depuis l’Analyseur de requêtes. De plus, il será probablement nécessaire d’envoyer le fichier source *.mdf aux développeurs pour qu’ils examinent le problème.
Réponse:
- Si une valeur dans le champ Primary Key est incorrecte (par exemple, si elle est négative ou une douzaine de fois plus grande que toutes les autres valeurs), cela signifie que les données source ont été gravement endommagées et qu'il est impossible de les récupérer complètement.
- Si des valeurs dupliquées apparaissent dans les champs Primary Key, cela signifie que le programme a récupéré des feuilles avec des données qui auraient dû être marquées pour être effacées dans la base de données (fichiers mdf, ndf). Mais en fait il n'existe aucune marque indiquant que la feuille avec les données devrait être effacée. Et de fait le programme récupère les données de toutes les feuilles. Cela a pour résultat un excès de données récupérées et les développeurs de SQL Server Recovery Kit n'ont pas pu trouver de critère pour filtrer les entrées excessives. Dans ce cas, les administrateurs de la base de données et/ou les développeurs du logiciel ont pris la décision finale en ce qui concerne les entrées excessives dans la base de données récupérée qui devraient être effacées.
Réponse:
L'outil isqlw.exe est un élément du package MS SQL Server. Vous pouvez toujours télécharger la dernière version de MS SQL Server depuis le site de Microsoft et installer les éléments nécessaires sur l'ordinateur. La version démo de MS SQL Server téléchargée depuis le site de Microsoft vous permet d'utiliser les éléments dans la période spécifiée dans le CLUF.
Si vous pouvez trouver les outils appropriés sur Microsoft.com alors vous pouvez télécharger et installer Query Analyzer depuis notre site web. Le lien pour le téléchargement est: https://all-recovery-inc.com/download/isqlwInstall.exe
Réponse:
Il est possible qu'un élément supplémentaire survienne avec votre MDF entre la version d'essai et l'enregistrement (récupéré par un autre logiciel ou autre). Vous pouvez le vérifier en lançant la version démo sur ce fichier sur un autre ordinateur.
Si vous voyez le message d'erreur suivant après avoir lancé vos scripts:
Server: Msg 242, Level 16, State 3, Line 1
[Microsoft][ODBC SQL Server Driver][SQL Server] La conversion d'un type de donnée caractère vers un type de donnée calendaire a eu pour résultat une valeur de calendrier erronée.
Le traitement a été terminé.
Réponse:
Cela signifie que vous devriez changer les paramètres de langue du serveur en suivant ces étapes:
- Démarrez Enterprise Manager.
- Sélectionnez le serveur nécessaire et connectez-vous.
- Ouvrez sa fenêtre de propriétés avec un clic droit et sélectionnez Propriétés.
- Ouvrez l'onglet Paramètres Serveur.
- Sélectionnez Anglais dans la Langue par défaut pour l'utilisateur dans le menu déroulant et appuyez sur OK.
- Arrêtez le serveur SQL. Pour cela, sélectionnez Arrêter dans le menu contextuel et répondez Oui à la question Êtes-vous sûr de vouloir arrêter le service SQL Server ? dans la fenêtre de confirmation.
- Démarrez le serveur SQL. Pour cela, sélectionnez Démarrer dans le menu contextuel.
- Vous pouvez maintenant lancer les scripts sauvegardés sur votre disque dur par SQL Server Recovery Kit. Vous pouvez également lancer le programme dans le mode d'exécution des scripts de la base de données.
- Vous devez maintenant restaurer les paramètres. Pour cela, ouvrez la fenêtre des propriétés du serveur nécessaire dans Enterprise Manager.
- Sélectionnez la langue par défaut dans la liste Langue par défaut pour l'utilisateur et appuyez sur OK.
- Arrêtez le serveur SQL. Pour cela, sélectionnez Arrêter dans le menu contextuel et répondez Oui à la question Êtes-vous sûr de vouloir arrêter le service SQL Server? dans la fenêtre de confirmation.
- Démarrez le serveur SQL. Pour cela, sélectionnez Démarrer dans le menu contextuel.
Si vous voyez le message d'erreur suivant après avoir lancé vos scripts:
Server: Msg 242, Level 16, State 3, Line 1
[Microsoft][ODBC SQL Server Driver][SQL Server] La conversion d'un type de donnée caractère vers un type de donnée calendaire a eu pour résultat une valeur de calendrier erronée.
Le traitement a été terminé.
Réponse:
Cela signifie que vous devriez changer les paramètres de langue du serveur en suivant ces étapes:
- Démarrez Management Studio.
- Choisissez le serveur nécessaire.
- Allez à Sécurité/Identifiants.
- Choisissez l'utilisateur qui utilisera la base de données et ouvrez la fenêtre de propriétés de l'utilisateur.
- Sélectionnez Français dans la Langue par défaut pour l'utilisateur dans le menu déroulant et appuyez sur OK.
- Vous pouvez maintenant lancer le script sauvegardés sur votre disque dur par SQL Server Recovery Kit. De manière alternative, vous pouvez également lancer le programme dans le mode d'exécution des scripts de la base de données.
- Vous devez maintenant restaurer les paramètres. Pour cela, ouvrez la fenêtre des propriétés de l'utilisateur nécessaire dans Management Studio.
- Sélectionnez la langue par défaut dans la liste Langue par défaut pour l'utilisateur et appuyez sur OK.
Réponse:
Copier simplement ou restaurer les tableaux de données depuis une base de données MSDB sur un nouveau serveur ne permet pas de restaurer les Packages DTS parce qu'ils ont des connexions intérieures au contexte d'exécution du serveur sur lequel ils ont été créés et sur lequel ils ont été utilisé avant la migration. Pour copier les Packages DTS entre serveurs, VB scripts doit être employé. De fait, le programme SQL Server Recovery Kit n'est pas adapté pour la restauration de Packages DTS.
Réponse:
SQL Server Recovery Kit détecte automatiquement la version de serveur avec laquelle la base de données a été utilisée. De fait, si la base de données a été utilisée sur MS SQL Server 2000, le programme écrit l'outil isqlw sur les scripts sauvegardés pour l'importation dans la nouvelle base de données. Si la base de données a été utilisée sur MS SQL Server 2005 ou plus récent, l'outil sqlcmd est utilisé dans les scripts. Si vous souhaitez importer les données vers une base de données sur un serveur avec une version différente depuis l'originale, vous devriez utiliser l'outil pour le serveur correspondant.
- Isqlw - pour MS SQL Server 2000
- Sqlcmd - pour MS SQL Server 2005 et plus récent
Réponse:
- Démarrez SQL Server Management Studio
- Dans Object Explorer faites un clic droit sur Base de données
- Cliquez sur Joindre
- Cliquez sur le bouton Ajouter
- Sélectionnez le fichier mdf et cliquez sur le bouton OK
- Cliquez sur le bouton OK
- Attendez la fin de l'opération.
Réponse:
SQL Server Recovery Kit peut récupérer de manière partielle ou complète des informations des fichiers .MDF/.NDF d’une base de données du Microsoft SQL Server cryptée par des virus de logiciels rançonneurs.
SQL Server Recovery Kit ne décrypte pas des données.
En général, dans ces cas le décryptage des données ne s’applique pas.
Cependant, SQL Server Recovery Kit peut s’avérer utile dans des cas où le fichier MDF a été partiellement crypté. Habituellement les virus ne cryptent que l’en-tête et/ou le début des fichiers en raison de leur grande taille. Dans ces cas, si le cryptage ne concerne que l’en-tête ou une partie du fichier MDF, SQL Server Recovery Kit peut s’avérer utile. Le programme analyse tous les blocs de données et la structure des données recueillies dans le fichier. Ensuite il recrée la structure originale des données et les données elles-mêmes, si possible.
La structure des fichiers MDF Microsoft SQL Server
Est-il Possible de Récupérer des Données d’un Fichier MDF après une Attaque par un Virus de Logiciel Rançonneur?
L’utilisation de ce programme ne garantit pas la récupération de 100% des données ou même une partie. Pour obtenir une réponse claire à cette question il faut télécharger la version DEMO de SQL Server Recovery Kit, spécifier le fichier MDF crypté et attendre l’analyse complète du fichier.
Dès que l’analyse du fichier .mdf est complète dans la version DEMO du programme, un aperçu complet des données qui peuvent être extraites est accessible.
Remarque:Le service clients de Recovery Toolbox informe qu’habituellement les programmes de logiciels rançonneurs ne cryptent que l’en-tête du fichier de base de données en raison de sa grande taille. Il en résulte qu’il est souvent possible de récupérer quasiment toute la structure des données et quasiment toutes les informations du fichier source.