Accès base de données en local
Fermé
AKH.COVI
Messages postés
37
Date d'inscription
lundi 14 mars 2016
Statut
Membre
Dernière intervention
22 février 2018
-
13 mai 2016 à 17:22
KX Messages postés 16755 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 12 février 2025 - 17 mai 2016 à 17:15
KX Messages postés 16755 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 12 février 2025 - 17 mai 2016 à 17:15
A voir également:
- Base de donnée locale
- Ip locale - Guide
- Formules excel de base - Guide
- Base de registre - Guide
- Formules mathématiques de base - Télécharger - Études & Formations
- Module d'expérience locale francais ✓ - Forum Matériel & Système
2 réponses
KX
Messages postés
16755
Date d'inscription
samedi 31 mai 2008
Statut
Modérateur
Dernière intervention
12 février 2025
3 020
13 mai 2016 à 20:57
13 mai 2016 à 20:57
Bonjour,
Où est ta base de données (sur quel pc) ?
Quelles applications accède à cette base (les clients ou le serveur) ?
Comment est configurée actuellement l'accès à cette base ?
Où est ta base de données (sur quel pc) ?
Quelles applications accède à cette base (les clients ou le serveur) ?
Comment est configurée actuellement l'accès à cette base ?
Prg9
Messages postés
6
Date d'inscription
vendredi 13 mai 2016
Statut
Membre
Dernière intervention
15 mai 2016
14 mai 2016 à 15:27
14 mai 2016 à 15:27
Salut,
Il y a plusieurs raison pour l’échec d’une connexion a une base de donnée :
1.vérifier que ton serveur accepte les connexions externes (donner la permission des IP des pc sur le port 3306).
2.Les privilèges de connexion au serveur ne sont pas permis aux utilisateurs externes. Essayer cette instruction sur la console ssh de MySql :
grant all privileges on *.* to user@xxx.xxx.xxx.xxx identified by "userpassword";
dont : xxx.xxx.xxx.xxx est l’adresse IP du serveur et user : nom d'utilisateur à qui vous accordez l'accès, userpassword est le mot de passe pour ce l'utilisateur, puis redémarrer le serveur.
3. Par défaut, MySQL n'écoute que localhost .alors dans le ficher de configuration désactiver la ligne relative au bind-address.et redémarrer le serveur a nouveau.
4.Peut être le firewall de Windows bloque la connexion externes (désactiver le pour vérifier).
5.Peut être l’antivirus qui bloque la connexion a votre pc Serveur (désactiver le pour vérifier).
6.Et bien sur le couple user/ Password dois être correcte.
Il y a plusieurs raison pour l’échec d’une connexion a une base de donnée :
1.vérifier que ton serveur accepte les connexions externes (donner la permission des IP des pc sur le port 3306).
2.Les privilèges de connexion au serveur ne sont pas permis aux utilisateurs externes. Essayer cette instruction sur la console ssh de MySql :
grant all privileges on *.* to user@xxx.xxx.xxx.xxx identified by "userpassword";
dont : xxx.xxx.xxx.xxx est l’adresse IP du serveur et user : nom d'utilisateur à qui vous accordez l'accès, userpassword est le mot de passe pour ce l'utilisateur, puis redémarrer le serveur.
3. Par défaut, MySQL n'écoute que localhost .alors dans le ficher de configuration désactiver la ligne relative au bind-address.et redémarrer le serveur a nouveau.
4.Peut être le firewall de Windows bloque la connexion externes (désactiver le pour vérifier).
5.Peut être l’antivirus qui bloque la connexion a votre pc Serveur (désactiver le pour vérifier).
6.Et bien sur le couple user/ Password dois être correcte.
AKH.COVI
Messages postés
37
Date d'inscription
lundi 14 mars 2016
Statut
Membre
Dernière intervention
22 février 2018
17 mai 2016 à 09:14
17 mai 2016 à 09:14
Bonjour,
Merci de m'avoir éclairé; vous avez été tres clair et précis. Néanmoins étant un debutant, je ne sais pas comment proceder pour les point 1 et 2. Pourriez vous me guider s'il vous plait?
le point 3 j'ai pas de ligne bind-address dans le fichier de configuration.
En plus j'ai lu sur certains forum que souvent c'est Windows qui bloque l'acces à distance pour probleme de sécurité. Alors j'ai du faire un test avec ubuntu; la la connexion à la base est effective sauf qui donne un erreur au niveau de l'acces à la table utilisateurs pour la connexion.
Merci de m'avoir éclairé; vous avez été tres clair et précis. Néanmoins étant un debutant, je ne sais pas comment proceder pour les point 1 et 2. Pourriez vous me guider s'il vous plait?
le point 3 j'ai pas de ligne bind-address dans le fichier de configuration.
En plus j'ai lu sur certains forum que souvent c'est Windows qui bloque l'acces à distance pour probleme de sécurité. Alors j'ai du faire un test avec ubuntu; la la connexion à la base est effective sauf qui donne un erreur au niveau de l'acces à la table utilisateurs pour la connexion.
13 mai 2016 à 21:17
Modifié par KX le 13/05/2016 à 21:27
La base est sur le pc qui me sert de serveur ( wampserver avec mysql ). Ensuite mon code est lancer ds netbeans depuis un autre pc. Sachant que les deux machine son en reseau local. (Ping reussi )
Ceci pour dire que le serveur a la base et l application; ensuite les autres(clients) doivent acceder a la base sur le serveur wamp.
Ci dessous le code d access a la base
Il faut souligner que celui si marche parfaitement sur le serveur elle meme. Maintenant sur les clients le programe cree automatiquement ce fichier que jai nommer propriete c est labas que je change le host par ip du serveur.
J espere que jai repondu a votre question. Merci
13 mai 2016 à 21:34
Normalement les clients ne devraient pas accéder à la base, pour obtenir des données elles devraient uniquement appeler le serveur qui lui va chercher les données en base.
Un vieux diagramme qui traîne sur l'architecture Java EE :
Sinon, dans ta config, l'utilisation de localhost et 127.0.0.1 ne peuvent pas être bon, ça devrait fonctionner du serveur à la base s'ils sont sur la même machine, mais les clients qui sont sur une autre machine ne peuvent pas y accéder.
17 mai 2016 à 08:58
Alors dans mon cas, je procede comment?
Merci
17 mai 2016 à 17:15
En modification un peu plus compliqué tu dois supprimer tout tes appels des clients vers la base de données pour les remplacer par des appels au serveur qui sera le seul à appeler la base de données.