PC SOFT

FORUMS PROFESSIONNELS
WINDEVWEBDEV et WINDEV Mobile

Accueil → WINDEV 2024 → WD19 + Acces Natif MySQL   Erreur 79
WD19 + Acces Natif MySQL Erreur 79
Débuté par Bertin - Zen-Project, 01 déc. 2014 12:18 - 9 réponses
Membre enregistré
1 299 messages
Popularité : +20 (72 votes)
Posté le 01 décembre 2014 - 12:18
Bonjour,

pour une fois changé, cette fois c'est moi qui appel l'équipe


J'ai un code d'acces à une DB MySQL, mais j'ai une erreur en retour lors de la tentative d'ouverture de connexion
Sur le serveur MySQL , j'ai 2 DB une de TEST et une de PRODUCTION.
Je pense que mon code est bon vu que à la DB de test je me connecte bien


La différence pour moi entre la DB de TEST et celle de PRODUCTION est que
1° Il y a des - dans le USer et la DB de PROD
2° la taille du password en PROD est plus grand que en test


Y aurait il un souci avec ses deux différences ?


sMySqlServeur = "mysql1.xxxxxxxx.xx"

// DB Production
sMySqlUser = "portal-xxxxx-xx"
sMySqlNomDB = "portal-xxxxx-xx"
sMySqlPass = "6Xxx4xXxxXxx11XX"


//DBTest
//sMySqlUser = "portal-xxxxx-xx"
//sMySqlNomDB = "portal-xxxxx-xx"
//sMySqlPass = "9Xxx2xx8"


//SQL
ConnexionMySql..Utilisateur = sMySqlUser
ConnexionMySql..MotDePasse = SansEspace(sMySqlPass)
SI sMySqlPort > 0 ALORS
ConnexionMySql..Serveur = sMySqlServeur+":"+sMySqlPort

SINON
ConnexionMySql..Serveur= sMySqlServeur

FIN

ConnexionMySql..BaseDeDonnées = sMySqlNomDB
ConnexionMySql..Provider = hAccèsNatifMySQL
ConnexionMySql..Accès = hOLectureEcriture
ConnexionMySql..Compression= Val(xcompression)


// connexion à la DB MySQL du site devant afficher les données
SI PAS HOuvreConnexion(ConnexionMySql)ALORS
SI PAS EnModeService() ALORS
Info("Erreur lors de l'ouverture de la Base de données principale"+RC+sMySqlUser+ "-''"+Crypte(sMySqlPass,sCryptePass,crypteAnsi+crypteAucun,encodeBASE64)+"'' /"+sMySqlServeur+":"+sMySqlPort+"="+sMySqlNomDB+RC+RC+RC+ErreurInfo(errComplet)+RC+RC+RC+HErreurInfo(hErrComplet))
FIN
Proc_LogTemp(Vrai,Vrai,ErreurInfo(errComplet)+RC+RC+RC+HErreurInfo(hErrComplet),"Erreur lors de l'ouverture de la Base de données principale"+RC+sMySqlUser+ "- Crypté : ''"+Crypte(sMySqlPass,sCryptePass,crypteAnsi+crypteAucun,encodeBASE64)+"'' /"+sMySqlServeur+":"+sMySqlPort+"="+sMySqlNomDB,"DB MySQL Erreur")

Ouvre(FEN_Parametre_INI)
//FinProgramme()

SINON
Col_Parametre.gbOuvreDBMySQL = Vrai

FIN


SI Col_Parametre.gbOuvreDBMySQL = Faux ALORS
FinProgramme()
FIN





Que s'est-il passé ?
Erreur de l'accès natif MySQL.
Numéro d'erreur = 79

Echec de la connexion.
L'erreur suivante a été renvoyée par la base de données <mysql1.xxxxxxxx.xx> :
Numéro d'erreur = <2005>.
Message d'erreur :
Unknown MySQL server host 'mysql1.xxxxxxxx.xx' (11004)

Code erreur : 73001
Niveau : erreur non fatale (EL_ONRETURN)
Code erreur WD55 : 3001

