Xử lý tình huống lỗi “error establishing a database connection” trong wordpress

Dạo gần đây các website sử dụng nền tảng wordpress rất hay bị lỗi “error establishing a database connection”, điều này gây rất bực mình và hiển thị đó không hề tốt và ấn tượng tốt cho các độc giả.

Trước tình huống này có thể có 3 cách xử lý như sau:

1. Kiểm tra lại cấu hình hostname, database name, user, passwd

Điều này là có thể xảy ra nếu bạn mới di chuyển sang một hosting khác.

File wp-config.php ngụ tại: public_html/wp-config.php

2. Chỉnh sửa lại tài khoản db mới

Đôi khi việc truy xuất quyền của tài khoản user bình thường có vấn đề.

Bạn hãy tạo một user truy xuất db khác và gán cho db hiện tại. Tất nhiên cũng thay đổi thông tin này trong wp-config.php

3. Bật chế độ DEBUG của WordPress

Việc sử dụng này rất hay bởi vì wp sẽ hiển thị các lỗi của wp chi tiết giúp xác định lỗi dễ dàng hơn.

4. Tạo test connection file.

File này giúp báo lỗi gì, cơ bản chỉ việc tạo một file mới test.php chẳng hạn với nội dung như sau:

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

Và mỗi khi lỗi bạn có thể chạy file này để biết chi tiết lỗi.

5. Sửa đổi thông điệp “error establishing a database connection”

Điều này bạn phải tạo 1 file với db-error.php nằm trong thư mục wp-content.php/ với nội dung sau:

<?php // custom WordPress database error page

header(‘HTTP/1.1 503 Service Temporarily Unavailable’);
header(‘Status: 503 Service Temporarily Unavailable’);
header(‘Retry-After: 600’); // 1 hour = 3600 seconds

// If you wish to email yourself upon an error
// mail(“[email protected]”, “Database Error”, “There is a problem with the database!”, “From: Db Error Watching”);

?>

<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv=”Content-Type” content=”text/html; charset=utf-8″>
<title>Vneconomics.com | Bảo Trì</title>
<meta http-equiv=”refresh” content=”5″ >
<style>
body {color: green; font-size: 20px; }
</style>
</head>
<body>
<h3>Vneconomics.com đang trong thời gian bảo trì. Xin vui lòng refresh trang trong ít phút… hoặc email: [email protected]</h3><p>
<br><br>
Trân trọng!<br>
Trần Quốc Việt (Kevin)<br>
[email protected]<br>

<i><h5>Vneconomics.com là nơi tổng hợp chia sẻ các tài liệu và cảm nhận học cao học kinh tế tại UEH</h5></i>
</body>
</html>

Ngoài ra theo comment trên các diễn đàn có thể do các plugin gây ra, đặc biệt các plugin về cache. Bạn hãy ghi nhật ký việc cài plugin và việc bị lỗi này, có thể remove các plugin cache sẽ cải thiện vấn đề.

Chúc thành công,

Kevin

[email protected]

 

2 thoughts on “Xử lý tình huống lỗi “error establishing a database connection” trong wordpress”

  1. chào bạn,
    bạn chia sẻ lỗi ở bước 4 để xem lỗi thế nào.
    Nếu trường hợp xấu quá cho bản thân web server bị lỗi thì bó tay thôi, đợt trước mình cũng phải chuyển hosting 1 lần vì bị lỗi module trên apache. Có 1 tip là bạn thử disable SuperCache xem nhé.

Comments are closed.