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

MS SQL Server Discussion :

Importation MySQL via DTS (ODBC ?)


Sujet :

MS SQL Server

  1. #1
    Membre actif Avatar de gderenne
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Juillet 2007
    Messages
    250
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Juillet 2007
    Messages : 250
    Points : 281
    Points
    281
    Par défaut Importation MySQL via DTS (ODBC ?)
    Salut à tous,

    Je dois migrer mes données de MySQL vers SQL Server 2005 Express.

    Le problème est que DTS ne reconnait pas mes pilotes ODBC directement.

    En effet, je suis obligé de passer par le .NET ODBC avec un DSN.

    L'inconvéniant majeur est que pour fonctionner ainsi, il faut faire la migration table par table.

    Est-ce réellement le seul moyen ou existe-t-il la possibilité d'utiliser la superbe option "Copier les données à partir d'une ou plusieurs tables ou vues" au lieu de "Ecrire une requète pour spécifier les données à transférer" ?

    Si malheureusement il n'est pas possible d'utiliser cette pourtant tres interessante option "Copier les données à partir d'une ou plusieurs tables ou vues", quelle serait la requète SQL à ecrire pour dire de tout copier d'un coup ?

    Merci par avance pour vos réponses.

  2. #2
    Membre chevronné
    Avatar de Anthony.Desvernois
    Homme Profil pro
    Ingénieur sécurité & risque
    Inscrit en
    Juin 2007
    Messages
    1 489
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur sécurité & risque
    Secteur : Finance

    Informations forums :
    Inscription : Juin 2007
    Messages : 1 489
    Points : 2 244
    Points
    2 244
    Par défaut
    Ton serveur mysql est sur quel OS ?
    Il faut dll un driver ODBC MySQL Windows.
    Ensuite il faut utiliser DTS, se co sur le serveur et importer les donnees.
    On peut sel table par table ou toutes les tables.

    Au passage, un DSN tu n'es pas obliger de specifier la table...

  3. #3
    Membre actif Avatar de gderenne
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Juillet 2007
    Messages
    250
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Juillet 2007
    Messages : 250
    Points : 281
    Points
    281
    Par défaut
    Merci pour ta réponse rapide...

    Le serveur MySQL est sur un Windows 2003 Server Fr x86. Un pilote "MySQL ODBC 3.51 Driver" est installé sur le serveur et est utilisé par IIS pour l'accès aux données.

    Sur mon poste de travail (Win XP SP2), les pilotes "MySQL ODBC 3.51 Driver" et "MySQL Connector/ODBC v5" sont installés.

    Malgré tout, DTS ne voit pas le pilote ODBC 3.51 ou 5 pour MySQL.

    Pour le DSN, j'en ai créé un pour faire les tests (non concluants...). Donc, dans l'absolue, je ne m'en sert pas. Je l'ai d'ailleur supprimé.

    Donc, comment faire pour que DTS voit mes 2 pilotes ODBC MySQL installés (confirmé dans "Administrateur de sources de données (ODBC)") ?

    D'ailleurs, DTS ne montre pas tous ceux qui sont installés... Y aurait-il quelque chose de particulier à faire pour qu'il affiches TOUS les drivers ODBC installés ?

  4. #4
    Membre chevronné
    Avatar de Anthony.Desvernois
    Homme Profil pro
    Ingénieur sécurité & risque
    Inscrit en
    Juin 2007
    Messages
    1 489
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur sécurité & risque
    Secteur : Finance

    Informations forums :
    Inscription : Juin 2007
    Messages : 1 489
    Points : 2 244
    Points
    2 244
    Par défaut
    Essaye d'utiliser DTS sur le server 2003, enfin si SQL Server est bien sur ce serveur.
    Normalement tu as juste a choisir les drivers, configurer la connexion et lancer la migration.

    PS : pourquoi une telle migration ?

  5. #5
    Membre actif Avatar de gderenne
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Juillet 2007
    Messages
    250
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Juillet 2007
    Messages : 250
    Points : 281
    Points
    281
    Par défaut
    Que dois-je installer pour n'avoir QUE DTS à installer sur le serveur.

    Oui, MySQL et SQL 2005 Server Express sont sur la meme machine.

  6. #6
    Membre chevronné
    Avatar de Anthony.Desvernois
    Homme Profil pro
    Ingénieur sécurité & risque
    Inscrit en
    Juin 2007
    Messages
    1 489
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur sécurité & risque
    Secteur : Finance

    Informations forums :
    Inscription : Juin 2007
    Messages : 1 489
    Points : 2 244
    Points
    2 244
    Par défaut
    Regarde dans le gestionnaire ODBC du serveur s'il a les drivers MySQL ODBC. Si non, installes les.
    Ensuite lance DTS sur le serveur => qu'est ce que cela te donnes.

  7. #7
    Membre actif Avatar de gderenne
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Juillet 2007
    Messages
    250
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Juillet 2007
    Messages : 250
    Points : 281
    Points
    281
    Par défaut
    Sur le serveur, je n'ai pas DTS d'installé.

    Le pilote ODBC MySQL est bien installé.

    Que dois-je installer sur le serveur pour n'avoir que DTS et pas tout le reste qui ne sert à rien à cet endroit ?

  8. #8
    Membre chevronné
    Avatar de Anthony.Desvernois
    Homme Profil pro
    Ingénieur sécurité & risque
    Inscrit en
    Juin 2007
    Messages
    1 489
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur sécurité & risque
    Secteur : Finance

    Informations forums :
    Inscription : Juin 2007
    Messages : 1 489
    Points : 2 244
    Points
    2 244
    Par défaut
    Installe simplement l'outil DTS

    http://www.microsoft.com/technet/pro...loy/mysql.mspx

    (c'est la doc pour la version 2000, mais bon)

  9. #9
    Membre actif Avatar de gderenne
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Juillet 2007
    Messages
    250
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Juillet 2007
    Messages : 250
    Points : 281
    Points
    281
    Par défaut
    Citation Envoyé par Anthony.Desvernois
    Installe simplement l'outil DTS

    http://www.microsoft.com/technet/pro...loy/mysql.mspx

    (c'est la doc pour la version 2000, mais bon)
    Justement, comment n'installer que DTS sans installer tout le reste (Visual machin, truc management...) ?

    J'ai un fichier d'install pour la partie Serveur et un autre fichier d'install pour la partie client.

    Dans la partie client, on ne parle pas explicitement de DTS seulement... Pour un soucis de ne pas charger inutilement mon serveur avec des outils qui ne me serviront à rien, il serait interessant de n'installer QUE l'outil DTS.

    Pour le lien, je connais déjà car j'ai déjà fait des migrations de Oracle 8 vers MS SQL 2000. La grosse différence ici est que le driver ODBC pour MySQL n'apparait pas dans la liste. Sinon, le reste, je maitrise.

  10. #10
    Membre chevronné
    Avatar de Anthony.Desvernois
    Homme Profil pro
    Ingénieur sécurité & risque
    Inscrit en
    Juin 2007
    Messages
    1 489
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur sécurité & risque
    Secteur : Finance

    Informations forums :
    Inscription : Juin 2007
    Messages : 1 489
    Points : 2 244
    Points
    2 244
    Par défaut
    As tu essayer de supprimer/reinstaller le drivers ODBC ?

  11. #11
    Membre actif Avatar de gderenne
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Juillet 2007
    Messages
    250
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Juillet 2007
    Messages : 250
    Points : 281
    Points
    281
    Par défaut
    Citation Envoyé par Anthony.Desvernois
    As tu essayer de supprimer/reinstaller le drivers ODBC ?
    Oui, ca ne change rien.

  12. #12
    Membre éprouvé
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    1 056
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 1 056
    Points : 1 216
    Points
    1 216
    Par défaut
    pour utiliser la fonction import/export de sql 2005 il te faut un driver .NET ou utiliser .NET pour ODBC. MySQL ne propose pas de driver .NET 'pur' mais il en existe des payants :
    cf la fin du post :
    http://www.developpez.net/forums/sho...ght=mysql+.net

  13. #13
    Membre actif Avatar de gderenne
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Juillet 2007
    Messages
    250
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Juillet 2007
    Messages : 250
    Points : 281
    Points
    281
    Par défaut
    Citation Envoyé par kagemaru
    pour utiliser la fonction import/export de sql 2005 il te faut un driver .NET ou utiliser .NET pour ODBC. MySQL ne propose pas de driver .NET 'pur' mais il en existe des payants :
    cf la fin du post :
    http://www.developpez.net/forums/sho...ght=mysql+.net
    Je te remercie pour ta réponse.

    En fait, MySQL fourni maintenant un driver .NET + Visual Studio :
    http://dev.mysql.com/downloads/connector/net/5.1.html

    Mais le problème est que comme c'est pas de l'ODBC, il faut OBLIGATOIREMENT taper une requete SQL pour importer les données concernée car l'option "Copier les données à partir d'une ou plusieurs tables ou vues" n'est pas disponible.

    Quelle serait cette requete ?

  14. #14
    Membre actif Avatar de gderenne
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Juillet 2007
    Messages
    250
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Juillet 2007
    Messages : 250
    Points : 281
    Points
    281
    Par défaut
    Up ?

  15. #15
    Membre éprouvé
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    1 056
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 1 056
    Points : 1 216
    Points
    1 216
    Par défaut
    essaie de voir sur le forum MySQL pour récupérer l'ensemble des tables, car le code demandé se lance sur le serveur mySQL...

  16. #16
    Membre actif Avatar de gderenne
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Juillet 2007
    Messages
    250
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Juillet 2007
    Messages : 250
    Points : 281
    Points
    281
    Par défaut
    J'ai bien trouvé ce type de commande, mais ca ne contraint pas DTS à importer les tables.

    En effet
    SHOW TABLES ;
    Affiche la liste des tables dans un schema. DTS crée alors une table avec le contenu de la liste

    Alors finalement, j'ai lancé une instance de DTS par table à imprter. Heureusement qu'il n'y en avait pas 10.000 !

    Conclusion : malgré un pilote ODBC correctement ionstallé (ou utilisation du pilote .NET ODBC), DTS n'est pas capable d'importer un schema MySQL comme il le ferait avec Oracle ou SyBase. Il faut se palucher chaque table une par une.

  17. #17
    Membre éprouvé
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    1 056
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 1 056
    Points : 1 216
    Points
    1 216
    Par défaut
    en effet, le radio bouton est grisé, c'est étrange je ne sais pas si y'a du monde côté forum mysql qui a eu le pb...

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

Discussions similaires

  1. Probleme import Sql server vers mysql via odbc
    Par oclone dans le forum SQL Procédural
    Réponses: 0
    Dernier message: 10/07/2009, 15h26
  2. Problèmes d'importation via DTS de Sql server2000
    Par bigey3 dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 10/01/2008, 16h20
  3. Pb acces MySQL via ODBC
    Par Jean-Matt dans le forum Installation
    Réponses: 1
    Dernier message: 25/09/2007, 11h30
  4. Connection mysql via ODBC sans login
    Par Aslan78 dans le forum C++Builder
    Réponses: 1
    Dernier message: 20/04/2007, 17h02
  5. automatiser l'importation de donnée via DTS
    Par cortex024 dans le forum MS SQL Server
    Réponses: 1
    Dernier message: 16/03/2006, 10h07

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