Dump de l'erreur du module 'WD190HF.DLL' (19.0.102.2).
Identifiant des informations détaillées (.err) : 72801
Informations de débogage :
IEWDMSQL=101.23
Module=<WDMSQL>
Version=<19.0.3.0>
Informations supplémentaires :
EIT_NATIVECODE : <79>

----- Sous-erreur n°1 -----

Que s'est-il passé ?
L'erreur suivante a été renvoyée par la base de données <mysql1.xxxxxxxx.xx> :
Numéro d'erreur = <2005>.
Message d'erreur :
Unknown MySQL server host 'mysql1.xxxxxxxx.xx' (11004)

Code erreur : 22
Niveau : erreur fatale (EL_FATAL)

Dump de l'erreur du module 'wd190msql.dll' (19.0.3.0).
Identifiant des informations détaillées (.err) : 22
Informations de débogage :
IEWDMSQL=101.16
Module=<WDMSQL>
Version=<19.0.3.0>
Couche client : C:\Mes Projets\xxxxxxxx_Interconnect\Exe\Exécutable Windows 32 bits\LIBMYSQL.DLL
Provider : WinDevMySQL
Utilisateur : portal-xxx-xx
Source de données : mysql1.xxxxxxxx.xx
Base de données : portal-xxx-xx
Timeout de connexion : 30
Timeout de commande : 30
Unicode supporté : 1
Code page du WL : 1252
Code page de la connexion : 1252
Informations supplémentaires :
EIT_BASECODE : <2005>
EIT_INFOCLIENT : <5.0.51a>

--
Bertin CARRIERE
Consultant & Formateur
bertin.carriere@gmail.com
http://www.zen-project.be http://www.linkedin.com/in/bertincarriere

Belgique +32(0)2/318.02.67
France +33(0)3/66.722.542
Espagne +34.5/12.702.266

Membre de http://www.be-dev.be
Posté le 01 décembre 2014 - 12:30
Bonjour Bertin,

Vérifie le numéro de port il est peut-être différent du port par défaut dans la DB de prod, cela semble correspondre au message d'erreur...

Bon Dev

Marc Fastré
www.OptimalIT.be
Membre enregistré
1 299 messages
Popularité : +20 (72 votes)
Posté le 01 décembre 2014 - 14:12
Merci Marc de ton aide

Je me réponds à moi même et dans un but pédagogique.

ConnexionMySql est le nom de la connexion définie dans mon analyse-relationelle

le 1° point, la longueur du mots de passe

on l'a changer et mis un mots de passe de moins de 15 caractères et là on a eu un autre message d'erreur

ou il nous informe que le user est bon (donc le password aussi) mais que ce User n'a pas droit en acces à une base de données

hors il donne le nom de la DB et c'est celle de test (definie dans la connexion de l'analyse)

Il semble donc que Windev pour une raison que j'ignore garde le nom de la DB et ne prend pas celle définie dans le code

pour résoudre le problème, j'ai tout simplement défini une variable global de type connexion (vide), que je rempli avec les valeur et que j'utilise pour établir la connexion et là , Tout passe

Etrange , n'est il pas

--
Bertin CARRIERE
Consultant & Formateur
bertin.carriere@gmail.com
http://www.zen-project.be http://www.linkedin.com/in/bertincarriere

Belgique +32(0)2/318.02.67
France +33(0)3/66.722.542
Espagne +34.5/12.702.266

Membre de http://www.be-dev.be
Posté le 01 décembre 2014 - 20:17
Bonjour Bertin,

tu viens de te heurter à la raison pour laquelle je ne défini JAMAIS de
connexion dans l'analyse...

Avant même d'arriver à TON code de connexion (qui après tout peut se
trouver n'importe ou dans ton programme), ton programme essaye de se
connecter automatiquement à la connexion définie dans l'analyse... Et
donc, crash, vu que cette connexion de test n'est pas dispo en prod...

Donc, je déclare toujours mes fichiers en HF classique (sans connexion)
dans l'analyse, et je change par code au début de mon projet

Cordialement


--
Fabrice Harari
Consultant WinDev, WebDev et WinDev Mobile International

NOUVEAU: WXReplication, votre système de réplication open source est
disponible sur mon site web !!!
WXShowroom.com : Montrez vos projets !
Plus d'information sur http://fabriceharari.com


