Sửa lỗi Error Establishing a Database Connection

Một ngày đẹp trời, bạn vào website của bạn để viết bài mới nhưng đập vào mắt bạn là dòng chữ Error Establishing a Database Connection, bạn đang lúng túng không biết phải giải quyết như thế nào? Vậy thì bạn đã đọc đúng bài viết rồi đó!

Đây là một lỗi tương đối phổ biến đối với các website sử dụng mã nguồn WordPress, và nếu bạn mới bắt đầu với WordPress thì đây là lỗi tương đối khó để giải quyết vì có khá nhiều nguyên nhân dẫn đến sự cố này.

Bài viết này mình sẽ hướng dẫn bạn cách sửa lỗi Error Establishing a Database Connection toàn tập, nhằm giúp bạn giải quyết sự cố này một cách nhanh chóng, dễ dàng nhất.

Không dài dòng nữa, chúng ta bắt đầu nào.

Có thể bạn sẽ thích: Sửa lỗi trắng trang WordPress cụ thể 2020

Nguyên nhân gây ra lỗi Error Establishing a Database Connection

Một trong các nguyên nhân chính dẫn đến lỗi này đó chính là cấu hình sai thông tin đăng nhập vào máy chủ CSDL (Cơ sở dữ liệu) trong cài đặt của WordPress, CSDL bị lỗi, máy chủ CSDL bị hỏng hoặc cấu hình sai,… Trong đó 2 nguyên nhân đầu là đa số.

WordPress yêu cầu bạn cung cấp chính xác thông tin sau để có thể cài đặt và vận hành:

  • Tên máy chủ CSDL
  • Tên CSDL
  • Tên đăng nhập CSDL
  • Mật khẩu CSDL

Các thông tin trên được lưu trong file wp-config.php. Thiếu 1 trong số các thông tin trên, bạn sẽ không thể truy cập hay làm bất kỳ thao tác quản trị nào trên WordPress, Và kết quả dẫn đến là thông báo Error Establishing a Database Connection khi truy cập website.

Ngoài việc thiếu hoặc sai thông tin dùng để đăng nhập vào cơ sở dữ liệu, đôi khi lỗi này cũng có thể xảy ra do kết nối giữa máy chủ web và máy chủ CSDL làm cho WordPress không thể kết nối với CSDL, hoặc dữ liệu trong CSDL bị mất mát,…

Mình sẽ điểm qua một số cách sửa lỗi Error Establishing a Database Connection như sau

Cách sửa lỗi Error Establishing a Database Connection

1. Kiểm tra thông tin đăng nhập CSDL

Sai thông tin đăng nhập CSDL thường xảy ra khi bạn chuyển website sang một máy chủ mới hoàn toàn nhưng chưa chỉnh sửa thông tin đăng nhập CSDL mới cho website. Đây là một trong số các nguyên nhân chủ yếu gây ra lỗi này.

Thông tin đăng nhập CSDL được lưu trong file wp-config.php

File wp-config.php là file cực kỳ quan trọng đối với WordPress vì nó chứa toàn bộ các thông tin thiết yếu để CMS này có thể hoạt động trơn tru, do đó bạn cần bảo quản file này thật kỹ, tránh để bị mất mát khi di chuyển website từ máy chủ cũ sang máy chủ mới!

Do đó, để có thể kiểm tra và cập nhật lại thông tin đăng nhập CSDL của website, bạn cần chỉnh sửa file wp-config.php. Để có thể chỉnh sửa file này, bạn cần thao tác qua cổng FTP thông qua phần mềm FTP client, hoặc dùng trình quản lý file (file manager) ngay trên trang quản trị máy chủ của website bạn sở hữu (có thể là cPanel – truy cập thông qua tenwebsitecuaban.com:2083, DirectAdmin – truy cập thông qua địa chỉ tenwebsitecuaban.com:2222).

Sau khi bạn mở được file wp-config.php rồi, bạn rê chuột xuống sẽ thấy thông tin tương tự như bên dưới

// ** MySQL settings - You can get this info from your web host ** //
/** The name of the database for WordPress */
define( 'DB_NAME', 'ten_csdl' );
/** MySQL database username */
define( 'DB_USER', 'tennguoidungcsdl' );
/** MySQL database password */
define( 'DB_PASSWORD', 'matkhaucsdl' );
/** MySQL hostname */
define( 'DB_HOST', 'macdinhlalocalhost' );

Sau đó tuỳ chỉnh thông tin trên, và hãy chắc rằng các thông tin bạn điền vào là hoàn toàn chính xác. Nếu bạn quên mật khẩu CSDL thì có thể thực hiện đổi mật khẩu như sau (được thực hiện trên máy chủ HostingTocDo – cPanel).

Bạn chọn mục MySQL Database để tiếp tục

htd doimatkhaucsdl 01

Bạn sẽ thấy giao diện trang như hình dưới, bạn rê chuột xuống để tiếp tục.

htd doimatkhaucsdl 02

Ở đây, bạn chọn tên đăng nhập đúng với cấu hình trong file wp-config.php. Sau đó chọn Change Password

