Mysql
 sql >> Base de données >  >> RDS >> Mysql

Connecter des applications ODBC à MySQL

  • Installation du pilote MySQL ODBC
  • Configuration d'une source de données ODBC
  • Connecter votre application à MySQL
    • Accès
    • Excel
    • Oracle®
    • SQL Server (serveur lié/SSIS)

Installation du pilote MySQL ODBC

  1. Téléchargez le pilote ODBC MySQL pour votre plate-forme Windows. (Inscription requise.)
  2. Installez et autorisez le pilote ODBC MySQL sur la machine sur laquelle votre application cliente est installée.

    Par exemple, si vous souhaitez analyser des données MySQL dans Excel, installez le pilote MySQL ODBC sur la machine sur laquelle Excel est installé.

    Pour ce faire, exécutez la distribution de fichiers que vous avez téléchargée à l'étape précédente et suivez les instructions à l'écran.

    Le programme d'installation démarre le gestionnaire de licences Easysoft, car vous ne pouvez pas utiliser le pilote MySQL ODBC tant qu'une licence n'est pas obtenue.

    Les types de licence suivants sont disponibles :

    • Licence d'essai gratuite à durée limitée qui vous permet d'utiliser gratuitement et sans restriction le produit pendant une période limitée (généralement 14 jours).
    • Licence complète si vous avez acheté le produit. Lors de l'achat du produit, vous recevez un code d'autorisation que vous utilisez pour obtenir une licence
  3. Dans Easysoft License Manager, saisissez vos coordonnées.

    Vous DEVEZ saisir les champs Nom, Adresse e-mail et Société.

    L'adresse e-mail DOIT être la même que l'adresse utilisée pour s'inscrire et télécharger à partir du site Web d'Easysoft, sinon vous ne pourrez pas obtenir de licences d'essai.

  4. Choisissez Demander une licence.

    On vous demande un type de licence.

  5. Effectuez l'une des actions suivantes :
    • Pour une licence d'essai, cliquez sur Essai limité dans le temps, puis cliquez sur Suivant.

      Le gestionnaire de licences vous demande quel logiciel vous avez sous licence. Sélectionnez Pilote ODBC Easysoft MySQL dans la liste déroulante, puis cliquez sur Suivant.

    • Si vous avez obtenu un code d'autorisation pour une licence achetée, sélectionnez Licence non expirante, puis cliquez sur Suivant.

      Le gestionnaire de licences demande votre code d'autorisation.

      Saisissez le code d'autorisation, puis cliquez sur Suivant.

  6. Le gestionnaire de licences affiche un résumé des informations que vous avez saisies et vous permet de choisir la méthode de demande de licence.
  7. Effectuez l'une des actions suivantes :
    • Choisissez Demande en ligne si votre machine est connectée à Internet et peut établir des connexions sortantes au port 8884.

      Le gestionnaire de licences envoie alors une demande au serveur de licences Easysoft pour activer automatiquement votre clé de licence. Il s'agit de la méthode la plus rapide et vos coordonnées sont immédiatement saisies dans notre base de données d'assistance.

    • Les trois options restantes (demande par e-mail, demande d'impression et demande d'affichage) sont toutes des moyens d'obtenir une licence si votre machine est hors ligne (c'est-à-dire qu'elle n'a pas de connexion à Internet).

      Chacune de ces méthodes implique de fournir à Easysoft des informations, y compris votre numéro de machine (un numéro unique à votre machine), puis d'attendre de recevoir votre clé de licence.

      Au lieu d'envoyer vos coordonnées par e-mail à Easysoft, vous pouvez les saisir directement sur le site Web d'Easysoft et votre clé de licence vous sera automatiquement envoyée par e-mail.

      Pour utiliser cette méthode, cliquez sur Afficher la demande, puis visitez :

      • Page de licence d'essai
      • Page de licence complète

      Sur la page Licence, entrez votre numéro de machine (et le code d'autorisation pour la licence achetée), cliquez sur Soumettre et votre clé de licence vous sera envoyée par e-mail.

      Lorsque vous recevez la clé de licence, vous pouvez l'activer soit en double-cliquant sur la pièce jointe de l'e-mail, soit en cliquant sur Entrer la licence sur l'écran principal du Gestionnaire de licences et en collant la clé de licence dans la boîte de dialogue.

    • Choisissez Terminer pour quitter le gestionnaire de licences.

      L'installation est terminée.

Configuration d'une source de données ODBC

Avant de pouvoir utiliser le pilote ODBC MySQL pour connecter votre application à MySQL, vous devez configurer une source de données ODBC. Une source de données ODBC stocke les détails de connexion pour la base de données cible (par exemple, MySQL) et le pilote ODBC requis pour s'y connecter (par exemple, le pilote ODBC MySQL).

Vous configurez les sources de données ODBC dans l'administrateur ODBC, qui est inclus avec Windows. Le mode d'exécution de l'administrateur ODBC varie selon que votre version de Windows est 32 bits ou 64 bits :

  • J'ai Windows 32 bits

    Pour exécuter l'Administrateur ODBC sur Windows 32 bits, ouvrez Outils d'administration dans le Panneau de configuration, puis ouvrez Sources de données (ODBC). (Sur les anciennes versions de Windows, l'applet du Panneau de configuration qui lance l'administrateur ODBC est étiqueté Sources de données.)

  • J'ai Windows 64 bits

    Il existe deux versions d'ODBC Administrator sur cette plate-forme. La version d'ODBC Administrator que vous devez exécuter varie selon que l'application que vous souhaitez connecter à MySQL est 32 bits ou 64 bits. Pour les applications abordées dans cet article, reportez-vous au tableau suivant pour connaître l'architecture de l'application.

    Application Remarques
    Accès Il existe une version 32 bits et une version 64 bits d'Access. Pour savoir quelle version d'Access vous avez, démarrez Access, puis démarrez le Gestionnaire des tâches de Windows. Dans le Gestionnaire des tâches, choisissez l'onglet Processus. Recherchez MSACCESS.EXE dans la liste. Si le nom du processus est MSACCESS.EXE *32, Microsoft Access est 32 bits. Si le nom du processus est MSACCESS.EXE, Microsoft Access est 64 bits.
    Excel Il existe à la fois une version 32 bits et une version 64 bits d'Excel. Pour savoir quelle version d'Excel vous avez, démarrez Excel, puis démarrez le Gestionnaire des tâches de Windows. Dans le Gestionnaire des tâches, choisissez l'onglet Processus. Recherchez Excel.exe dans la liste. Si ce nom de processus est suivi de *32 , votre version d'Excel est 32 bits. Sinon, votre version d'Excel est 64 bits.
    Oracle® Le composant Oracle® qui interagit avec le pilote MySQL ODBC est appelé DG4ODBC. Il existe à la fois une version 32 bits et une version 64 bits de DG4ODBC. Pour savoir quelle version de DG4ODBC vous avez, lancez le gestionnaire des tâches de Windows et choisissez l'onglet Processus. Dans une fenêtre d'invite de commande, tapez dg4odbc --help . Dans le Gestionnaire des tâches de Windows, recherchez le processus DG4ODBC. Si le nom de l'image est "dg4odbc.exe *32", DG4ODBC est 32 bits. Si le nom de l'image est "dg4odbc.exe", DG4ODBC est 64 bits. Appuyez sur CTRL + C dans la fenêtre d'invite de commande, lorsque vous avez utilisé le gestionnaire de tâches de Windows pour découvrir l'architecture de DG4ODBC.
    SQL Server Il existe à la fois une version 32 bits et une version 64 bits de SQL Server. Pour savoir quelle version de SQL Server vous avez, connectez-vous à votre instance SQL Server, puis exécutez cette instruction SQL :
    select SERVERPROPERTY('edition')
    

    Si vous avez la version 64 bits de SQL Server et souhaitez utiliser un serveur lié avec le pilote MySQL ODBC, votre application est 64 bits.

    Si vous avez la version 32 bits de SQL Server ou souhaitez utiliser SSIS avec le pilote MySQL ODBC, votre application est 32 bits.

    Si vous avez une application 64 bits, vous devez exécuter la version 64 bits de l'administrateur ODBC. Pour ce faire, ouvrez Outils d'administration dans le Panneau de configuration, puis ouvrez Sources de données (ODBC). (Sur Windows Server 2003 et versions antérieures, l'applet du Panneau de configuration qui lance l'administrateur ODBC est intitulé Sources de données. Sous Windows 8 et versions ultérieures, l'applet du Panneau de configuration est intitulé Sources de données ODBC (64 bits).)

    Si vous avez une application 32 bits, vous devez exécuter la version 32 bits de l'administrateur ODBC. Pour ce faire, dans la boîte de dialogue Exécuter de Windows, tapez :

    %windir%\syswow64\odbcad32.exe
    
  • Je ne sais pas si j'ai Windows 32 bits ou 64 bits

    Si vous ne savez pas si votre version de Windows est 32 bits ou 64 bits, suivez les instructions de cet article de la base de connaissances Microsoft pour le savoir.

Utilisez l'administrateur ODBC pour créer une source de données de pilote ODBC MySQL :

  1. Choisissez l'onglet DSN système, puis choisissez Ajouter.
  2. Dans la boîte de dialogue Créer une nouvelle source de données, choisissez Easysoft ODBC-MySQL Driver, puis choisissez Finish.
  3. Renseignez ces champs Boîte de dialogue Configuration du DSN du pilote Easysoft ODBC-MySQL :
    Paramètre Valeur
    DSN MYSQL
    Nom d'utilisateur Le nom de votre utilisateur MySQL.
    Mot de passe Le mot de passe de votre utilisateur MySQL.
    Serveur Le nom d'hôte ou l'adresse IP de la machine sur laquelle votre serveur MySQL s'exécute.
  4. Utilisez le bouton Tester pour vérifier que vous pouvez vous connecter avec succès à votre base de données MySQL.

Connecter votre application à MySQL

  • Accès
  • Excel
  • Oracle®
  • SQL Server (serveur lié/SSIS)

Accès Microsoft

Microsoft Access utilise un pilote ODBC pour interagir avec une source de données externe. ODBC est une technologie d'accès aux données dont l'implémentation Microsoft est incluse avec Windows. Vous pouvez utiliser le pilote ODBC MySQL pour connecter Microsoft Access à une base de données MySQL, ce qui vous permet de récupérer et de mettre à jour les données MySQL à partir d'un frontal Microsoft Access.

  1. Ouvrez votre base de données Microsoft Access.
  2. Effectuez l'une des actions suivantes :
    • Pour Microsoft Access 2003 et versions antérieures, dans le menu Fichier, choisissez Obtenir des données externes > Lier des tables.

      La boîte de dialogue Lien s'affiche.

    • Pour Microsoft Access 2007, dans l'onglet Données externes, sélectionnez Plus > Base de données ODBC.

      L'assistant Obtenir des données externes démarre.

    • Pour Microsoft Access 2010 et versions ultérieures, dans l'onglet Données externes, choisissez Base de données ODBC.

      L'assistant Obtenir des données externes démarre.

  3. Effectuez l'une des actions suivantes :
    • Pour Microsoft Access 2003 et versions antérieures, choisissez Bases de données ODBC dans la liste Type de fichiers.
    • Pour Microsoft Access 2007 et versions ultérieures, choisissez Lier à la source de données en créant une table liée, puis choisissez OK.

    La boîte de dialogue Sélectionner la source de données s'affiche.

  4. Choisissez votre source de données ODBC dans la liste Machine Data Source, puis choisissez OK.

    La boîte de dialogue Lier les tables s'affiche.

  5. Choisissez le tableau que vous souhaitez lier, puis cliquez sur OK.
  6. Choisissez la table liée dans Microsoft Access, puis choisissez RETOUR pour travailler avec les données liées.

Connecter Excel à MySQL

Suivez ces étapes pour renvoyer les données de MySQL vers Microsoft Excel à l'aide de Microsoft Query :

  1. Effectuez l'une des actions suivantes :
    • Pour Excel 2007 et versions ultérieures, dans l'onglet Données, choisissez Obtenir des données externes. Dans le groupe À partir d'autres sources, choisissez À partir de Microsoft Query.
    • Pour Excel 2003 et versions antérieures, dans le menu Données, choisissez Importer des données externes, puis choisissez Nouvelle requête de base de données.

    La commande Nouvelle requête de base de données utilise Microsoft Query pour importer des données. Microsoft Query est une fonctionnalité facultative qui, par défaut, n'est pas installée. Si vous n'avez pas installé Microsoft Query, choisir Nouvelle requête de base de données vous invitera à l'installer. Pour ce faire, dans le Panneau de configuration, choisissez Programmes et fonctionnalités (ou Ajouter ou supprimer des programmes). Choisissez Microsoft Office (si vous avez installé Excel dans le cadre d'Office) ou Microsoft Excel, puis choisissez Modifier. Suivez les instructions à l'écran. Sélectionnez Choisir la personnalisation avancée des applications lors de l'assistant d'installation si cette option est présente pour votre version d'Office/Excel. Microsoft Query se trouve sous Outils Office.

    Lorsque vous avez installé Microsoft Query, répétez l'étape 1.

  2. Dans la boîte de dialogue Choisir la source de données, choisissez la source de données de votre pilote ODBC MySQL dans la liste, puis choisissez OK.
  3. Choisissez OK lorsque le message "Cette source de données ne contient aucune table visible." s'affiche.
  4. Dans l'assistant de requête, choisissez Annuler.
  5. Choisissez Oui lorsque vous êtes invité à continuer à modifier cette requête dans Microsoft Query.
  6. Dans la boîte de dialogue Ajouter des tables, choisissez Fermer.
  7. Choisissez le bouton SQL.
  8. Dans la boîte de dialogue d'instruction SQL, saisissez une requête SQL. Par exemple :
    select * from employees
    
  9. Dans le menu Fichier, choisissez Renvoyer les données vers Excel.
  10. Choisissez un emplacement pour les données sur votre feuille de calcul lorsque vous y êtes invité.

Connecter Oracle® à MySQL

Les instructions suivantes vous montrent comment connecter Oracle® sous Windows à MySQL. Pour plus d'informations sur DG4ODBC, consultez notre tutoriel DG4ODBC pour Windows.

  1. Créez un fichier init DG4ODBC. Pour ce faire, passez au %ORACLE_HOME%\hs\admin annuaire. Créez une copie du fichier initdg4odbc.ora . Nommez le nouveau fichier initmysql.ora .

    Remarque Dans ces instructions, remplacez %ORACLE_HOME% par l'emplacement de votre répertoire Oracle® HOME. Par exemple, C:\oraclexe\app\oracle\product\11.2.0\server .

  2. Assurez-vous que ces paramètres et valeurs sont présents dans votre fichier init :
    HS_FDS_CONNECT_INFO = my_mysql_odbc_dsn
    

    Remplacez my_mysql_odbc_dsn avec le nom d'une source de données de pilote ODBC MySQL qui se connecte au serveur MySQL cible. Par exemple

    HS_FDS_CONNECT_INFO = "32-bit MySQL System"
    

    Si votre serveur MySQL ne le fait pas vous demander de fournir un nom d'utilisateur et un mot de passe, incluez IgnoreAuth=Yes dans le HS_FDS_CONNECT_INFO valeur du paramètre. Par exemple :

    HS_FDS_CONNECT_INFO = "32-bit MySQL System;IgnoreAuth=Yes"
    
  3. Ajoutez cette ligne pour augmenter la compatibilité Oracle®/MySQL :
    HS_FDS_QUOTE_IDENTIFIER = FALSE
    
  4. Commentez la ligne qui active le traçage DG4ODBC. Par exemple :
    #HS_FDS_TRACE_LEVEL = <trace_level>
    
  5. Ajouter une entrée à %ORACLE_HOME%\network\admin\listener.ora qui crée un SID_NAME pour DG4ODBC. Par exemple :
    SID_LIST_LISTENER =
     (SID_LIST =
       (SID_DESC=
         (SID_NAME=mysql)
         (ORACLE_HOME=%ORACLE_HOME%)
         (PROGRAM=dg4odbc)
       )
     )
    
  6. Ajouter une entrée DG4ODBC à %ORACLE_HOME%\network\admin\tnsnames.ora qui spécifie le SID_NAME créé à l'étape précédente. Par exemple :
    MYSQL =
      (DESCRIPTION =
        (ADDRESS = (PROTOCOL = TCP)(HOST = oracle_host)(PORT = 1521))
        (CONNECT_DATA =
          (SID = mysql)
        )
        (HS = OK)
      )
    

    Remplacez oracle_host avec le nom d'hôte de votre machine Oracle®.

  7. Démarrez (ou redémarrez) l'écouteur Oracle® :
    cd %ORACLE_HOME%\bin
    lsnrctl stop
    lsnrctl start
    
  8. Connectez-vous à votre base de données Oracle® dans SQL*Plus.
  9. Dans SQL*Plus, créez un lien de base de données pour le serveur MySQL cible. Par exemple :
    CREATE PUBLIC DATABASE LINK mysqllink CONNECT TO
    "my_mysql_user" IDENTIFIED by "my_mysql_password" USING 'mysql';
    

    – Ou, si votre serveur MySQL ne le fait pas vous demande de fournir un nom d'utilisateur et un mot de passe :

    CREATE PUBLIC DATABASE LINK mysqllink USING 'mysql';
    
Remarques
  • Si vous rencontrez des problèmes pour vous connecter à MySQL à partir d'Oracle®, activez le suivi DG4ODBC et vérifiez les fichiers de suivi écrits dans %ORACLE_HOME%\hs\trace annuaire. Pour activer le traçage DG4ODBC, ajoutez la ligne HS_FDS_TRACE_LEVEL = DEBUG à initmysql.ora puis démarrez/redémarrez l'écouteur Oracle®. Si la trace répertoire n'existe pas, créez-le.
  • Si vous activez le suivi du gestionnaire de pilotes ODBC, mais que vous n'obtenez pas de fichier de suivi ou que vous obtenez un fichier de suivi vide, remplacez l'emplacement du fichier de suivi par le répertoire Windows TEMP. Par exemple, C:\Windows\Temp\SQL.log .

Connexion de SQL Server (serveur lié/SSIS) à MySQL

Serveur lié

Ces étapes vous montrent comment utiliser un serveur lié pour travailler avec des données MySQL, comme si vous travailliez avec des données stockées dans une table SQL Server :

  1. Dans Microsoft SQL Server Management Studio, connectez-vous à l'instance SQL Server sur laquelle vous souhaitez créer le serveur lié.

    Vous devez vous connecter avec un compte membre du rôle de serveur fixe sysadmin SQL Server pour créer un serveur lié.

  2. Cliquez avec le bouton droit sur Objets serveur > Serveurs liés > Fournisseurs > MSDASQL. Dans le menu contextuel, choisissez Propriétés.
  3. Assurez-vous que les options de fournisseur suivantes sont cochées :
    • Requêtes imbriquées
    • Niveau zéro uniquement
    • Autoriser en cours
    • Prend en charge l'opérateur "J'aime"

    Les autres options de fournisseur doivent être décochées.

  4. Cliquez avec le bouton droit sur Objets serveur. Dans le menu contextuel, choisissez Nouveau > Serveur lié.
  5. Dans la zone Serveur lié, saisissez "MYSQL".
  6. Dans la liste des fournisseurs, choisissez le fournisseur Microsoft OLE DB pour les pilotes ODBC.
  7. Dans la zone Source de données, saisissez le nom de votre source de données MySQL ODBC, puis choisissez OK.
  8. Choisissez la page Sécurité.
  9. Choisissez Be made using this security context.
  10. Saisissez votre nom d'utilisateur et votre mot de passe MySQL dans les espaces prévus. Choisissez OK.

    SQL Server vérifie le serveur lié en testant la connexion.

    • Si vous obtenez l'erreur "Le pilote spécifié n'a pas pu être chargé en raison de l'erreur système 126 :le module spécifié est introuvable", choisissez Oui lorsque vous êtes invité à conserver le serveur lié. Vous devez redémarrer votre instance SQL Server avant de pouvoir utiliser le serveur lié. Si SQL Server était déjà en cours d'exécution lorsque vous avez installé le pilote MySQL ODBC, il n'aura pas la dernière version de la variable d'environnement System PATH. Le programme d'installation du pilote MySQL ODBC ajoute des entrées pour le pilote au PATH système. Le redémarrage de l'instance rend ces modifications disponibles pour SQL Server, ce qui lui permet de charger le pilote MySQL ODBC.
    • Si vous avez fait une erreur lors de la spécification de la source de données du pilote ODBC MySQL, vous obtenez l'erreur "Nom de la source de données introuvable et aucun pilote par défaut spécifié. Si vous obtenez cette erreur, choisissez Non lorsque vous êtes invité à conserver le serveur lié et modifiez la valeur dans la zone Source de données.
  11. Vous pouvez interroger vos données MySQL soit en utilisant :
    • Nom de table en quatre parties dans une requête distribuée.

      Un nom de table en quatre parties a le format :

      nom_serveur .[nom_base_données ].[nom_schéma ].nom_table .

      Pour MySQL, vous devez omettre le nom et le schéma de la base de données. Par exemple :

      SELECT * from MYSQL...sales_by_film_category
      
    • Requête directe dans une fonction OPENQUERY. Par exemple :
      SELECT * FROM OPENQUERY(MYSQL, 'SELECT * FROM sales_by_film_category')
      

      SQL Server envoie des requêtes directes sous forme de chaînes de requête non interprétées au pilote MySQL ODBC. Cela signifie que SQL Server n'applique aucun type de logique à la requête ou n'essaie pas d'estimer ce que cette requête va faire.

      Remarque Le TEXT MySQL le type de données est incompatible avec SQL Server. Si vous tentez de récupérer un TEXT colonne, vous obtiendrez une erreur telle que "La conversion demandée n'est pas prise en charge". ou "Violation d'attribut de type de données restreint". Pour utiliser un TEXT données dans SQL Server, vous devez convertir les données dans MySQL en un type pris en charge par SQL Server. Par exemple :

      SELECT * FROM OPENQUERY(MYSQL, 'SELECT CAST(description AS char(255)) AS description from film where film_id = 1000')
      

Services d'intégration SQL Server (SSIS)

Ces instructions supposent que vous avez installé Microsoft Visual Studio et SQL Server Data Tools pour Visual Studio.

  1. Créez un fichier .csv nommé film.csv avec le contenu suivant :
    film_id,title,description,release_year,language_id,original_language_id,rental_duration,rental_rate,length,replacement_cost,rating,special_features,last_update
    1001,"Mad Max: Fury Road","Haunted by his turbulent past, Mad Max believes the best way to survive is to wander alone",2015,1,1,3,"4.99",50,"18.99","NC-17","Trailers,Commentaries,Behind the Scenes","2015-05-08 00:00:01"
    1002,"Avengers: Age of Ultron","When Tony Stark tries to jumpstart a dormant peacekeeping program, things go awry",2015,1,1,3,"4.99",50,"18.99","NC-17","Trailers,Commentaries,Behind the Scenes","2015-05-08 00:00:01"
    
  2. Dans Visual Studio, créez un nouveau projet Integration Services.
  3. Faites glisser une tâche de flux de données de la boîte à outils vers l'onglet Flux de contrôle.
  4. Choisissez l'onglet Flux de données.
  5. Faites glisser une source de fichier plat de la boîte à outils vers l'onglet Flux de données, puis appuyez sur Retour.

    La source de fichier plat se trouve dans la liste Autres sources.

  6. Dans l'éditeur de source de fichier plat, choisissez Nouveau.
  7. Dans la boîte de dialogue Éditeur du gestionnaire de connexions de fichiers plats, recherchez votre fichier .csv.
  8. Dans la zone de qualificateur de texte, saisissez " .
  9. Dans les options avancées, remplacez le DataType de la colonne last_update par database timestamp [DT_DBTIMESTAMP] . Choisissez OK.
  10. Dans la section Sortie d'erreur, remplacez l'action de troncature pour la description par Ignore failure . Choisissez OK.
  11. Faites glisser une destination ODBC de la boîte à outils vers l'onglet Flux de données, puis appuyez sur Retour.

    La destination ODBC figure dans la liste Autres destinations.

  12. Sélectionnez la source du fichier plat. Faites glisser la flèche bleue vers la destination ODBC.
  13. Sélectionnez la destination ODBC, puis appuyez sur Retour.
  14. Dans la boîte de dialogue Destination ODBC, choisissez Nouveau.
  15. Dans la boîte de dialogue Configurer le gestionnaire de connexions ODBC, choisissez Nouveau.
  16. Dans la boîte de dialogue Gestionnaire de connexion, choisissez votre source de données MySQL ODBC, puis utilisez le bouton OK pour revenir à la boîte de dialogue Source ODBC.
  17. Dans le nom du tableau ou de la liste des vues, saisissez film . Choisissez Mappages, puis choisissez OK.
  18. Choisissez le bouton Démarrer pour insérer les enregistrements du fichier film.csv dans MySQL.