On 12/1/2014 8:12 AM, Bertin CARRIERE wrote:
Merci Marc de ton aide

Je me réponds à moi même et dans un but pédagogique.

ConnexionMySql est le nom de la connexion définie dans mon
analyse-relationelle

le 1° point, la longueur du mots de passe

on l'a changer et mis un mots de passe de moins de 15 caractères et là
on a eu un autre message d'erreur

ou il nous informe que le user est bon (donc le password aussi) mais que
ce User n'a pas droit en acces à une base de données

hors il donne le nom de la DB et c'est celle de test (definie dans la
connexion de l'analyse)

Il semble donc que Windev pour une raison que j'ignore garde le nom de
la DB et ne prend pas celle définie dans le code

pour résoudre le problème, j'ai tout simplement défini une variable
global de type connexion (vide), que je rempli avec les valeur et que
j'utilise pour établir la connexion et là , Tout passe

Etrange , n'est il pas

--
Bertin CARRIERE
Consultant & Formateur
bertin.carriere@gmail.com
http://www.zen-project.be http://www.linkedin.com/in/bertincarriere

Belgique +32(0)2/318.02.67
France +33(0)3/66.722.542
Espagne +34.5/12.702.266

Membre de http://www.be-dev.be
Membre enregistré
1 299 messages
Popularité : +20 (72 votes)
Posté le 02 décembre 2014 - 09:32
Bonjour Fabrice,

Classiquement je fais comme toi, mais ici par "facilité" , j'ai défini la connexion pour pouvoir importé les descriptions des fichiers d'une DB MySQL

Ta remarque est tout a fais juste, on ne fait pas toujours la connexion juste en début de programme.

--
Bertin CARRIERE
Consultant & Formateur
bertin.carriere@gmail.com
http://www.zen-project.be http://www.linkedin.com/in/bertincarriere

Belgique +32(0)2/318.02.67
France +33(0)3/66.722.542
Espagne +34.5/12.702.266

Membre de http://www.be-dev.be
Posté le 06 décembre 2014 - 18:04
Hello,

Il faut utiliser l'option "initial catalog=nomdelabase" lorsque tu redéfini la connexion.

Jerome
Posté le 11 avril 2018 - 00:52
Bonjour,

J'ai également des difficultés avec l'accès natif MariaDB en Windev 23 (tentative de connexion depuis l'analyse, pour importer les descriptions de fichiers)

"La connexion à la base a échoué.
Impossible de se connecter à la base "123.123.123.123:3306"
Erreur de l'accès natif MariaDB.
Numéro d'erreur = 79

Echec de la connexion.
L'erreur suivante a été renvoyée par la base de données <123.123.123.123:3306> :
Numéro d'erreur = <2005>.
Message d'erreur : Unknown MySQL server host '123.123.123.123:3306' (11001)"

L'accès distant fonctionne bien (connexion OK via HeidiSQL sur le poste de développement Windev)

Les recherches google ne donnant rien, je me permets de poster ici

Merci par avance pour votre aide

Laurent
Posté le 16 avril 2018 - 12:02
Bonjour,

J'ai exactement le même problème erreur 79 en Windev 23

Avez-vous trouvez une solution pour la connexion sur la base MairaDB ou MySQL depuis un accès natif via windev ?


Je précise que c'est depuis un accès externe, le port ouvert, l'utilisateur autorisé à la base de donnée ... tout est ok de ce niveau là.

Je peux accéder à ma base depuis HeidiSQL donc aucun problème de blocage concernant le nom d'utilisateur ou mot de passe

Mes salutations
Posté le 28 mai 2018 - 10:58
Pour MySQL , si vous avez une redéfinition de port , il faut définir dans la propriété "InfosEtendues" de la connexion le numéro du port.

MaConnexion..Serveur= "mon_adresse_serveur"
MaConnexion..InfosEtendues = "Server Port=66;"
Posté le 28 mai 2018 - 10:59
Pour MySQL , si vous avez une redéfinition de port , il faut définir dans la propriété "InfosEtendues" de la connexion le numéro du port.

MaConnexion..Serveur= "mon_adresse_serveur"
MaConnexion..InfosEtendues = "Server Port=66;"