htd doimatkhaucsdl 03
Bạn thiết lập mật khẩu mới và nhấn Change Password, sau đó dùng mật khẩu mới đó điền vào file cấu hình là xong.
htd doimatkhaucsdl 04

2. Kiểm tra lại thông tin máy chủ CSDL

Nếu bạn chắc chắn rằng tên CSDL,tên đăng nhập và mật khẩu CSDL của mình là chính xác, bạn nên kiểm tra lại thông tin máy chủ CSDL. Hầu hết các công ty Hosting đều dùng localhost làm máy chủ mặc định của CSDL.

Tuy nhiên, nếu công ty Hosting mà bạn đang lưu trữ website dùng tên máy chủ CSDL khác với localhost, bạn cần phải ngay lập tức liên hệ với bộ phận kỹ thuật của công ty đó để nhận được hỗ trợ.

Sau khi biết được thông tin đó, bạn điền vào file cấu hình là hoàn tất.

3. Sửa CSDL

Nếu bạn gặp lỗi trên trang wp-admin, đôi khi là lỗi “One or more database tables are unavailable. The database may need to be repaired” thì bạn nên sửa lỗi CSDL của website, lỗi này thường do sự mất mát, hỏng hóc dữ liệu khi di chuyển website qua lại giữa các máy chủ.

Để có thể sửa lỗi này, bạn thêm dòng sau vào file wp-config.php

define('WP_ALLOW_REPAIR', true);

Sau đó, bạn truy cập theo địa chỉ http://www.tenwebsitecuaban.com/wp-admin/maint/repair.php và tiến hành sửa lỗi theo hướng dẫn trong đó.

repairwpdb

Sau khi sửa xong, bạn cần xoá đoạn mã trên khỏi file wp-config.php

4. Kiểm tra trạng thái máy chủ CSDL

Nếu đến đây mà bạn vẫn chưa thể khắc phục được lỗi trên, mình nghĩ nguyên nhân có thể do máy chủ CSDL của bạn gặp vấn đề và bị sập. Mà nguyên nhân chủ yếu là do máy chủ của bạn có quá nhiều lượt truy cập (tình trạng thường gặp ở shared hosting).

Website của bạn sẽ bị chậm và người dùng đôi khi sẽ gặp phải lỗi Error Establishing a Database Connection. Vấn đề này bạn nên liên hệ với bộ phận kỹ thuật của công ty hosting bạn đang lưu trữ website để báo lỗi và tìm hướng giải quyết.

Nếu bạn lưu trữ nhiều website trên máy chủ, bạn nên kiểm tra xem các website đó có cùng bị lỗi tương tự hay không. Nếu bạn chỉ lưu trữ 1 website thì hãy vào trang quản trị máy chủ, sau đó vào phần quản lý file (file manager) hoặc dùng giao thức FTP, tạo 1 file test.php, rồi điền đoạn sau vào file đó:

<?php
$link = mysqli_connect('macdinhlalocalhost', 'tendangnhapcsdl', 'matkhaucsdl');
if (!$link) {
die('Lỗi kết nối: ' . mysqli_error());
}
echo 'Kết nối thành công!';
mysqli_close($link);
?>

Bạn truy cập file đó trên trình duyệt, nếu có lỗi, đoạn mã trên sẽ liệt kê lỗi để bạn có thể khắc phục.

5. Cập nhật WordPress Site URL

Cách này đôi khi cũng sẽ giúp bạn sửa lỗi Error Establishing a Database Connection đấy, đơn giản là bạn đăng nhập vào trang phpmyadmin, sau đó chuyển qua tab SQL rồi điền đoạn mã sau vào ô (nhớ đổi tên bảng wp_options sang prefix bạn đã thiết lập khi cài đặt WordPress):

UPDATE wp_options SET option_value='http://tenwebsitecuaban.com/' WHERE option_name='siteurl'

sqlphpmyadmin

6. Khởi động lại máy chủ

Đây đôi khi cũng là cách để giúp bạn sửa lỗi Error Establishing a Database Connection, việc này sẽ giúp bạn sửa chữa một số trục trặc gây ra lỗi trên. Lưu ý là chỉ ai dùng VPS (máy chủ riêng ảo), máy chủ riêng (dedicated server) hay máy chủ cục bộ (local server) mới có thể thực hiện được mà thôi.

Tóm lại

Error Establishing a Database Connection

Qua bài viết này, mình đã hướng dẫn các bạn toàn bộ các bước để các bạn có thể sửa lỗi Error Establishing a Database Connection rồi, nếu bạn có gì thắc mắc hoặc cần trợ giúp thì đừng ngại ngần mà hãy bình luận phía dưới để mọi người cùng giúp đỡ nhé!

Cám ơn bạn đã đọc bài viết!

0 0 votes
Article Rating
Subscribe
Notify of
guest

0 Comments
Inline Feedbacks
View all comments
Hiện website này đang ở trạng thái lưu trữ, có thể bạn sẽ thấy một số nội dung không được định dạng đúng cách, sẽ không có bài viết nào mới ở trên website này nữa.Tại sao tôi nhận được thông báo này?
+ +