Cách sửa lỗi error establishing a database connection trên WordPress

0
1,078 views

Chắc hẳn bạn đã từng gặp lỗi Error Establishing a Database Connection khi đang lướt web. Đây thực ra là lỗi thiết lập kết nối cơ sở dữ liệu xảy ra bởi rất nhiều nguyên nhân và khiến người dùng vô cùng khó chịu. Vậy làm sao để khắc phục? Bài viết sau đây sẽ đưa ra những cách sửa lỗi error establishing a database connection nhanh chóng nhất.

Cách sửa lỗi error establishing a database connection NHANH NHẤT 1Cách sửa lỗi error establishing a database connection NHANH NHẤT   

Tại sao bạn gặp phải lỗi Error Establishing a Database Connection?

Nguyên nhân cơ bản dẫn đến lỗi error establishing a database connection là do WordPress không thể thiết lập kết nối cơ sở dữ liệu bởi rất nhiều lí do. Có thể đó là do thông tin đăng nhập cơ sở dữ liệu của bạn bị sai hoặc đã được thay đổi, có thể do máy chủ cơ sở dữ liệu của bạn không phản hồi, cũng có thể do cơ sở dữ liệu của bạn bị hỏng,..

>>> Có thể bạn chưa biết: Cách khắc phục lỗi kết nối cơ sở dữ liệu trong WordPress

Cách sửa lỗi Error establishing a database connection trong WordPress

Kiểm tra lỗi có phải xảy ra ở /wp-admin/ không?

Đầu tiên, hãy đảm bảo rằng bạn nhận được cùng một lỗi trên cả front-end và back-end của trang web (wp-admin). Nếu trên cả hai trang bạn đều nhận được lỗi “Error establishing a database connection” thì tiến hành các bước tiếp theo. Nếu bạn nhận được các lỗi khác nhau trên wp-admin, ví dụ như lỗi One or more database tables are unavailable. The database may need to be repaired thì bạn cần phải sửa chữa cơ sở dữ liệu của mình.

Bạn sửa lỗi bằng cách thêm dòng sau vào file wp-config.php của bạn:

Sau đó, bạn có thể xem các thiết lập bằng cách truy cập trang http://www.yoursite.com/wp-admin/maint/repair.php

Nhớ rằng người dùng không cần phải đăng nhập để truy cập chức năng này khi định nghĩa được thiết lập vì mục đích chính của nó là sửa chữa cơ sở dữ liệu bị lỗi, người dùng không thường xuyên đăng nhập khi cơ sở dữ liệu bị hỏng. Do đó, khi thực hiện sửa chữa và tối ưu hóa cơ sở dữ liệu của bạn, hãy bỏ đi phần này trong file wp-config.php.

Nếu việc sửa chữa này không giúp bạn khắc phục được lỗi hoặc bạn gặp sự cố khi chạy sửa chữa thì hãy tham khảo tiếp bài viết của chúng tôi.

Lưu ý: Sau khi chạy Database Repair xong bạn cần xóa dòng config ở trên khỏi wp-config.php

Kiểm ra file WP-Config

Trong toàn bộ quá trình cài đặt WordPress, wp-config.php là file quan trọng nhất. Đây là nơi bạn xác định các chi tiết cho WordPress để kết nối với cơ sở dữ liệu của bạn. Nếu bạn thay đổi mật khẩu gốc của bạn hoặc mật khẩu người sử dụng cơ sở dữ liệu thì bạn cần phải thay đổi file này. Đầu tiên, bạn luôn cần phải kiểm tra mọi thứ trong file wp-config.php của bạn, chúng phải giống như sau:

Giá trị DB_Host của bạn có thể không là localhost mà tùy thuộc vào host, nó sẽ khác nhau.

Một số người cho biết họ sửa được lỗi bằng cách thay thế localhost bằng IP. Đây là cách phổ biến để sửa lỗi này khi chạy WordPress trên môi trường local server. Ví dụ trên MAMP, giá trị DB_Host khi thay đổi thành IP:

