Se connecter avec
S'enregistrer | Connectez-vous

You are not allowed to do this.

impossible de se connecter à ma BD (OVH)

Dernière réponse : dans Programmation

Bonjour
J'ai mis mon site en ligne en l'hébergent sur OVH, tout se passe plutôt bien sauf lorsqu'il s'agit de faire du sql. En gros, dès que je dois aller chercher des infos dans ma BD, j'obtiens le message d'erreur suivant :

  1. Warning: mysql_query() [function.mysql-query]: Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2) in /home.10.11/** on line 61
  2.  
  3. Warning: mysql_query() [function.mysql-query]: A link to the server could not be established in /home.10.11/** on line 61


Pourtant, j'appelle bien un fichier de connexion qui contient les bons paramètres (ceux envoyés par ovh), comme dab' quoi. Qu'en pensez-vous? Merci

Autres pages sur : impossible connecter ovh

Lassé par la pub ? Créez un compte

Bon apparemment, je dois me connecter en SSH.. C'est simple il suffit de :
- télécharger putty.exe
- télécharger puttygen.exe
- générer quarante clés en privé public et je ne sais quoi d'autre
- envoyer ces clés à OVH pour qu'ils me renvoient des identifiants
- me connecter à Putty pour rentrer ces identifiants
...
Nan mais ya pas plus compliqué ?? Aidez moi j'en ai marre

Non pas encore. C'est vraiment bizarre : j'ai envoyer mes fichiers en FTP, le site marche mais dès que j'accède à la BD ça plante. J'ai vu que d'autres personnes avaient aussi ce problème, cela viendrait d'un problème de version ou je ne sais quoi. Par contre, si vous savez comment accéder au site en ssh, je suis preneur (j'ai rentré mon identifiant de FTP mais le mdp n'a pas l'air de fonctionner) Je vais les contacter et je vous tiens au courant. merci !

Salut
Je récapitule car en effet c'est pas très clair :) 
J'ai envoyé mes pages par FTP, ça ça marche très bien. Mon site s'affiche normalement. Je peux accéder à PHPMyAdm. Par contre dès que j'essaie d'utiliser ma base de données (par du code PHP donc, comme un espace membre par exemple), j'ai ce message d'erreur qui s'affiche :


1. Warning: mysql_query() [function.mysql-query]: Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2) in /home.10.11/** on line 61
2.
3. Warning: mysql_query() [function.mysql-query]: A link to the server could not be established in /home.10.11/** on line 61

J'en déduis donc qu'il y a un problème de connexion à ma BDD. Mes paramètres de connexion sont stockés dans un fichier "euro_cnx.php" qui contient le code suivant :

$host = 'mysql5-4';
$username = 'euromelt';
$password = '***';
$bdd_name = 'euromelt';

Ce sont bien les informations qui m'ont été envoyées par mail, où est le problème? Tout a l'air normal.. Merci pour vos réponses :) 

Re,
Faux espoir, ton message d'erreur me faisait penser à celui que j'obtiens quand j'oublie de me connecter a la base avant de faire une requete. Mais ca n'a pas l'air d'etre ca...

Pour mieux orienter les recherches, es-tu débutant ou expert?
Sinon, es-tu en train d'essayer d'installer un programme spécifique (qui provoque l'erreur) ?
Enfin, tu as quel genre d'hébergement chez ovh (mutualisé, dédié,...) ?

J'ai recherché un peu, et, de ce que j'ai pu voir, cette erreur est souvent due a de mauvais identifiants. Tu as essayé de te connecter "à la main", avec un fichier de test en php ?

Bon courage ;) 

Salut Halike.
Dabord, merci pour ton aide.
Pour éclaircir les choses, il s'agit d'un hébergement mutualisé 60GP. Je suis plutôt moyen en hébergement.
Je ne vois pense pas qu'il y ait d'erreurs sur les identifiants de connexion. J'ai mis le login et le mot de passe que l'on m'a envoyé par mail. D'ailleurs avec ceux-là j'arrive à me connecter à PHPMyAdmin donc ils fonctionnent. Le serveur est le bon, c'est aussi celui qu'ils m'ont donné et le nom de la base je me suis pas trompé, donc.....
Je n'essaie pas d'installer de programmes spécifiques. Il s'agit d'une page où j'affiche des données sur des membres, contenues dans une base. Je ne pense pas que ce soit ça qui bloque...

Etrange...
Si PHPMyadmin fonctionne, c'est que tes informations de connexion sont bonnes. Ca elimine aussi un probleme sur la base de donnees. C'est deja ca d'acquis.
Franchement, je ne vois pas trop d'ou peut venir ce probleme.
Peut etre pourrais tu poster la partie de code php qui se connecte (vers la ligne 61 si on en croit ton message d'erreur). Je ne suis pas tres convaincu, mais on ne sait jamais...
Pour mieux delimiter le probleme, tu peux peut etre essayer un mini script de connection a la base, sans rien d'autre:
  1. <?
  2. $host = 'mysql5-4';
  3. $username = 'euromelt';
  4. $password = '***'; //a modifier evidemment ;)
  5. $bdd_name = 'euromelt';
  6. mysql_connect($host,$username,$password);
  7. mysql_select_db($bdd_name);
  8. mysql_query('SHOW TABLES');
  9. mysql_close();
  10. ?>


Et voir si ca passe.

Bon courage ;) 
Expert Programmation

Slt, c'est peut etre bete, mais si tu vien juste de prendre l'offre chez OVH, il faut attendre quelque heures pour que tout soit bien initialiser.

Sinon petite question au passage, pourquoi mettre les id de conection a la BDD dans une variable pour mettre en suite la varible pour se connecter? ne serait-ce pas plus court de faire ca :
  1. mysql_connect("mysql5-4","euromelt","******");
  2. mysql_select_db("euromelt");
Expert Programmation

ca dépend de ton organisation, cependant c'est toujours plus pratique de les avoir dans des variable pour réunir les infos dans un fichier de config pour ensuite l'inclure, et ainsi éviter de chercher l'endroit ou se trouve les infos de connexion si tu as beaucoup de fichier pour ton script.

Bonsoir à tous
Problème résolu. Cela ne venait pas d'OVH mais de mon code. Apparemment c'est un "require" qui ne passait pas. Voici mon code de début de page :
  1. <html>
  2. <head>
  3. <?php require_once("../global.php");?>
  4. <?php require_once("includes/fonctions.php");?>
  5. <link rel="stylesheet" media="screen" type="text/css" title="index" href='<?php echo RACINE;?>css/index.css' />
  6. </head>
  7. <body>
  8. <div id="conteneur">
  9. <!--Inclusion des blocs -->
  10. <?php
  11. include(RACINE."fr/includes/banniere.php");
  12. include(RACINE."fr/includes/identification.php");
  13. include(RACINE."fr/includes/menuHaut1.php");
  14. include(RACINE."fr/includes/menuHaut2.php");
  15. include(RACINE."fr/includes/menu.php");
  16. include(RACINE."fr/includes/fonctions.php");
  17. ?>

(RACINE est une var globale qui contient la racine du site, appelée dans global.php).
Au début, j'avais mes paramètres de connexion dans un fichier euro_cnx.php dont j'avais fais un require à la suite des includes que vous voyez. J'utilisais exactement le même fichier en local et tout se passait bien. C'est pourquoi j'ai immédiatement pensé à un problème d'accès au serveur. Le code était donc bon mais ça ne passait pas en ligne.
J'ai fais un test en plaçant le code contenu de euro_cnx.php en haut de cette page et là ça a marché.
Pour finir, j'ai placé ce code dans ma page global.php appelée en haut de page, cela est finalement plus pratique et fonctionne à merveille.
Donc, conseil à tous : faites plein de tests, isolez des bouts de code, bref n'oubliez pas que le résultat n'est pas forcément le même en local qu'en ligne. Du moins c'est la leçon que je retiendrais après 6 heures de galères.. :) 
A+ et merci !
PS : je tiens à souligner l'efficacité d'ovh qui m'a répondu le lendemain par mail
Lassé par la pub ? Créez un compte
Tom's guide dans le monde