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 :

Copie base de données - Erreur d'exécution


Sujet :

Administration SQL Server

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    50
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 50
    Points : 21
    Points
    21
    Par défaut Copie base de données - Erreur d'exécution
    Et re !

    J'essaie toujours de migrer une BDD SQL 2000 vers 2005 via l'assistant Copie de base de données et l'exécution stoppe à cette erreur :

    Aucune clé primaire ou candidate dans la table référencée 'dbo.AGENT' ne correspond à la liste des colonnes de référence de la clé étrangère 'FK_BADGE_AGENT'.
    Il veut peut-être exécuter une contrainte de clé étrangère avant de créer la table AGENT ? Je ne comprends pas. Ou alors la clé étrangère utilisée pour FK_BADGE_AGENT est fausse ? Mais comment je peux modifier ceci ???

    Merci

  2. #2
    Expert confirmé
    Avatar de Kropernic
    Homme Profil pro
    Analyste / Programmeur / DBA
    Inscrit en
    Juillet 2006
    Messages
    3 932
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Belgique

    Informations professionnelles :
    Activité : Analyste / Programmeur / DBA
    Secteur : Distribution

    Informations forums :
    Inscription : Juillet 2006
    Messages : 3 932
    Points : 4 239
    Points
    4 239
    Par défaut
    Je ne sais pas trop comment ta copie s'effectue mais s'il s'agit d'un script auto-généré (ou non), il faut faire attention à l'ordre de création des objets (et également à l'ordre d'insertion des données dans ces objets).

    Si tu as deux tables T1 et T2 et que T1 contient une clef étrangère qui référence la table T2, il faut aller créer la table T2 en premier car sinon, lors de la création de la contrainte de clef étrangère sur T1, tu auras une erreur car la colonne de référence dans la table T2 n'existera pas encore.

    En espérant avoir aidé,

    Griftou.
    Kropernic

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    50
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 50
    Points : 21
    Points
    21
    Par défaut
    Eh oui je sais bien , mais le script est auto-généré par l'assistant copie base de données.

    J'ai récupéré le package .dtsx, mais je ne trouve pas comment modifier l'ordre des requêtes, je ne vois que les propriétés du package :/

  4. #4
    Expert confirmé
    Avatar de Kropernic
    Homme Profil pro
    Analyste / Programmeur / DBA
    Inscrit en
    Juillet 2006
    Messages
    3 932
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Belgique

    Informations professionnelles :
    Activité : Analyste / Programmeur / DBA
    Secteur : Distribution

    Informations forums :
    Inscription : Juillet 2006
    Messages : 3 932
    Points : 4 239
    Points
    4 239
    Par défaut
    Si c'est un package SSIS, tout dépend de ce qu'il contient.

    C'est un pakage que toi un collègue avez créé ou bien est-ce un package "par défaut" de sql server ?
    Kropernic

  5. #5
    Membre à l'essai
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    50
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 50
    Points : 21
    Points
    21
    Par défaut
    Non c'est le package qui est automatiquement généré lors de l'exécution de l'assistant de copie de base de données

  6. #6
    Expert confirmé
    Avatar de Kropernic
    Homme Profil pro
    Analyste / Programmeur / DBA
    Inscrit en
    Juillet 2006
    Messages
    3 932
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Belgique

    Informations professionnelles :
    Activité : Analyste / Programmeur / DBA
    Secteur : Distribution

    Informations forums :
    Inscription : Juillet 2006
    Messages : 3 932
    Points : 4 239
    Points
    4 239
    Par défaut
    Arf, je n'ai jamais utilisé cet assistant... Je vais voir si je trouve quelque chose ^^.

    Mais je pense que de "vrais" DBA pourraient te répondre plus rapidement (je ne fais que jouer à l'apprenti sorcier personnellement ^^)
    Kropernic

  7. #7
    Membre à l'essai
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    50
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 50
    Points : 21
    Points
    21
    Par défaut
    Ben pareil :/, normalement tout devait bien se passer

  8. #8
    Expert confirmé
    Avatar de Kropernic
    Homme Profil pro
    Analyste / Programmeur / DBA
    Inscrit en
    Juillet 2006
    Messages
    3 932
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Belgique

    Informations professionnelles :
    Activité : Analyste / Programmeur / DBA
    Secteur : Distribution

    Informations forums :
    Inscription : Juillet 2006
    Messages : 3 932
    Points : 4 239
    Points
    4 239
    Par défaut
    Bon, j'ai trouvé l'assistant et je teste.

    Si j'ai bien compris, tu l'exécute sous sql server 2000... Perso, je suis sous 2005 et à un moment, il me demande quelle méthode je veux utiliser (soit detach/attach, soit sql management object).

    As-tu cette étape également ?

    Si oui, as-tu la possibilité de choisir la première solution ? Je pense que cela devrait pouvoir résoudre tes problèmes.
    Kropernic

  9. #9
    Membre à l'essai
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    50
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 50
    Points : 21
    Points
    21
    Par défaut
    Alors je l'exécute sur SQL 2005 et oui j'ai la demande de méthode

    J'ai choisi la seconde méthode, qui permet aux utilisateurs de rester connectés.

  10. #10
    Expert confirmé
    Avatar de Kropernic
    Homme Profil pro
    Analyste / Programmeur / DBA
    Inscrit en
    Juillet 2006
    Messages
    3 932
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Belgique

    Informations professionnelles :
    Activité : Analyste / Programmeur / DBA
    Secteur : Distribution

    Informations forums :
    Inscription : Juillet 2006
    Messages : 3 932
    Points : 4 239
    Points
    4 239
    Par défaut
    Pourquoi ne pas choisir la première et planifier la migration à un moment où aucun utilisateur ne travaille dessus ? Genre vers 2h du matin par exemple...
    Kropernic

  11. #11
    Membre à l'essai
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    50
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 50
    Points : 21
    Points
    21
    Par défaut
    Ca ne change rien, c'est juste un peu plus long... non ?

  12. #12
    Expert confirmé
    Avatar de Kropernic
    Homme Profil pro
    Analyste / Programmeur / DBA
    Inscrit en
    Juillet 2006
    Messages
    3 932
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Belgique

    Informations professionnelles :
    Activité : Analyste / Programmeur / DBA
    Secteur : Distribution

    Informations forums :
    Inscription : Juillet 2006
    Messages : 3 932
    Points : 4 239
    Points
    4 239
    Par défaut
    De ce que j'ai compris :

    - La première méthode va faire un detach de ta DB et ensuite copier vers le/les folder de destination et faire un attach de la db aussi bien sur le serveur source que sur le serveur de destination. Ce qui implique que pendant ce temps, la DB soit hors ligne et donc non disponible pour les utilisateurs.

    - La seconde méthode va "scripter" tous les objets de la DB ainsi que les données qu'ils contiennent et exécuter ce script sur le serveur de destination. Et apparemment, d'après l'erreur que tu nous rapportes, j'aurais tendance à dire qu'il ne tient pas compte de la précession (est-ce le terme correct?) des objets.

    Du coup, j'aurais tendance à conclure que tu ferais mieux d'utiliser la première méthode et de la planifier (vu que l'assistant le propose) à un moment de la journée qui convient à tes utilisateurs.
    Kropernic

  13. #13
    Expert éminent sénior
    Avatar de mikedavem
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Août 2005
    Messages
    5 450
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Ain (Rhône Alpes)

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

    Informations forums :
    Inscription : Août 2005
    Messages : 5 450
    Points : 12 891
    Points
    12 891
    Par défaut
    Bonjour,

    Backup / Restore ou
    Detach / Attach

    Cela ira beaucoup plus vite.

    ++

  14. #14
    Membre à l'essai
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    50
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 50
    Points : 21
    Points
    21
    Par défaut
    Le backup/restore entre SQL2000 et SQL2005 n'est pas compatible ? En tout cas j'ai essayé avec un .bak qu'on m'a donné et ça m'a retourné une erreur du genre 'Fichier mal formé'.

    Pour l'instant j'ai pas accès à la machine source (j'ai qu'un ID BDD pour me connecter à SQL2000) du coup je ne peux pas créer de dossier partagé pour récupérer les fichiers (c'est imposé par la méthode detach/attach)

  15. #15
    Expert éminent sénior
    Avatar de mikedavem
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Août 2005
    Messages
    5 450
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Ain (Rhône Alpes)

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

    Informations forums :
    Inscription : Août 2005
    Messages : 5 450
    Points : 12 891
    Points
    12 891
    Par défaut
    J'essaie toujours de migrer une BDD SQL 2000 vers 2005
    Si c'est bien le cas il est bien possible de restaurer une base 2000 sur 2005. La base sera restaurée en mode de compatibilité 80.

    ++

  16. #16
    Membre à l'essai
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    50
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 50
    Points : 21
    Points
    21
    Par défaut
    Et re !

    J'ai récupéré un fichier de restauration (.BAK) plus récent, je vais voir si la copie ne me retourne pas une erreur comme avec l'autre

  17. #17
    Membre à l'essai
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    50
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 50
    Points : 21
    Points
    21
    Par défaut
    ......


    Bon.... avec un autre .bak la restauration a fonctionné. Donc le premier fichier était corrompu....

    ...

    M'a fallu 4 fois le demander ce fichier snif.

    Merci beaucoup de m'avoir aidé

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

Discussions similaires

  1. Copie base de donnée oracle
    Par awax dans le forum Import/Export
    Réponses: 6
    Dernier message: 15/01/2009, 16h44
  2. Copie Base de données
    Par dumser1 dans le forum Oracle
    Réponses: 7
    Dernier message: 31/08/2007, 16h15
  3. [URGENT]Problème copie base de données
    Par elsuket dans le forum MS SQL Server
    Réponses: 8
    Dernier message: 21/05/2007, 15h21
  4. [vb.net][base de données]erreur
    Par Alex35 dans le forum Accès aux données
    Réponses: 4
    Dernier message: 16/11/2005, 11h24

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