sistema - registro de usuarios php mysql descargar
El usuario de mi base de datos existe, pero todavía obtengo un(HY000/2002): no existe tal archivo o directorio (3)
Estoy intentando instalar foros de vainilla en mi Mac, y para esto acabo de crear una base de datos y un usuario desde la línea de comandos mysql:
mysql> CREATE DATABASE vanilla;
Query OK, 1 row affected (0.00 sec)
mysql> create user ''vanilla_user3''@''localhost'' IDENTIFIED BY ''vanilla_password'';
Query OK, 0 rows affected (0.00 sec)
mysql> GRANT ALL PRIVILEGES ON * . * TO ''vanilla_user3''@''localhost'';
Query OK, 0 rows affected (0.00 sec)
mysql> FLUSH PRIVILEGES;
Query OK, 0 rows affected (0.00 sec)
Entonces trato de conectarme usando el siguiente código:
$con=mysqli_connect("localhost","vanilla_user3","vanilla_password","vanilla");
if (mysqli_connect_errno($con)) {
echo "Failed to connect to MySQL: " . mysqli_connect_error();
}
pero desafortunadamente recibo un error que dice Warning: mysqli_connect(): (HY000/2002): No such file or directory in /Users/kramer65/Sites/vanilla/info.php on line 3 Failed to connect to MySQL: No such file or directory
¿Alguna idea de dónde voy mal?
Digamos que su puerto MAMP MySQL está configurado en 8889 como está por defecto. A veces, solo localhost
no es suficiente, en cuyo caso también tiene que colocar el puerto MySQL para que pueda hacer localhost:8889
o localhost:{whatever your MySQL port number is}
. Todavía soy nuevo en MySQL, así que no sé por qué, pero a alguien que haya recibido el mensaje recientemente: Warning: mysqli::mysqli(): (HY000/2002): No such file or directory in ...
existe Warning: mysqli::mysqli(): (HY000/2002): No such file or directory in ...
agregar el número de puerto MySQL a localhost fue la solución para mí.
Muy bien, acabo de encontrar la solución. El problema resultó ser que el host no debería haber sido localhost
, sino 127.0.0.1
. Siempre pensé que localhost
y 127.0.0.1
eran iguales, pero resultó ser diferente.
Entonces, tal vez como una sugerencia para futuros usuarios, siempre use la ip cuando tenga dudas.
Les deseo a todos un hermoso día!
Tuve el mismo problema pero el problema era algo relacionado con el archivo php.ini
.
Tuve que editar estas dos líneas en /etc/php.ini
(o donde sea que se encuentre su php.ini
):
mysql.default_socket = /tmp/mysql.sock
mysqli.default_socket = /tmp/mysql.sock
Reinicie el servidor apache para asegurarse de que se reflejen los cambios.
sudo apachectl restart