Hướng dẫn sửa lỗi Error Establishing a Database Connection

Quảng cáo
Ads_ngang
Website dinhthuanit.com có bài Hướng dẫn sửa lỗi Error Establishing a Database Connection Tổng hợp các giải pháp giúp bạn tìm hiểu cũng như hướng dẫn khắc phục lỗi Error Establishing a Database Connection trong WordPress.

Chắc hẳn đôi lần bạn đã từng gặp lỗi Error Establishing a Database Connection  khi truy cập website. Đây là lỗi phổ biến trong thiết lập kết nối cơ sở dữ liệu, xảy ra bởi nhiều nguyên nhân. Đối với những người mới bắt đầu sử dụng WordPress thì lỗi này làm bạn rất khó chịu. Trong bài viết này, mình sẽ tổng hợp các giải pháp giúp bạn tìm hiểu cũng như hướng dẫn khắc phục lỗi Error Establishing a Database Connection trong WordPress.

Lưu ý: Trước khi thực hiện bất kỳ một thay đổi cơ sở dữ liệu nào, hãy đáp ứng rằng bạn đã backup dữ liệu trước đó.

database-connection-error1

Lỗi Error Establishing a Database Connection ?

Error Establishing a Database Connection: Bạn thu được lỗi này vì WordPress không thể thiết lập một kết nối cơ sở dữ liệu. Có nhiều lý do khác nhau làm WordPress không thể thiết lập kết nối cơ sở dữ liệu. Dưới đây là một trong các lý do sảy ra:

  • Có thể do tin tức đăng nhập cơ sở dữ liệu của bạn bị sai hoặc đã được thay đổi.
  • Có thể do máy server cơ sở dữ liệu của bạn không phản hồi.
  • Có thể do cơ sở dữ liệu của bạn bị hỏng.

Theo kinh nghiệm nhiều năm thiết kế website của mình thì lỗi này xảy ra phần lớn do lỗi ở server, tuy nhiên lỗi cũng xảy ra do các nhân tố khác.

Có phải lỗi diễn ra ở /wp-admin/ ?

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

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

 define('WP_ALLOW_REPAIR', true); 

Tiếp theo, bạn cũng đều có thể xem các thiết lập tại  http://www.yoursite.com/wp-admin/maint/repair.php

Đây là chuẩn đoán trước mắt khi gặp lỗi “Error establishing a database connection”. Nếu việc sửa chữa này không khắc phục được lỗi hoặc bạn gặp sự cố khi chạy sửa chữa thì thực hành các cách khác dưới đây.

Lưu ý:  Khi thi hành 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 .

Xem thêm: Hướng dẫn cách khắc phục Wordpress bị hack

Kiểm tra file w p-config.php

WP-Config.php là file cấu hình rất quan trọng trong toàn bộ trình cài đặt WordPress của bạn. Đây là nơi bạn định vị các thông tin để kết nối với cơ sở dữ liệu. Đầu tiên, bạn luôn phải kiểm trong file wp-config.php , nó phải giống như sau:

 define('DB_NAME', 'database-name'); define('DB_USER', 'database-username'); define('DB_PASSWORD', 'database-password'); define('DB_HOST', 'localhost');  

Giá trị DB_HOST có thể không là localhost mà nó có thể khác tùy thuộc vào host của bạn. Đối với host phổ biến ở Việt Nam hay hosting nước ngoài như HostGator, BlueHost, Site5 thì nó là localhost .

Chú ý: Bạn có thể sửa lỗi bằng phương pháp thay thế localhost bằng IP. Đây là cách thông dụng để 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ông trùng lặp đối với mỗi nhà cung cấp dịch vụ Web Hosting.

 define('DB_HOST', '127.0.0.1:8889'); 

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

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

Về cơ bản, Error Establishing a Database Connection lỗi này được thông báo khi trang web của bạn thu được quá độ lượng truy cập. Thông thường, Host server của bạn khi đó không thể giải quyết được việc tải trang web, trang web của bạn sẽ cực kỳ chậm và sẽ cho dù một số người dùng sẽ thấy lỗi. Lúc này, điều tốt nhất bạn phải làm là liên hệ với nhà sản xuất hosting và nhờ họ kiểm tra MySQL server của bạn.

Nếu bạn muốn kiểm tra MySQL server có đang hoạt động tốt không, bạn cũng 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 kia 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 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. Tạo một file mới với tên testconnection.php và dán đoạn code dưới đây để xác minh xem người dùng cơ sở dữ liệu của bạn có được quyền kết nối không.

     

Bạn thay thế user và mật khẩu của bạn, nếu kết nối thành công có nghĩa là người sử dụng của bạn được quyền kết nối và có vấn đề gì đó bị sai. Quay trở lại file wp-config  để đáp ứng rằng mọi thông tin đều đúng (nhớ kiểm tra lại cả lỗi chính tả).

Nếu vào phpMyAdmin  mà vẫn chưa thể kết nối với cơ sở dữ liệu thì có lẽ rằng đã 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.

phpMyAdmin

Trường hợp MySQL server của bạn đang hoạt động, mọi thứ các trang web khác trên máy server đang làm việc tốt ngoại trừ trang web đang báo lỗi thì bạn hãy thử vào phpMyAdmin  xem còn thấy báo lỗi như dưới:

 #1045 – Access denied for user ‘foo’@’%’ (using password: YES) 

Bạn hãy liên hệ với nhà cung cấp máy server – hosting nhờ sự hỗ trợ của họ. Họ sẽ thiết lập lại kết nối của người dùng, quyền truy cập được khôi phục và trang web của bạn sẽ hoạt động trở lại bình thường.

Tóm lại, nếu bạn nhận được lỗi bị từ chối truy cập khi kết nối với phpMyAdmin  hoặc kiểm tra kết quả khi test file  testconnection.php , bạn liên hệ với nhà sản xuất hosting và nhờ họ hỗ trợ sửa lỗi.

Các giải pháp khắc phục khác

Trường hợp 1

Khi bạn thu được thông báo lỗi, cơ sở dữ liệu càng phải được sửa chữa nhưng ngay khi khi bạn đã sửa lỗi vẫn còn, thì bạn chạy truy vấn SQL bằng phương pháp truy vấn vào phpMyAdmin  như sau:

 UPDATE wp_options SET option_value='YOUR_SITE_URL' WHERE option_name='siteurl' 

Trường hợp 2

Sử dụng  testconnection.php  để kết nối cơ sở dữ liệu và thay đổi user trong file  wp-config.php thành root . Sau đó, bạn thiết lập lại cơ sở dữ liệu user về như cũ và web truy cập bình thường(nhớ kiểm tra lại cả lỗi chính tả)

Trường hợp 3

Bạn xóa bỏ các nội dung của active_plugins và chỉnh sửa nội dung của recently_edited trong bảng wp_options . Bằng cách này có thể khắc phục được lỗi trên.

Giải thích:

  • Trang web của bạn là https://www.hoangweb.com/ có host server ở GoDaddy.
  • Bạn đăng nhập vào GoDaddy và đến My Account > > Web Hosting , bấm vào nút LAUNCH cho tên miền website và sẽ thấy một cửa sổ Hosting Control Center mới.
  • Bạn bấm chuột vào Databases > > MySQL , chọn “Manage via phpMyAdmin” cho tên cơ sở dữ liệu của WordPress thì sẽ thấy mở một trình duyệt mới cho bạn nhập tin tức đăng nhập.
  • Trong bảng wp_options , bạn xóa sổ các nội dung của active_plugins và chỉnh sửa nội dung của recently_edited .

Chú ý: Có thể những giải pháp trên không thể giúp giải quyết được lỗi của bạn, do đó trước lúc làm bất kể điều gì bạn nên có đầy đủ bản backups để đề phòng sai sót. Có nhiều nhiều trường hợp chỉ cần tải lên bản backups mới của WordPress là đã sửa được lỗi.

Kết luận

Error Establishing a Database Connection thực thụ là một lỗi gây phiền toái trong WordPress. Nếu bạn đã từng gặp phải lỗi này thì hãy chia sẻ nguyên do và cách xử lý vấn đề của bạn cho những người khác cùng biết để tạo nên thể nhanh chóng tìm kiếm được giải pháp xử lý. Chúc các bạn thành công !

Hãy cho mình biết suy nghĩ của bạn trong phần bình luận bên dưới bài viết này. Hãy theo dấu kênh chia sẻ kiến thức WordPress của TopVn trên Twitter và Facebook

Bài viết Hướng dẫn sửa lỗi Error Establishing a Database Connection được tổng hợp và biên tập bởi: dinhthuanit.com. Mọi ý kiến đóng góp và phản hồi vui lòng gửi Liên Hệ cho dinhthuanit.com để điều chỉnh. dinhthuanit.com xin cảm ơn.

Bài Viết Liên Quan


Bài Viết Khác


Quảng cáo
Ads_ngang