Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

Lỗi 2002 Kết nối bị từ chối trên PHP kết nối với MySQL chạy trên MAMP

Vấn đề ở đây là bạn không chuyển cổng làm tham số thứ năm cho kết nối mysqli. Nếu bạn đang sử dụng localhost là máy chủ lưu trữ của bạn thì tham số cổng bị bỏ qua. Đây là lý do tại sao trong đoạn mã MAMP, chúng không chuyển $db_port như một tham số, nó chỉ đơn giản là không cần thiết. Lý do điều này xảy ra, đó là localhost không sử dụng TCP / IP, thay vào đó nó sử dụng các ổ cắm unix.

Sau khi bạn làm theo đề xuất của người khác, bạn có thể đã thay đổi mã đến điểm mà bạn có

$db_host = '127.0.0.1';

Điều này không sao cả, nhưng vì bạn không còn sử dụng ổ cắm unix nữa (localhost ), tham số cổng là cần thiết để thiết lập kết nối.Mysqli sử dụng 3306 cổng làm mặc định nếu bạn không chỉ định bất kỳ tham số thứ năm nào khác. Vì vậy, đó là cổng bạn đang cố gắng kết nối bằng cách sử dụng mã đó. Đây là nơi xảy ra lỗi Error: Connection refused đến từ.

Để giải quyết vấn đề, bạn chỉ cần chuyển cổng dưới dạng tham số thứ năm như sau:

$mysqli = new mysqli($db_host,$db_user,$db_password,$db_db,$db_port);

Bản thân đoạn mã đã rất tuyệt, nó không hoàn toàn phù hợp với nhu cầu của bạn và bạn phải chỉnh sửa một chút cho nó. Nếu bạn muốn sử dụng đoạn mã, bạn phải hiểu chúng làm gì và trong trường hợp này là cách mysqli hoạt động. Hãy nhớ ghi nhớ điều này cho tương lai vì nó chắc chắn sẽ tránh cho bạn những tình huống khó chịu và những lỗi như thế này.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. MySQL:Khoảng thời gian trung bình giữa các bản ghi

  2. MySQL Giống như nhiều giá trị

  3. Django quản trị viên MySQL chậm INNER JOIN

  4. Mệnh đề Mysql LIKE và các từ riêng biệt trong một trường

  5. LỖI 1452 (23000):Không thể thêm hoặc cập nhật hàng con:ràng buộc khóa ngoại không thành công