web-dev-qa-db-fra.com

mysqli_connect (): (HY000 / 2002): Aucune connexion n'a pu être établie car la machine cible l'a activement refusée

Je sais qu'il y a beaucoup de questions comme celle-ci, mais je n'y ai trouvé aucune solution.

Ce que j'ai essayé: -

  • pare-feu vérifié

  • redémarré mon PC et le serveur Apache

  • redémarré MYSQL

  • vérifié mon code

  • J'ai tout essayé et trouvé sur Internet

voici mon code: -

<?php

$dbhost = 'localhost:3360';
$dbuser = 'root';
$dbpass = '';
$db     = 'test_db13';


$conn  = mysqli_connect($dbhost,$dbuser,'',$db);

if(! $conn){
  die('Could not connect connect: ') ;
}

echo 'Successfully Connected';


$sql = 'Connected Successfully';
  $retvalue = mysqli_query($sql);

  if(! $retvalue){
    die('Cannot connect to SQL: ');
  }

echo 'DataBase test_db13 has successfully created';

mysqli_close($conn);

 ?>

J'ai défini le mot de passe, mais il me montre toujours l'erreur.

Voici l'image du pare-feu: - enter image description here

enfin XAMMP fonctionne, voici la preuve

enter image description here

7
Sami

Si vous regardez votre panneau de contrôle XAMPP, il est clairement indiqué que le port vers le serveur MySQL est 3306 - vous avez fourni 3360. 3306 Est la valeur par défaut et n'a donc pas besoin d'être spécifié. Même ainsi, le 5ème paramètre de mysqli_connect() est le port, qui est l'endroit où il doit être spécifié.

Vous pouvez simplement supprimer complètement la spécification du port, car vous utilisez le port par défaut, ce qui le rend

$dbhost = 'localhost';
$dbuser = 'root';
$dbpass = '';
$db     = 'test_db13';

Les références

10
Qirel

Vous avez entré un mauvais numéro de port 3360 au lieu de 3306. Vous n'avez pas besoin d'écrire le numéro de port de la base de données si vous utilisez daefault (3306 dans le cas de MySQL)

2
dy'sback

Dans votre code PHP vous avez défini le port incorrect, voici ce que le code doit être

<?php

$dbhost = 'localhost';
$dbuser = 'root';
$dbpass = '';
$db     = 'test_db13';

Le port de votre code est défini sur 3360 quand ça devrait être 3306, mais comme il s'agit du port par défaut, vous n'avez pas besoin de le spécifier.

1
Roshan Bhumbra

Dans la plupart des cas, c'est un problème de journal de données. Suis les étapes.

i) Allez dans le dossier de données de mysql. Pour xampp, accédez à C:\xampp\mysql\data.

ii) Recherchez le nom du fichier journal comme ib_logfile0 et ib_logfile1.

iii) Créez une sauvegarde et supprimez ces fichiers.

iv) Redémarrez Apache et mysql.

0
Ravi Ranjan