Mysql externe
Fermé
maximegold
Messages postés
11
Date d'inscription
dimanche 1 février 2015
Statut
Membre
Dernière intervention
4 mars 2016
-
2 avril 2015 à 16:29
Maximegold - 13 avril 2015 à 07:46
Maximegold - 13 avril 2015 à 07:46
A voir également:
- Mysql externe
- Chkdsk disque dur externe - Guide
- Mysql community server - Télécharger - Bases de données
- Ram externe - Forum Matériel & Système
- Peut on brancher un lecteur cd externe sur une voiture ✓ - Forum Autoradio
- Lecteur cd externe voiture norauto - Forum Autoradio
7 réponses
isold
Messages postés
57
Date d'inscription
samedi 8 mars 2014
Statut
Membre
Dernière intervention
30 août 2016
5
13 avril 2015 à 00:40
13 avril 2015 à 00:40
Bonsoir,
Je ne sais pas si j'ai bien compris la question mais je vais répondre sur ce que j'ai compris.
Il s'agit, à partir d'un ordinateur, d'utiliser une base de données MySQL installée sur un VPS (c'est ce que j'ai compris).
Si VPS il y a, je suppose que l'installation d'un serveur MySQL n'est pas un problème et qu'il a été installé. Je crois que la solution se trouve dans la création des droits accordés à l'utilisateur d'une base de données que l'on crée sur ce serveur.
Le lieu à partir duquel un utilisateur MySQL peut exploiter sa base de données est défini au moment de l'attribution des droits :
et
Soit un utilisateur toto, sa base de donnée totobase et son mot de passe 123456 :
A partir d'un client mysql (mysql.exe) tel que celui installé avec easyphp sur une clef USB, on peut, en insérant sa clef sur n'importe quel PC connecté à internet, utiliser une base de données MySQL distante si les droits ont été accordés pour une utilisation n'importe où ( ... to 'toto'@'%' ... ). Dans ce cas, on lance le client en indiquant, outre son nom d'utilisateur et son mot de passe, l'hôte se trouve le serveur MySQL. Les commandes peuvent être alors :
Si le serveur est installé sur un port différent, il suffit de le préciser avec un paramère supplémentaire :
NB: il vaut mieux taper -p tout court que --password=123456. Si le mot de passe est écrit, il ne sera pas demandé mais sera enregistré dans l'historique des commandes tapées, donc lisible. Il vaut mieux taper -p et ne le saisir que lorsqu'on le demande.
Certaines des bases de données que je me suis ainsi créées ne sont utilisable qu'en local (lors qu'une connexion SSH par exemple), alors que d'autres bases moins sensibles peuvent être ainsi utilisées à distance à partir d'un PC ou même d'un smartphone avec.
Je ne sais pas si j'ai répondu à la question, mais c'est ma réponse. :-)
Bonne soirée.
Je ne sais pas si j'ai bien compris la question mais je vais répondre sur ce que j'ai compris.
Il s'agit, à partir d'un ordinateur, d'utiliser une base de données MySQL installée sur un VPS (c'est ce que j'ai compris).
Si VPS il y a, je suppose que l'installation d'un serveur MySQL n'est pas un problème et qu'il a été installé. Je crois que la solution se trouve dans la création des droits accordés à l'utilisateur d'une base de données que l'on crée sur ce serveur.
Le lieu à partir duquel un utilisateur MySQL peut exploiter sa base de données est défini au moment de l'attribution des droits :
- on peut lui accorder le droit de l'utiliser uniquement en local
- on peut lui accorder le droit de l'utiliser à partir d'une machine bien précise
- on peut lui accorder le droit de l'utiliser à partir de n'importe où, de n'importe quelle machine
et
- en local, c'est localhost ;
- à partir d'une machine désignée, par un nom ou un numéro IP officiel ;
- à partir de n'importe où, représenté par le caractère %
Soit un utilisateur toto, sa base de donnée totobase et son mot de passe 123456 :
CREATE DATABASE totobase; GRANT ALL PRIVILEGES ON totobase.* TO 'toto'@'localhost' IDENTIFIED BY '123456'; GRANT ALL PRIVILEGES ON totobase.* TO 'toto'@'82.129.76.106' IDENTIFIED BY '123456'; GRANT ALL PRIVILEGES ON totobase.* TO 'toto'@'%' IDENTIFIED BY '123456';
A partir d'un client mysql (mysql.exe) tel que celui installé avec easyphp sur une clef USB, on peut, en insérant sa clef sur n'importe quel PC connecté à internet, utiliser une base de données MySQL distante si les droits ont été accordés pour une utilisation n'importe où ( ... to 'toto'@'%' ... ). Dans ce cas, on lance le client en indiquant, outre son nom d'utilisateur et son mot de passe, l'hôte se trouve le serveur MySQL. Les commandes peuvent être alors :
mysql --user=toto --host=92.104.18.203 -p mysql --user=toto --host=www.monserveur.com -p mysql -u toto -h 92.104.18.203 -p mysql -u toto -h www.monserveur.com -p
Si le serveur est installé sur un port différent, il suffit de le préciser avec un paramère supplémentaire :
-P 3306 (P majuscule) ou --port=3306
NB: il vaut mieux taper -p tout court que --password=123456. Si le mot de passe est écrit, il ne sera pas demandé mais sera enregistré dans l'historique des commandes tapées, donc lisible. Il vaut mieux taper -p et ne le saisir que lorsqu'on le demande.
Certaines des bases de données que je me suis ainsi créées ne sont utilisable qu'en local (lors qu'une connexion SSH par exemple), alors que d'autres bases moins sensibles peuvent être ainsi utilisées à distance à partir d'un PC ou même d'un smartphone avec.
Je ne sais pas si j'ai répondu à la question, mais c'est ma réponse. :-)
Bonne soirée.
Thorak83
Messages postés
1051
Date d'inscription
jeudi 20 juin 2013
Statut
Membre
Dernière intervention
22 décembre 2017
156
2 avril 2015 à 16:37
2 avril 2015 à 16:37
Bonjour,
Quelle distrib linux avez vous ?
Est-ce qu'en local vous arrivez a vous connecter ?
Quand vous dites "impossible de me connecter dessus à distance", c'est a dire ? avec quel Outil ?
Il faudrait plus d'informations pour vous aider, par ce que ça pourrait tout simplement être le firewall du serveur qui vous y empêche, ou une mauvaise configuration du serveur MySql.... Tellement de possibilités
Cordialement
Quelle distrib linux avez vous ?
Est-ce qu'en local vous arrivez a vous connecter ?
Quand vous dites "impossible de me connecter dessus à distance", c'est a dire ? avec quel Outil ?
Il faudrait plus d'informations pour vous aider, par ce que ça pourrait tout simplement être le firewall du serveur qui vous y empêche, ou une mauvaise configuration du serveur MySql.... Tellement de possibilités
Cordialement
maximegold
Messages postés
11
Date d'inscription
dimanche 1 février 2015
Statut
Membre
Dernière intervention
4 mars 2016
2 avril 2015 à 16:53
2 avril 2015 à 16:53
j'ai debian 7 et en local impeccable
Quand je met phpmyadmin j'ai bien ip de mon serveur et non localhost mais quand je veut connecter ma db a mon cms que j'ai mis dans mon hebergement mutualiser il refuse disant que je n'ai pas le droit d'y acceder.
Quand je met phpmyadmin j'ai bien ip de mon serveur et non localhost mais quand je veut connecter ma db a mon cms que j'ai mis dans mon hebergement mutualiser il refuse disant que je n'ai pas le droit d'y acceder.
Thorak83
Messages postés
1051
Date d'inscription
jeudi 20 juin 2013
Statut
Membre
Dernière intervention
22 décembre 2017
156
2 avril 2015 à 17:06
2 avril 2015 à 17:06
en local avec un phpmyadmin ca marche ?
pas de blocage Firewall ?
pas de blocage Firewall ?
maximegold
Messages postés
11
Date d'inscription
dimanche 1 février 2015
Statut
Membre
Dernière intervention
4 mars 2016
2 avril 2015 à 17:17
2 avril 2015 à 17:17
en local avec phpmyadmin impeccable
firewall je sais pas si c'est la cause du probleme il y a iptables sur le serveur et j'ai tenter d'ouvrir le port 3306 mais rien ne se produit
firewall je sais pas si c'est la cause du probleme il y a iptables sur le serveur et j'ai tenter d'ouvrir le port 3306 mais rien ne se produit
Thorak83
Messages postés
1051
Date d'inscription
jeudi 20 juin 2013
Statut
Membre
Dernière intervention
22 décembre 2017
156
Modifié par Thorak83 le 2/04/2015 à 17:27
Modifié par Thorak83 le 2/04/2015 à 17:27
plusieurs possibilités;
1 - Soit l'accès à PhpMyAdmin est réservé à 127.0.0.1, dans ce cas il suffit d'aller dans le fichier .conf où l'alias est déclaré (phpmyadmin.conf, ou httpd.conf; je ne sais pas comment vous l'avez installé). Ouvrir ce fichier de conf, trouver l'Alias /phpmyadmin et il doit y avoir juste en dessous un
Remplacer le Allow from 127.0.0.1 par soit Allow from all (sécurité minim) ou Allow from votre IP
2- soit l'utilisateur que vous utiliser pour vous connecter à phpMyadmin (root) par exemple ne peut que se connecter en local. Il suffit donc de se connecter en local avec le compte root de faire ceci:
ajouter un utilisateur avec tous les droits (privilèges)
- serveur : % (pour tout adresse)
- definir un mot de passe
- Base de données pour cet utilisateur (cocher "Donner les privilèges passepartout ("%")"
- cocher tous les privileges globaux
- valider
- recharger les privileges
1 - Soit l'accès à PhpMyAdmin est réservé à 127.0.0.1, dans ce cas il suffit d'aller dans le fichier .conf où l'alias est déclaré (phpmyadmin.conf, ou httpd.conf; je ne sais pas comment vous l'avez installé). Ouvrir ce fichier de conf, trouver l'Alias /phpmyadmin et il doit y avoir juste en dessous un
Alias /phpmyadmin "/chemin/de/phpmyadmin"
<directory "/chemin/de/phpmyadmin">
Deny from all
Allow from 127.0.0.1
</directory>
Remplacer le Allow from 127.0.0.1 par soit Allow from all (sécurité minim) ou Allow from votre IP
2- soit l'utilisateur que vous utiliser pour vous connecter à phpMyadmin (root) par exemple ne peut que se connecter en local. Il suffit donc de se connecter en local avec le compte root de faire ceci:
ajouter un utilisateur avec tous les droits (privilèges)
- serveur : % (pour tout adresse)
- definir un mot de passe
- Base de données pour cet utilisateur (cocher "Donner les privilèges passepartout ("%")"
- cocher tous les privileges globaux
- valider
- recharger les privileges
maximegold
Messages postés
11
Date d'inscription
dimanche 1 février 2015
Statut
Membre
Dernière intervention
4 mars 2016
>
Thorak83
Messages postés
1051
Date d'inscription
jeudi 20 juin 2013
Statut
Membre
Dernière intervention
22 décembre 2017
2 avril 2015 à 17:29
2 avril 2015 à 17:29
je vient essayer mais toujours rien il refuse la connection sur le port 3306 mais je me demande si mon vps accepte les connections externe.
Thorak83
Messages postés
1051
Date d'inscription
jeudi 20 juin 2013
Statut
Membre
Dernière intervention
22 décembre 2017
156
Modifié par Thorak83 le 2/04/2015 à 18:15
Modifié par Thorak83 le 2/04/2015 à 18:15
le port 3306 est le port de Mysql
Hors vous vous connectez avec une adresse du type http(s)://adresseip/phpMyadm donc sur le port 80 (ou 443 si https). donc sur le serveur Apache qui lui va se connecter sur le serveur mysql en 3306 (c'est du 3tiers)
Voir avec iptable l'ouverture de ces ports :80 et 443
Indiquez moi le message d'erreur exact et quand avez vous ce message; après avoir saisi l'adresse ou apès avoir entré les identifiants
Hors vous vous connectez avec une adresse du type http(s)://adresseip/phpMyadm donc sur le port 80 (ou 443 si https). donc sur le serveur Apache qui lui va se connecter sur le serveur mysql en 3306 (c'est du 3tiers)
Voir avec iptable l'ouverture de ces ports :80 et 443
Indiquez moi le message d'erreur exact et quand avez vous ce message; après avoir saisi l'adresse ou apès avoir entré les identifiants
maximegold
Messages postés
11
Date d'inscription
dimanche 1 février 2015
Statut
Membre
Dernière intervention
4 mars 2016
>
Thorak83
Messages postés
1051
Date d'inscription
jeudi 20 juin 2013
Statut
Membre
Dernière intervention
22 décembre 2017
Modifié par maximegold le 2/04/2015 à 18:25
Modifié par maximegold le 2/04/2015 à 18:25
j'ai regarder ip tables est tous les port mysql sont ouvert ainsi que le port 80 mais il refuse toujours que je connecte a mysql a mon cms
et quand je marque http://ipduserver:3306
et quand je marque http://ipduserver:3306
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
maximegold
Messages postés
11
Date d'inscription
dimanche 1 février 2015
Statut
Membre
Dernière intervention
4 mars 2016
2 avril 2015 à 18:23
2 avril 2015 à 18:23
E???ÿjHost 'mon ip' is not allowed to connect to this MySQL server
Thorak83
Messages postés
1051
Date d'inscription
jeudi 20 juin 2013
Statut
Membre
Dernière intervention
22 décembre 2017
156
2 avril 2015 à 18:30
2 avril 2015 à 18:30
WTF http://ipduserver:3306
Cet URL est impossible. On ne se connecte pas à Mysql directement avec son navigateur sur le port 3306. Il faut utiliser PhpMyAdmin pour cela
Cet URL est impossible. On ne se connecte pas à Mysql directement avec son navigateur sur le port 3306. Il faut utiliser PhpMyAdmin pour cela
Thorak83
Messages postés
1051
Date d'inscription
jeudi 20 juin 2013
Statut
Membre
Dernière intervention
22 décembre 2017
156
2 avril 2015 à 18:31
2 avril 2015 à 18:31
Voir ici pour installer phpmyadmin
https://www.linode.com/docs/databases/mysql/managing-mysql-with-phpmyadmin-on-debian-7-wheezy
https://www.linode.com/docs/databases/mysql/managing-mysql-with-phpmyadmin-on-debian-7-wheezy
maximegold
Messages postés
11
Date d'inscription
dimanche 1 février 2015
Statut
Membre
Dernière intervention
4 mars 2016
2 avril 2015 à 18:35
2 avril 2015 à 18:35
j ai deja installer phpmyadmin et cette url permet de faire un test de connectivité au port mysql et même quand je veut connecter ma db a mon cms sa me mes le même msg erreur.