IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Administration SQL Server Discussion :

Récupération du contenu d'une table à partir d'une pseudo sauvegarde [2014]


Sujet :

Administration SQL Server

  1. #1
    Futur Membre du Club
    Homme Profil pro
    Inscrit en
    Décembre 2012
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Secteur : Santé

    Informations forums :
    Inscription : Décembre 2012
    Messages : 10
    Points : 7
    Points
    7
    Par défaut Récupération du contenu d'une table à partir d'une pseudo sauvegarde
    Bonjour,

    Suite à une fausse manipulation (drop sur la mauvaise table), j'ai effacé le contenu d'une de mes tables gpsql d'une des bases.

    Je souhaites copier le contenu de cette table depuis une sauvegarde. Hors mon agent sql server était arrêter depuis plusieurs jours, il me reste donc la sauvegarde du serveur (copie de fichiers) datant de jeudi soir. dedans je vais y trouver tous les fichiers mdf et ldf.

    J'ai recréé la table et je souhaites réintégré les données depuis l'ancien fichier mdf (uniquement le contenu de cette table).

    ma base n'est pas "détachée".

    Comment puis je procéder ?

    Merci de votre aide!
    Sébastien

  2. #2
    Membre habitué Avatar de olivtone
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Octobre 2010
    Messages
    242
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Eure et Loir (Centre)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2010
    Messages : 242
    Points : 153
    Points
    153
    Par défaut
    il faut restaurer la BDD de jeudi soir en l'appelant par un nom différent de votre BDD sur lequel vous avez supprimé votre table.

    une fois restaurée il faut lancer l'assistant d'importation des données, pour pouvoir reimporter tes données (il faut faire un click droit sur la BDD )

    Nom : Capture.JPG