IP là khác nhau đối với mỗi dịch vụ web hosting online.

Nếu mọi thứ trong file wp-config.php đều đúng (chắc chắn kiểm tra cả lỗi chính tả) thì tiếp theo chúng ta nghĩ tới trường hợp có vấn đề gì đó trên server.

Kiểm tra web hosting của bạn ( MySQL Server)

Thông thường, bạn thấy thông báo lỗi Error Establishing a Database Connection khi website của bạn nhận được quá nhiều lượng truy cập. Về cơ bản, web hosting của bạn khi đó không thể xử lý được việc tải trang (đặc biệt khi bạn đang chia sẻ hosting), trang sẽ rất chậm và thậm chí một số người dùng sẽ thấy lỗi. Lúc này, điều tốt nhất bạn nên làm là liên hệ với nhà cung cấp hosting của bạn và nhờ họ kiểm tra MySQL server của bạn.

Nếu bạn muốn kiểm tra MySQL server đang hoạt động, bạn có thể kiểm tra các trang web khác trên cùng một server để xem chúng có gặp vấn đề gì không. Nếu các trang web đó cũng nhận được cùng một lỗi thì chắc chắn là có vấn đề ở MySQL server của bạn. Nếu bạn không có bất kỳ trang web nào khác trên cùng tài khoản hosting với web đang gặp lỗi thì bạn đơn giản chỉ cần vào cPanel, thử truy cập vào phpMyAdmin và kết nối cơ sở dữ liệu. Nếu bạn có thể kết nối được thì cần phải xác minh xem người sử dụng cơ sở dữ liệu của bạn có được quyền kết nối không. Tạo một file mới tên testconnection.php và dán đoạn code sau vào:

Bạn hãy thay thế tên người dùng và mật khẩu. Nếu kết nối thành công có nghĩa là người dùng của bạn được quyền kết nối và có gì đó bị sai. Quay trở lại file wp-config của bạn để đảm bảo rằng mọi thứ đều đúng (kiểm tra lại cả lỗi chính tả).

Nếu bạn không thể kết nối với cơ sở dữ liệu bằng cách vào phpMyAdmin thì chắc hẳn đã có gì đó xảy ra với server của bạn. Điều này không có nghĩa là MySQL server của bạn bị tắt mà có thể do người dùng của bạn không được quyền kết nối.

Các cách sửa lỗi Error Establishing a Database Connection bạn có thể sử dụng

Trường hợp 1

Nếu bạn đang sử dụng VPS bạn cần chắc chắn rằng service mysql đang hoạt động. Bạn có thể kiểm tra xem nó có hoạt động bằng lệnh sau

Nếu kết quả trả về màu xanh có nghĩa Mysql đang hoạt động. Còn màu đỏ hoặc không màu là Mysql đang không hoạt động

Screenshot_83
Mysql đang hoạt động
Screenshot_84
Mysql không hoạt động

Trường hợp Mysql không hoạt động bạn cần kiểm tra Error log để biết chính xác nguyên nhân và tìm các khắc phục. Thông thường error log sẽ nằm trong thư mục /var/log

Trường hợp 2

Kiểm tra extension  Mysql, Mysqli của PHP. Đối với hosting sử dụng Cloudlinux sẽ được trang bị thêm chức năng PHP Selector cho phép bật/tắt PHP Extension. Lúc này các bạn cần kiểm tra xem Extension Mysql đã được bật hay chưa.

Screenshot_78

  • Đối với PHP 5 cần đảm bảo các extension sau được bật

Screenshot_81

Screenshot_82

  • Đối với PHP 7.x cần đảm bảo các extension sau được bật

Screenshot_79

Screenshot_80

Kết luận

Bài viết trên đây của chúng tôi đã chia sẻ nguyên nhân cũng như hướng dẫn bạn cách sửa lỗi error establishing a database connection hiệu quả và đơn giản nhất. Hi vọng bài viết của chúng tôi có ích. Chúc các bạn thành công!

Comment của bạn

avatar
  Subscribe  
Notify of