Tengo esta línea de código:

$mysqli = new mysqli("localhost", "user", "pass", "db");

Estoy usando XAMPP para el Apache y MySQL. Si yo uso la línea de arriba se tira el siguiente error:

Warning: mysqli::mysqli(): (HY000/1045): Access denied for user 'user'@'localhost' (using password: YES) in C:\xampp\htdocs\xo\php\connect.php on line 2
Failed to connect to MySQL: (1045) Access denied for user 'user'@'localhost' (using password: YES)
Warning: main(): Couldn't fetch mysqli in C:\xampp\htdocs\xo\php\connect.php on line 6

Es lo mismo si puedo reemplazar localhost con 127.0.0.1(he probado). Pero si yo uso mi red interna IP(en este caso 192.168.1.101) en lugar de localhost se conecta correctamente.

  • posibles duplicados de Error de conexión con mysqli
  • No ha proporcionado acceso a [email protected] de su servidor MySQL, pero esto lo han hecho para [email protected]. Sólo añadir privilegios
  • Comodines para acceder al parecer no permite localhost o 127.0.0.1. Es ya sea local o externa, no tanto. Establecer el acceso a localhost resuelto el problema.

5 Comentarios

  1. 1

    usted está teniendo problemas con su params

    $mysqli = new mysqli($localhost, $user, $pass, $db);
    
    $localhost, $user, $pass, $db (these params should be consistent)
  2. 1

    Yo tengo el error:

    Advertencia: mysqli_connect(): (HY000/1045): Access denied for user ‘dinesh’@’localhost’ (utilizando password: YES) C:\xampp…………..

    He sustituido localhost con mi dirección IP y que finalmente se trabajó en Windows 10.

    • Extraño, pero no funcionó! Trató de localhost y 127.0.0.1 pero extrañamente no hay alegría…
  3. 0

    Después de la actualización a partir de php5 para php7, el mismo problema me atascó durante 2 días y finalmente encontré que es porque en php.ini de configuración, también es necesario definir la ubicación del zócalo para mysqli. El original de mysql tienes desaprobar después de php5.5 así que después de la actualización, la necesidad de agregar mysqli.default_socket además de mysql.default_socket por su ubicación del zócalo.

    Sólo asegúrese de las siguientes líneas es en php.ini :

    mysqli.default_socket = /ruta/mysql.calcetín
    mysql.default_socket = /ruta/mysql.calcetín

  4. -2

    Creo que debería ser:

    $mysqli = new mysqli($localhost, $user, $pass, $db);
    • Cómo es diferente de la de código en el OP?

Dejar respuesta

Please enter your comment!
Please enter your name here