Faire une requête SQL avec un site web

Fares16_9829 Messages postés 1 Date d'inscription   Statut Membre Dernière intervention   -  
mamiemando Messages postés 33772 Date d'inscription   Statut Modérateur Dernière intervention   -

J’ai une machine Debian qui héberge un site web avec apache et j’ai une base de données SQL Express hébergé sur Windows.

Je souhaite pouvoir faire des requêtes SQL pour récupérer des informations qu’elle est l’étape à suivre ?

A voir également:

2 réponses

BmV Messages postés 92715 Date d'inscription   Statut Modérateur Dernière intervention   4 849
 

Bien le bonjour,

On va peut-être juste rappeler ici que, sur ce forum, des formules minimales de politesse basique du genre ‘’Bonjour"  (au moins) - "S'il vous plait" - "Merci par avance" - "Bien cordialement" et toute autre variante sur le même thème sont très appréciées.

Et ce, pour au moins une bonne raison s'ajoutant à la notion de civilité universelle : les gens qui répondent ici sont des bénévoles à qui on vient demander un service gratuit.

Pour accéder à tous les détails, cliquer sur ► https://www.commentcamarche.net/infos/25855-charte-d-utilisation-de-commentcamarche-net-respect-d-autrui/#politesse

Merci par avance.
Et en attendant, bonne continuation ici.

0
mamiemando Messages postés 33772 Date d'inscription   Statut Modérateur Dernière intervention   7 882
 

Bonjour,

Il faut que ton serveur de base de données (ici SQL express) autorise les connexions depuis le client (ici ta machine Debian). Je ne sais pas pour SQL Express, mais dans le cas de MySQL :

  • le serveur n'écoute généralement pas le trafic extérieur par défaut (bind-address à 127.0.0.1). En effet, bien souvent, le serveur web est colocalisé et donc il n'y a besoin que d'écouter les connexions locales, et ce filtrage limite les risques d'attaques. Si dans ton cas il s'agit de deux machines distinctes, il faut corriger la bind-address (par exemple à 0.0.0.0) pour écouter du trafic extérieur et redémarrer le serveur de base de donnée.
  • les comptes sont définis par un couple (login, host), par exemple toto@localhost est le compte utilisé dépend d'où la connexion du cliente est faite. Si ce compte toto est valable quelque soit l'adresse du client, il faudrait le définir en tant que 'toto'@'%'. Note que du point de vue de MySQL toto@localhost et toto@% sont deux comptes différents.

Sous ces conditions, on lance un client MySQL (par exemple la commande mysql) avec l'adresse du serveur (par exemple 11.22.33.44) :

mysql -u toto -h 11.22.33.44 -p

Bonne chance

0