Error establishing a database connection - Lỗi kết nối tới cơ sở dữ liệu - Hướng dẫn khắc phục nhanh nhất

1821
07-08-2020
Error establishing a database connection - Lỗi kết nối tới cơ sở dữ liệu - Hướng dẫn khắc phục nhanh nhất

Chắc hẳn trong quá trình xây dựng vận hành website, bạn đã ít nhất một lần gặp phải lỗi Error establishing a database connection và ảnh hưởng đến quá trình xem website của bạn. Lỗi thiết lập kết nối cơ sở dữ liệu thường bắt nguồn từ nhiều nguyên nhân khác nhau. Vậy làm sao để khắc phục? Cùng Bizfly Cloud theo dõi bài viết để tìm hiểu những cách khắc phục hiệu quả.

Nguyên nhân gây ra lỗi error establishing a database connection?

Có rất nhiều lý do có thể dẫn đến lỗi khiến WordPress không thể thiết lập kết nối cơ sở dữ liệu qua đó khiến bạn gặp phải lỗi Kết nối tới Cơ sở Dữ liệu khi duyệt web. Nguyên nhân đa dạng có thể do thông tin đăng nhập cơ sở dữ liệu bị sai sót, máy chủ cơ sở dữ liệu không phản hồi hoặc cơ sở dữ liệu của bạn đang gặp trục trặc. 

Hướng dẫn các bước sửa lỗi 

Trước khi bắt tay vào xử lý lỗi, bạn chuẩn bị sẵn các công cụ cũng như quyền truy cập sau:

- Một WordPress website đã 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

Bước 1: Xác định lỗi 

Vì có nhiều nguyên nhân có thể gây ra lỗi Kết nối tới Cơ sở Dữ liệu, nên việc đầu tiên bạn cần làm là kiểm tra hệ thống để xác định nguyên nhân lỗi, qua đó giúp tăng thời gian khắc phục lỗi. 

Đầu tiên, hãy kiểm tra xem bạn có đang thấy 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 "Kết nối tới Cơ sở Dữ liệu" 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: 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 http://www.yoursite.com/wp-admin/maint/repair.php. Nếu thao tác tương tự nhưng bạn vẫn chưa thể khắc phục được lỗi, bạn hãy đọc tiếp phần bên dưới. 

Bước 2: Kiểm tra file WP-Config

Kiểm tra file WP-Config

wp-config.php là file quan trọng nhất trong toàn bộ quá trình cài đặt WordPress. Wp-config.php cho phép 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 mật khẩu gốc của bạn hay của người dùng chung cơ sở dữ liệu này thay đổi, 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, đây là 4 thông tin quan trọng để bạn truy cập vào database. 

define('DB_NAME', 'database-name');

define('DB_USER', 'database-username');

define('DB_PASSWORD', 'database-password');

define('DB_HOST', 'localhost');

Giá trị DB_Host là khác nhau do nó có thể không phải localhost và còn tùy thuộc vào host. Cách phổ biến được nhiều người áp dụng để sửa lỗi chính là thay thế localhost bằng IP. Giá trị IP sẽ khác nhau, tùy thuộc vào dịch vụ hosting bạn lựa chọn. 

define('DB_HOST', '127.0.0.1');

Error establishing a database connection - Lỗi kết nối tới cơ sở dữ liệu - Hướng dẫn khắc phục nhanh nhất - Ảnh 1.

Xác định nguyên nhân gây ra lỗi.

Kiểm tra web hosting

Nếu file wp-config.php của bạn đều đúng, hãy chuyển qua phần kiểm tra web hosting. Khi web hosting gặp trục trặc, bạn sẽ thường xuyên thấy thông báo lỗi Kết nối tới Cơ sở Dữ liệu khi lượng truy cập tăng cao. Lúc đó, web hosting không thể xử lý được việc tải trang khiến việc load trang chậm và cũng như gây ra lỗi. Để khắc phục lỗi, bạn nên liên hệ trực tiếp với đơn vị cung cấp hosting 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 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 user trong file config 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:

<?php

$servername = "localhost";

$username = "Điền username MYSQL vào đây";

$password = "Điền mật khẩu MYSQL vào đây";

$conn = mysqli_connect($servername, $username, $password);

if (!$conn) {

die("Connection failed: " . mysqli_connect_error());

}

echo "Connected successfully";

?>

Bạn lần lượt thay mật khẩu và username vào khoảng trống tương ứng ở trên. Nếu kết nối thành công có nghĩa user được quyền kết nối và vấn đề sẽ rơi vào chỗ khác. Bạn nên thử kiểm tra lại file wp-config của bạn để đảm bảo rằng mọi thứ đều đúng và đặc biệt là kiểm tra lại cả lỗi chính tả.

Trong trường hợp bạn không thể kết nối với cơ sở dữ liệu bằng cách vào phpMyAdmin thì rất có thể server của bạn đang gặp vấ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.

Kiểm tra giá trị database name

Chúng ta bắt đầu với database name value. Nếu mục list các Database không liệt kê database trong file wp-config.php giống với giá trị DB_NAME, database đang bị thiếu. Việc này xảy ra khi một website chuyển tới nhà cung cấp hosting mới và database chưa được chuyển hoàn toàn. Chúng tôi khuyên bạn liên hệ của nhà cung cấp hosting mới và nhờ họ hoàn tất chuyển/khôi phục database WordPress. Việc này sẽ bao gồm việc tạo database mới và có thể khôi phục bằng database backup của WordPress.

Kiểm tra thông tin database user

Chúng ta cần kiểm tra thông tin các User. Bạn có thể kiểm tra xem các thông tin của users có giống với file wp-config.php chưa. Nếu thông tin khớp, bạn có thể kiểm tra sang mục tiếp theo. 

Thêm user bị thiếu

Tuy nhiên, trong quá trình chuyển tới nhà cung cấp khác hoặc khi cài WordPress thủ công, bạn có thể quên thêm user vào database. 

Để sửa lỗi này, chỉ cần thêm user với password trong file config. 

Nếu cả 2 bước trên vẫn không sửa được, có 2  thông tin còn lại cần phải kiểm tra. Là giá trị host và password. 

Kiểm tra giá trị host

Hãy bắt đầu với giá trị host, giá trị host thường đi kèm với thông tin tài khoản. Chúng tôi khuyên kiểm tra lại thông tin này với nhà cung cấp hosting của bạn nếu không tìm thấy trong email được gửi tới cho bạn từ trước về thông tin tài khoản. Nếu bạn đã đổi MySQL database host, hãy tải lại trang và xem lỗi Kết nối tới Cơ sở Dữ liệu đã được sửa chữa.

Kiểm tra thông tin mật khẩu đăng nhập

Nếu user của bạn đã tồn tại , hãy thử cập nhật lại password của user bằng giá trị DB_PASSWORD trong wp-config.php. d

Đó là tất cả các bước kiểm tra cho file wp-config.php.  Hãy tải lại trang để xem lỗi được sửa chữa. Nếu lỗi vẫn chưa được sửa hãy làm bước cuối cùng.

Kiểm tra giá trị table prefix value

Cuối cùng, nhưng không kém phần quan, trọng, hãy chắc là table prefix cũng đúng. Mở database WordPress bằng phpMyAdmin và xem giá trị nó có khớp với table prefix trong file wp-config.php không.

Error establishing a database connection - Lỗi kết nối tới cơ sở dữ liệu - Hướng dẫn khắc phục nhanh nhất - Ảnh 3.

Sửa lỗi Kết nối tới Cơ sở Dữ liệu nhanh chóng.

Bước 3: Vô hiệu Wordpress plugin

Nếu bạn vẫn chưa thể sửa được lỗi sau khi hoàn thành xong 2 bước kể trên, bạn nên 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":

- Đăng nhập vào tài khoản bằng file manager 

- Truy cập vào WordPress core files, và tìm thư mục wp-content. Truy cập và tìm thư mục có tên plugins.

- Đổ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.

- Kiểm tra website của bạn để xem error establishing a database connection đã biến mất chưa.

- Nếu website đã hoạt động trở lại, vấn đề nằm ở trong 1 trong các plugin WordPress. Giờ, để tìm chính xác plugin gây lỗi, bạn chỉ cần làm như sau:

Đổi tên plugins folder thành plugins và truy cập vào nó.

Đổ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.

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

Nếu đã thực hiện thao tác vô hiệu hóa các plugins trên WordPress nhưng chưa sửa được lỗi, hãy đọc tiếp ở bước 4. 

Bước 4: Thay đổi WordPress Core Files

Để thay đổi core WordPress files hãy làm theo các bước sau:

Để thay đổi WordPress core files thủ công, tải phiên bản mới nhất của WordPress và giải nén thành thư mục (1)

Truy cập FTP, xóa hoặc đổi tên thư mục wp-includeswp-admin khỏi server.

Tải 2 thư mục này từ (1) lên tài khoản hosting.

Vậy là bạn đã đổi thành công core files của WordPress. Cách này sẽ sửa lỗi 'Kết nối tới Cơ sở Dữ liệu' bạn đang gặp phải.

Bước 5: Liên hệ công ty hosting

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 Kết nối tới Cơ sở Dữ liệu,  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.

Trên đây là 5 bước hướng dẫn sửa error establishing a database connection chi tiết nhất để bạn có thể dễ dàng làm theo và khắc phục lỗi. Nếu trong quá trình thực hiện, bạn gặp phải vấn đề chưa thể giải quyết, đừng ngần ngại để lại comment hoặc liên hệ Bizfly Cloud để được giải đáp cụ thể.

Nguồn: Bizfly Cloud chia sẻ

>> Có thể bạn quan tâm: 5 tuyệt chiêu khắc phục lỗi err_too_many_redirects nhanh chóng

SHARE