Amaran: mysqli_connect(): (HY000/2002): Fail atau direktori tidak ditemui
P粉350036783
P粉350036783 2024-01-21 15:02:15
0
2
436

Saya cuba memasang forum biasa pada Mac saya, yang mana saya baru mencipta pangkalan data dan pengguna daripada baris arahan 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)

Jadi saya cuba menyambung menggunakan kod berikut:

$con=mysqli_connect("localhost","vanilla_user3","vanilla_password","vanilla");
if (mysqli_connect_errno($con)) {
  echo "Failed to connect to MySQL: " . mysqli_connect_error();
}

Tetapi malangnya, saya mendapat mesej ralat

Amaran: mysqli_connect(): (HY000/2002): Tiada fail atau direktori sedemikian dalam /Users/kramer65/Sites/vanilla/info.php pada baris 3 Tidak dapat menyambung ke MySQL: Tiada fail atau direktori sedemikian

Adakah anda tahu di mana silap saya?

P粉350036783
P粉350036783

membalas semua(2)
P粉043432210

Saya mengalami masalah yang sama, tetapi ia berkaitan dengan php.ini fail.

Saya terpaksa mengedit dua baris ini dalam /etc/php.ini (atau di mana sahaja /etc/php.ini (或 php.ini berada):

mysql.default_socket = /tmp/mysql.sock
mysqli.default_socket = /tmp/mysql.sock

Mulakan semula pelayan apache untuk memastikan perubahan ditunjukkan.

sudo apachectl restart
P粉949848849

Baiklah, saya baru jumpa penyelesaiannya. Masalahnya ternyata bahawa hos tidak sepatutnya sama, dan hasilnya berbeza. localhost,而是127.0.0.1。我一直以为localhost127.0.0.1

Jadi, mungkin sebagai petua kepada pengguna akan datang, sentiasa gunakan IP apabila ragu-ragu.

Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan