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

Bases de données Delphi Discussion :

Firedac et MySQL


Sujet :

Bases de données Delphi

  1. #1
    Membre émérite
    Avatar de free07
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2005
    Messages
    941
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ardèche (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2005
    Messages : 941
    Par défaut Firedac et MySQL
    Bonjour à tous,

    J'essai vainement de me connecter à un serveur MySQL 8.0.13 avec Firebird. Jusqu'à présent la connexion est réalisée à l'aide des composants MyDAC, on souhaiterait s'en débarrasser et utiliser Firedac mais voila, mes premiers essais sont infructueux.
    Avec la version 8 de MySQL, j'ai vu que l'on est obligé d'utiliser le connecteur 64 bits que j'ai récupéré suite à l'installation de MySQL ( connecteur C ) je fais donc un essai en générant une appli 64 bits.

    les informations de connexion sont renvoyés par un web service, j'utilise les composants FDConnection et FDPhysMySQLDriverLink et je les initialise comme suit :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
     
    ...  
    begin
    var
      l_AuthObj : authentificationObj;
      l_iCpt : Integer;
     
      WS_Authentification_dotNET := ws_auth.GetWS_AuthSoap(false, 'adresse du web service pour l''authentification');
      l_AuthObj :=  WS_Authentification_dotNET.RenvoiAuthentification(EditLogin.Text, EditMdp.Text);
      if Assigned(l_AuthObj) and (l_AuthObj.IdConnexion = 1) then
      begin
        try
          with FDConnection.Params do
          begin
            Clear;
            Add('DriverID=MySQL');
            Add('Server=' + l_AuthObj.IPServeurMySQL);
            Add('Port=' + IntToStr(l_AuthObj.PortServeurMySQL));
            Add('Database=' + l_AuthObj.nomBDD);
            Add('Username=' + l_AuthObj.LoginServeurMySQL);
            Add('Password=' + l_AuthObj.PasswordServeurMySQL);
            Add('UseSSL=false');
            if l_AuthObj.CompressionMySQL then
              Add('Compress=true')
            else
              Add('Compress=false');
          end;
          Memo.Clear;
          For l_iCpt := 0 to FDConnection.Params.Count - 1 do // pour afficher les infos de connexion reçus et vérifier qu'elles sont correctes.
            Memo.Lines.Add(FDConnection.Params[l_iCpt]);
     
          FDConnection.Connected := True;
          LabelStatus.Caption := 'Connecté au serveur !';
     
        except
          on E : Exception do ShowMessage(E.Message);
     
        end;
        l_AuthObj.Free;
    end;
     
    procedure TFormMain.FDConnectionBeforeConnect(Sender: TObject);
    begin
      // emplacement du connecteur MySQL 64 bits car il n'existe pas de connecteur 32 bits avec la version 8 de MySQL
     
      FDPhysMySQLDriverLink.VendorLib := ExtractFilePath(Application.ExeName) + 'libmysql.dll';
      ShowMessage(FDPhysMySQLDriverLink.VendorLib);  / pour vérifier que la lib est bien chargée
    end;
    J'ai toujours l'erreur suivante

    [FireDAC][Phys][MySQL] Access denied for user 'ODBC'@'xxx.xxx.xxx.xxx' (using password: YES)

    Je ne comprend d'ailleurs pas pourquoi il me renvoi ODBC comme login car ce n'est pas celui que je lui envoie...

    J'ai vérifié et re vérifié les infos de database, login, mdp, adresse serveur et port, elles sont correctes, d'ailleurs je me connecte bien au serveur en utilisant les composants MyDAC avec ces mêmes infos, j'utilise même MySQL workbench avec ces mêmes infos sans problèmes

    Alors je dois passer à côté de quelque chose d'important mais je ne vois pas lequel...

  2. #2
    Expert éminent
    Avatar de Paul TOTH
    Homme Profil pro
    Freelance
    Inscrit en
    Novembre 2002
    Messages
    8 964
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Paris (Île de France)

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

    Informations forums :
    Inscription : Novembre 2002
    Messages : 8 964
    Par défaut
    tu dis ne pas lui envoyer ODBC, mais c'est bien ce qu'il récupère

    c'est étonnant ça...tu n'as pas un "ODBC" qui traîne dans tes sources (PAS ou DFM) ?
    Developpez.com: Mes articles, forum FlashPascal
    Entreprise: Execute SARL
    Le Store Excute Store

  3. #3
    Rédacteur/Modérateur
    Avatar de Andnotor
    Inscrit en
    Septembre 2008
    Messages
    5 912
    Détails du profil
    Informations personnelles :
    Localisation : Autre

    Informations forums :
    Inscription : Septembre 2008
    Messages : 5 912
    Par défaut
    Le paramètre est User_Name et non Username.

    Double-clique sur le composant FDConnection et tu retrouveras cet utilisateur ODBC

  4. #4
    Membre émérite
    Avatar de free07
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2005
    Messages
    941
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ardèche (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2005
    Messages : 941
    Par défaut
    Haaaaaa

    c'est ça, merci !

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

Discussions similaires

  1. Connexion Firedac / Mysql impossible !
    Par Debutant_pc dans le forum Bases de données
    Réponses: 3
    Dernier message: 14/10/2019, 11h15
  2. Monitor Firedac sqlite et MySQL
    Par Papy214 dans le forum Bases de données
    Réponses: 4
    Dernier message: 26/09/2018, 15h58
  3. Connexion à MySQL Server 64 bits (FireDAC) / Delphi xe5
    Par tleboukaka dans le forum Bases de données
    Réponses: 6
    Dernier message: 19/06/2015, 14h04
  4. [XE5] Problème de lecture de blob MySQL avec FireDAC
    Par Achillée dans le forum Bases de données
    Réponses: 0
    Dernier message: 17/03/2015, 13h19
  5. [Kylix] Pb connection à Mysql
    Par Anonymous dans le forum EDI
    Réponses: 3
    Dernier message: 25/04/2002, 15h26

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