Affichages : 339
Taille : 51,4 Ko

  3. #3
    Futur Membre du Club
    Homme Profil pro
    Inscrit en
    Décembre 2012
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Secteur : Santé

    Informations forums :
    Inscription : Décembre 2012
    Messages : 10
    Points : 7
    Points
    7
    Par défaut
    Bonjour

    Merci Olivtone de ton aide, ce n'est pas ce que j'ai fait car je viens de voir ton message.

    la méthode que j'ai utilisé surement moins propre que celle de Olivtone:
    > restauration d'une sauvegarde obsolète sous un nouveau nom :restaurationBDERP.mdf
    > Arrêt de SQLSERVER à l'aide de SQL Server Configuration Manager
    > j'ai écrasé mes fichiers restaurationBDERP.mdf et restaurationBDERP_log.ldf nouvellements créés par ceux issus de la restauration de la sauvegarde
    > démarrage de SQLSERVER à l'aide de SQL Server Configuration Manager
    > copie des données de la table manquante par un insert into [BDERP].GPSQL.[matable]...select...from [restaurationBDERP].GPSQL.[matable]

    N’hésitez pas si vous avez des critiques à formuler sur ma méthode.

    > comprendre pourquoi sql agent etait arrêté (déjà une piste il est en démarrage manuel!) et voir pour avoir un suivi quotidien des opération de sauvegarde (mail ?)

    J'ai eu bien chaud, Merci pour ton aide Olivtone!
    Sébastien

  4. #4
    Expert éminent
    Avatar de StringBuilder
    Homme Profil pro
    Chef de projets
    Inscrit en
    Février 2010
    Messages
    4 146
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Chef de projets
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2010
    Messages : 4 146
    Points : 7 388
    Points
    7 388
    Billets dans le blog
    1
    Par défaut
    Comment avez vous sauvegardé la base ?

    Vous parlez de fichiers MDF et LDF.

    Sauvegarder ces fichiers NE CONSTITUE EN RIEN une sauvegarde.

    Surtout si la sauvegarde s'est faite à chaud : vous avez 9 chances sur 10 d'être dans l'incapacité de remonter les fichiers.

    Passez toujours par la fonctionnalité de sauvegarde de SQL Server : fichiers de données ET fichiers de journaux.
    On ne jouit bien que de ce qu’on partage.

  5. #5
    Futur Membre du Club
    Homme Profil pro
    Inscrit en
    Décembre 2012
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Secteur : Santé

    Informations forums :
    Inscription : Décembre 2012
    Messages : 10
    Points : 7
    Points
    7
    Par défaut
    Normalement Nous avons une sauvegarde quotidienne au format bkp exécutée par SQL Agent. Celui ci était arrêter depuis 2 semaines environ. En parallèle, l’intégralité de nos serveurs est copiée sur un disque externe qui est transféré dans d'autres locaux. les seuls fichiers pas trop anciens à ma disposition étaient le mdf et son fichier log associé. J'ai bien compris l'importance de ne pas se reposer sur une copie des fichiers serveurs car pour sql server ceux ci ne sont pas prévus pour être ouvert comme des xls ou des des doc et de s'assurer du bon fonctionnement permanent de SQL Agent.

    Pour cette fois j'ai eu la chance de réussir à lire le fichier mdf pour pouvoir récupérer les données de ma table et les réimporter dans la base de production...

    Je viens de finir de vérifier que les données soient justes et je vais maintenant pouvoir chercher des cours/tutoriels pour effectuer le premier niveau d’administration de la BD en attendant d'avoir un rendez vous avec notre prestataire en charge de la maintenance de nos serveurs...=> je pense qu'il faut que je puisse recevoir des notifications ou des mails de SQL Agent pour m'informer de son état, et du bon fonctionnement des opérations réalisées, suis je dans l'erreur ? Avez vous des liens à me proposer ?

    Merci!
    Sébastien

  6. #6
    Membre expérimenté

    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Septembre 2003
    Messages
    733
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2003
    Messages : 733
    Points : 1 668
    Points
    1 668
    Billets dans le blog
    8
    Par défaut
    Une question importante et primordiale que l'on doit de vous poser est "Quel est le mode de récupération de votre base de données (Complet, Journalisé en bloc ou Simple) ?"

    A+
    "Une idée mal écrite est une idée fausse !"
    http://hamid-mira.blogspot.com

  7. #7
    Membre expérimenté

    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Septembre 2003
    Messages
    733
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2003
    Messages : 733
    Points : 1 668
    Points
    1 668
    Billets dans le blog
    8
    Par défaut
    Citation Envoyé par SebTal Voir le message
    ...
    > Arrêt de SQLSERVER à l'aide de SQL Server Configuration Manager
    ...
    > démarrage de SQLSERVER à l'aide de SQL Server Configuration Manager
    Arrêter l'instance SQL Server pour récupérer le contenu d'une table est une erreur manifeste, pour ne pas dire une grosse connerie !
    Vous auriez, même avec cette procédure discutable, mettre tout simplement la base OFFLINE, remplacer les fichiers puis remettre la base ONLINE. (1)
    (1) Je parle de la base "restaurationBDERP" bien évidemment.

    A+
    "Une idée mal écrite est une idée fausse !"
    http://hamid-mira.blogspot.com

  8. #8
    Futur Membre du Club
    Homme Profil pro
    Inscrit en
    Décembre 2012
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Secteur : Santé

    Informations forums :
    Inscription : Décembre 2012
    Messages : 10
    Points : 7
    Points
    7
    Par défaut
    Citation Envoyé par hmira Voir le message
    (Complet, Journalisé en bloc ou Simple) ?"[/I]
    actuellement nous n'avons que du complet, mais depuis hier j'essaye de rajouter une sauvegarde des transactions (cela correspond t il à "journalisé" ?, )en bloc ou simple je ne sais pas encore à quoi cela correspond... pour le moment cela ne fonctionne pas.
    j'attends les propositions de rendez vous de notre prestataires pour la partie réseau/administration/sauvegarde, mais ça ne sera pas avant la semaine prochaine

    Citation Envoyé par hmira Voir le message
    Vous auriez, même avec cette procédure discutable, mettre tout simplement la base OFFLINE, remplacer les fichiers puis remettre la base ONLINE.
    c'est noté, mais si cela arrive a nouveau -ce que je suis en train d'essayer de modifier pour que ne plus avoir le problème- j'essaierai la procédure de olivtone
    pour ma culture, en quoi est ce différent de passer une base offline ou d'arrêter le service par le biais de "sql server configuration manager"? (nous n'avons que une base de données sur SQL server réellement utilisée, l'autre c'est la base de copie pour les tests) + les bases propres à sql server

    Merci

  9. #9
    Membre habitué Avatar de olivtone
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Octobre 2010
    Messages
    242
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Eure et Loir (Centre)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2010
    Messages : 242
    Points : 153
    Points
    153
    Par défaut
    Citation Envoyé par SebTal Voir le message
    actuellement nous n'avons que du complet, mais depuis hier j'essaye de rajouter une sauvegarde des transactions (cela correspond t il à "journalisé" ?, )en bloc ou simple je ne sais pas encore à quoi cela correspond... pour le moment cela ne fonctionne pas.
    Il faut mettre la BDD en mode Complet et faire un backup log de la BDD, car les backup logs en mode simple ne fonctionne pas

    https://msdn.microsoft.com/fr-fr/lib...=sql.120).aspx

  10. #10
    Membre expérimenté

    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Septembre 2003
    Messages
    733
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2003
    Messages : 733
    Points : 1 668
    Points
    1 668
    Billets dans le blog
    8
    Par défaut
    Citation Envoyé par SebTal Voir le message
    pour ma culture, en quoi est ce différent de passer une base offline ou d'arrêter le service par le biais de "sql server configuration manager"? (nous n'avons que une base de données sur SQL server réellement utilisée, l'autre c'est la base de copie pour les tests) + les bases propres à sql server
    En ce qui concerne les méfaits du redémarrage d'une instance SQL Server TOUT a été dit :
    Ici : https://www.developpez.net/forums/d1...r/#post7786488
    Ici : https://www.developpez.net/forums/d1...r/#post7788519
    Et Ici : http://blog.developpez.com/sqlpro/p7...vec_sql_server (Article de SQLPro, Lisez le paragraphe § "Perte du cache, perte des compteurs… Si important que cela ?")

    Et personnellement, je n'ai plus rien à y rajouter !

    A+
    "Une idée mal écrite est une idée fausse !"
    http://hamid-mira.blogspot.com

  11. #11
    Futur Membre du Club
    Homme Profil pro
    Inscrit en
    Décembre 2012
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Secteur : Santé

    Informations forums :
    Inscription : Décembre 2012
    Messages : 10
    Points : 7
    Points
    7
    Par défaut
    Très intéressant. merci
    Sébastien

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 4
    Dernier message: 25/08/2015, 17h56
  2. Réponses: 7
    Dernier message: 22/06/2012, 13h12
  3. [Tables] Update d'une table à partir d'une autre
    Par le_niak dans le forum VBA Access
    Réponses: 2
    Dernier message: 17/01/2008, 10h01
  4. copie d'une table Y d'une base A vers une table X d'une base
    Par moneyboss dans le forum PostgreSQL
    Réponses: 1
    Dernier message: 30/08/2005, 22h24
  5. Réponses: 5
    Dernier message: 06/01/2005, 13h07

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo