Error Establishing a Database Connection WordPress

Lỗi này xuất phát từ đâu?

Lỗi này xuất hiện 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:



  1. Sai thông tin đăng nhập vào MySQL database của WordPress. Nếu thông tin đăng nhập bị thay đổi do WordPress được chuyển đi, hoặc chuyển qua nhà cung cấp hosting khác, website của bạn sẽ không truy cập được tới database với thông tin cũ. Bạn cũng cần lưu ý là Databse WordPress sử dụng thông tin đăng nhập khác với tài khoản đã được cấp để truy cập hosting account control panel. Theo kinh nghiệm của chúng tôi, lỗi này thường xảy ra nhất.
  2. Một hoặc nhiều plugin khiến database bị hỏng. Có nhiều lý do khiến WordPress database bị hỏng, hầu hết là do bạn đã upload plugin chứa lỗi.
  3. Server chứa database này bị sập. Database server có thể không hoạt động vì vấn đề kỹ thuật, hoặc bạn có thể gặp trường hợp traffic tăng đột biết khiến bất thình lình server không thể xử lý được. Vì vậy, website sẽ trả về lỗi error establishing a database connection WordPress

Trong bài hướng dẫn này, bạn sẽ biết cách tìm và sửa lỗi establishing a database connection trong WordPress.

Bạn cần chuẩn bị gì?

Trước khi bắt đầu bạn cần chuẩn bị:



  • Một WordPress website dã từng hoạt động
  • Truy cập control panel của tài khoản Hosting nơi wordpress được cài.
  • Quyền write vào file cài đặt WordPress website
  • Kiến thức cơ bản về cấu trúc WordPress

Sửa lỗi Error Establishing a Database Connection trong WordPress

Vào một ngày đẹp trời bổng nhiên khi truy cập vào trang web của bạn, bạn nhận một thông báo duy nhất trên trình duyệt  Error Establishing a Database Connection. Bạn đừng lo lắng vì đây là lỗi 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.

Error establishing a database connection

Đối với những người mới bắt đầu với WordPress, lỗi này làm bạn rất khó chịu, nhất là khi nó xảy ra trên chính trang WordPress của bạn mặc dù bạn không có bất cứ thay đổi gì trên trang. Trong bài viết này, PhonuiIT hướng dẫn các  cách giải pháp giúp các bạn có thể tìm hiểu cũng như khắc phục được lỗi Error Establishing a Database Connection trong WordPress.

Việc đầu tiên cần phải làm: Trước khi thực hiện việc chỉnh sữa hãy đảm bảo rằng bạn đã có đầy đủ bản backup.

Liệu các lỗi xãy ra có phải xuất phát ở /wp-admin/ ?

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.

 

Azdigi

  • Front-end: http://tenmiencuaban/
  • Back-end: http://tenmiencuaban/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” (Một hoặc nhiều bảng cơ sở dữ liệu không có. Cơ sở dữ liệu cần được sửa chữa) thì bạn cần phải sửa chữa cơ sở dữ liệu của bạn.

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:

define(‘WP_ALLOW_REPAIR’, true);

Sau đó, bạn có thể xem các thiết lập bằng cách truy cập trang https://www.tenmiencuaban/wp-admin/maint/repair.php
repair database
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ì tiếp tục đọc bài viết để tìm một giải pháp khác.

Kiểm tra file WP-Config

WP-Config.php là file quan trọng nhất trong toàn bộ trình cài đặt WordPress của bạn. Đầu tiên, bạn luôn cần phải kiểm tra mọi thứ trong file <em>wp-config.php</em> của bạn xem có chính xác chưa:

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

Như bạn có thể thấy, có 4 thông tin quan trọng mà WordPress cần dùng để truy cập database:

  1. Tên database (DB_NAME)
  2. Username đăng nhập (DB_USER)
  3. Mật khẩu đăng nhập (DB_PASSWORD)
  4. Datbase hostname (DB_HOST)

Nếu có bất kỳ giá trị nào trong số chúng không đúng, WordPress sẽ không thể kết nối tới database của bạn. Và bạn sẽ gặp lỗi Error establishing a database connection

Nếu mọi thứ trong file wp-config.php đều đúng thì tiếp theo chúng ta nghĩ tới trường hợp có vấn đề gì đó trên server.

Kiểm tra hosting web 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 trang web của bạn nhận được quá nhiều lượng truy cập. Vấn đề này phát sinh từ hosting server (Thường là full RAM hặc Full băng thông) của bạn khi đó không thể xử lý được việc tải trang web, trang web của bạn 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, bạn nên kiểm tra server của bạn, nếu bạn dùng hosting thuê thì hãy  liên hệ với nhà cung cấp hosting của bạn và nhờ họ kiểm tra MySQL server, RAM, CPU.

Kiểm tra MYSQL trên server

Cách đơn giản nhất để  kiểm tra MySQL server đang hoạt động của bạn, hãy vào 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. Hoặc thử truy cập vào phpMyAdmin và  đăng nhập kết nối vào cơ sở dữ liệu. Nếu kết nối thành công thì cần kiểm tra 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. Để thực hiện việc này hãy tạo file  checkdb.php và dán đoạn code sau vào:

<?php 
$link = mysql_connect('localhost', 'root', 'password'); 
if (!$link) {die('Could not connect: ' . mysql_error()); }
echo 'Connected successfully'; mysql_close($link);
 ?>

Sau đó hãy truy cập vào đường dẫn: http://tenmiencuaban/checkdb.php

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

Đăng nhập vào server và khởi động lại dịch vụ MYSQL

Tạm dừng MySQL

service mysql stop

Chạy MySQL

service mysql start

Khởi động lại MySQL

service mysql restart

Kiểm tra lỗi tất cả database trên VPS

mysqlcheck -c -u root -p --all-databases

Error Establishing a Database Connection thực sự là một lỗi gây nhiều khó khăn trong WordPress.

Vô hiệu WordPress plugins 

Nếu cả 2 bước trên không thành công, đã đến lúc kiểm tra WordPress plugins của bạn. Nếu vô hiệu toàn bộ plugins cùng lúc, website hoạt động lại thì khả năng lớn là ít nhất 1 trong các plugin là nguồn gốc của lỗi này. Sau đó bạn có thể tiếp tục kiểm tra xem chính xác plugin nào gây lỗi. Các bước sau sẽ giúp bạn vô hiệu toàn bộ plugin WordPress để sửa “error establishing a database connection”:

  1. Đăng nhập vào tài khoản bằng file manager hoặc FTP client
  2. Truy cập vào WordPress core files, và tìm thư mục wp-content. Truy cập. Tìm thư mục có tên plugins.
  3. Đổi tên thư mục đó thành tên khác bất kỳ như là plugins-disabled. Nó sẽ ngăn không cho WordPress coi đây là thư mục plugin nữa.
  4. Kiểm tra website của bạn để xem error establishing a database connection có biến mất chưa.

Nếu rồi, vấn đề nằm ở trong 1 trong các plugin WordPres. Để tìm chính xác plugin gây lỗi, bạn chỉ cần làm như sau:

  1. Đổi tên plugins folder thành plugins và truy cập vào nó.
  2. Đổi tên từng thư mục tuần tự, để WordPress không load plugin đó. Bạn có thể đặt tên nó thành ví dụ như akismet-disabled, và tiếp tục.
  3. Kiểm tra website của bạn mỗi lần bạn vô hiệu một plugin để xem nó có sửa được lỗi hay không.

Liên hệ công ty hosting của bạn

Nếu bạn đã làm các bước trên mà vẫn gặp lỗi, bạn vẫn còn thấy Error establishing a database connection,  có nghĩa lỗi do nhà cung cấp hosting. Hãy liên hệ nhà cung cấp dịch vụ web hosting của bạn và cho họ các thông tin cần thiết để tái hiện lỗi, họ có thể xác định nguyên nhân gây lỗi.

Nếu bạn đã từng gặp phải lỗi này thì hãy chia sẻ về những gì mà bạn đã trải qua cũng như cách bạn đã làm để khắc phục lỗi cho những người khác cùng biết để có thể nhanh chóng tìm được giải pháp xử lý.

5/5 - (22 bình chọn)



Nhận thông báo qua email
Nhân thông báo cho
guest
0 Bình luận
Inline Feedbacks
View all comments
0
Bạn thích bài viết này, viết bình luận nhé.x