Tình huống này, tôi đang cố sử dụng kết nối PHP để kết nối Cơ sở dữ liệu MySQL của tôi trên phpmyadmin. Không có gì lạ mắt về kết nối chỉ cố gắng để xem liệu kết nối có thành công hay không. Tôi đang sử dụng MAMP để lưu trữ các cơ sở dữ liệu, kết nối Tôi cố gắng để sử dụng là:Kết nối PHP không thành công: SQLSTATE [HY000] [2002] Kết nối từ chối
<?php
$servername = "127.0.0.1";
$username = "root";
$password = "root";
try {
$conn = new PDO("mysql:host=$servername;dbname=AppDatabase", $username, $password);
// set the PDO error mode to exception
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
echo "Connected successfully";
}
catch(PDOException $e)
{
echo "Connection failed: " . $e->getMessage();
}
?>
tôi đã được sử dụng đưa thư để kiểm tra để xem nếu kết nối đang làm việc, nhưng tôi tiếp tục nhận được thông báo lỗi này:
kết nối thất bại: SQLSTATE [HY000] [2002] Kết nối từ chối
Trước khi tôi đã nhận được một thông báo lỗi của:
kết nối thất bại: SQLSTATE [HY000] [2002] Không có tập tin hoặc thư mục
Điều này là do tôi đã đặt tên máy chủ thành localhost, thông qua việc thay đổi địa chỉ IP này thành kết nối bị từ chối và tôi không biết có gì sai.
Bất kỳ trợ giúp nào về vấn đề này sẽ được đánh giá cao, Cảm ơn.
Có vẻ như dịch vụ MySQL của bạn không nghe trên 127.0.0.1 TCP. Nếu nó thực sự chạy ở tất cả, nó có thể là nó là trên một ổ cắm địa phương nhưng không phải TCP. Liệu 'mysql: localhost; dbname = AppDatabase' có tạo sự khác biệt không? –
... hoặc là "không có tệp hoặc thư mục như vậy" xảy ra với 'localhost'? Nếu trường hợp đó xảy ra, hoặc đường dẫn ổ cắm không chính xác trong php.ini, hoặc MySQL không chạy chút nào. –