Nếu bạn đã lướt web một thời gian, ít nhất bạn đã thấy lỗi này một vài lần. Lỗi thiết lập kết nối cơ sở dữ liệu ( Error Establishing a Database Connection) là một trong những lỗi thường hay xảy ra, có thể do nhiều nguyên nhân. Là người mới bắt đầu sử dụng WordPress, điều này có thể khiến bạn cực kỳ bực bội đặc biệt khi nó tự xảy ra mặc dù bạn không hề sửa đổi gì trang web WordPress của bạn. Chúng tôi gặp vấn đề này ngày hôm qua trên trang web của chúng tôi. Phải mất hơn 20 phút để phát hiện và khắc phục sự cố. Trong khi thực hiện nghiên cứu để tìm ra nguyên nhân có thể, chúng tôi nhận ra rằng không có bài viết hay nào đề cập đến mọi thứ. Trong bài viết này, chúng tôi sẽ chỉ cho bạn cách khắc phục lỗi khi thiết lập kết nối cơ sở dữ liệu trong WordPress bằng cách tổng hợp danh sách các giải pháp tất cả ở một nơi.

Tại sao bạn nhận được lỗi này?

Nói tóm lại, bạn đang gặp phải lỗi này vì WordPress không thể thiết lập kết nối cơ sở dữ liệu. Bây giờ lý do tại sao WordPress không thể thiết lập kết nối cơ sở dữ liệu có thể khác nhau. Nó có thể là thông tin đăng nhập cơ sở dữ liệu của bạn là sai hoặc đã được thay đổi. Nó có thể là máy chủ cơ sở dữ liệu của bạn không phản hồi. Nó có thể là cơ sở dữ liệu của bạn đã bị hỏng. Theo kinh nghiệm của chúng tôi, phần lớn lỗi này xảy ra do một số loại lỗi máy chủ tuy nhiên cũng có thể có các yếu tố khác. Hãy xem cách khắc phục sự cố này.

Lỗi kết nối cơ sở dữ liệu chỉ xảy ra trong khoảng một thời gian ngắn

Thông thường lỗi này xảy ra khi bạn đang sử dụng các hosting có chất lượng kém trong khi lưu lượng truy cập lại quá nhiều kiến server không xử lý được và xảy ra lỗi. Và lỗi này sẽ tự mất trong một vài phút khi server ổn định trở lại. Nếu bạn thường xuyên gặp lỗi này trên website của mình, hãy di chuyển website sang một nhà cung cấp dịch vụ hosting khác trước khi mất khách hàng của bạn.

Nếu lỗi xảy ra khoảng nửa ngày, hãy thực hiện các hướng dẫn khắc phục bên dưới.

Lỗi có xảy ra trong trang /wp-admin không?

Điều đầu tiên bạn nên làm là đảm bảo rằng bạn đang gặp cùng một lỗi trên cả Front-end của trang web và Back-end của trang web (wp-admin). Nếu thông báo lỗi giống nhau trên cả hai trang là “Lỗi khi thiết lập kết nối cơ sở dữ liệu” – “Error establishing a database connection”, thì hãy bỏ qua bước này và tiếp tục bước tiếp theo. Nếu gặp lỗi cả trong trang wp-admin và nó thông báo “Một hoặc nhiều bảng cơ sở dữ liệu không có sẵn. Cơ sở dữ liệu có thể cần phải được sửa chữa” – “Error establishing a database connection” , thì bạn cần sửa chữa cơ sở dữ liệu của mình.

Bạn có thể làm điều này bằng cách thêm dòng sau vào tệp wp-config.php của bạn. Thêm nó ngay trước dòng ‘That’s all, stop editing! Happy blogging’  trong wp-config.php.

define('WP_ALLOW_REPAIR', true);

Khi bạn đã thêm đoạn mã trên, bạn có thể bắt đầu sửa chữa cơ sở dữ liệu bằng cách truy cập trang này: http://www.yoursite.com/wp-admin/maint/repair.php

Cách khắc phục lỗi thiết lập kết nối cơ sở dữ liệu trong WordPress 1

Hãy lưu ý rằng chức năng sữa chữa (repair) cơ sở dữ liệu đã được bật bằng đoạn mã trên, khách truy cập bình thường có thể truy cập vào trang này và phá hỏng trang web của bạn. Vì vậy sau khi sửa chữa xong cơ sở dữ liệu, hãy xóa đoạn mã trên ở tệp wp-config.php

Kiểm tra tệp WP-Config

WP-Config.php có lẽ là tệp quan trọng nhất trong toàn bộ cài đặt WordPress của bạn. Đây là nơi bạn chỉ định các chi tiết để WordPress kết nối cơ sở dữ liệu của bạn. Nếu bạn thay đổi mật khẩu gốc hoặc mật khẩu người dùng cơ sở dữ liệu, thì bạn cũng cần phải thay đổi tệp này. Điều đầu tiên bạn phải luôn kiểm tra là liệu mọi thứ trong tệp wp-config.php của bạn có giống nhau không.

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

Nếu mọi thứ trong tệp này là chính xác (đảm bảo bạn kiểm tra lỗi chính tả), thì có thể lỗi nằm ở máy chủ

Kiểm tra máy chủ web của bạn (Máy chủ MySQL)

Thường thì bạn sẽ nhận thấy Lỗi này khi thiết lập kết nối cơ sở dữ liệu khi trang web của bạn bị quá tải lưu lượng truy cập. Về cơ bản, máy chủ lưu trữ của bạn chỉ không thể xử lý (đặc biệt khi bạn đang sử dụng gói shared hosting). Trang web của bạn sẽ trở nên rất chậm và đối với một số người dùng thậm chí còn gặp rất nhiều lỗi. Vì vậy, điều tốt nhất bạn nên liên hệ với nhà cung cấp dịch vụ hosting của bạn và hỏi họ xem máy chủ MySQL của bạn có phản hồi không.

Đối với những người dùng muốn kiểm tra xem máy chủ MySQL có tự chạy hay không, bạn có thể thực hiện một số cách. Kiểm tra các trang web khác trên cùng một máy chủ để xem chúng có gặp sự cố không. Nếu họ cũng nhận được cùng một lỗi, thì chắc chắn có lỗi với máy chủ MySQL của bạn. Nếu bạn không có bất kỳ trang web nào khác trên cùng một tài khoản lưu trữ này, chỉ cần truy cập cPanel của bạn và thử truy cập phpMyAdmin và kết nối cơ sở dữ liệu. Nếu bạn có thể kết nối, thì cần xác minh xem người dùng cơ sở dữ liệu của bạn có đủ quyền hay không. Tạo một tệp mới gọi là testconnection.php và dán đoạn mã sau vào đó:

<?php
$link = mysqli_connect('localhost', 'username', 'password');
if (!$link) {
die('Could not connect: ' . mysqli_error());
}
echo 'Connected successfully';
mysqli_close($link);
?>

Đảm bảo thay thế tên người dùng và mật khẩu. Nếu tập lệnh được kết nối thành công, điều đó có nghĩa là người dùng của bạn có đủ quyền và có điều gì đó không đúng. Quay trở lại tệp wp-config của bạn để đảm bảo rằng mọi thứ đều chính xác (quét lại lỗi chính tả).

Nếu bạn không thể kết nối với cơ sở dữ liệu bằng cách truy cập phpMyAdmin, thì bạn biết đó là một cái gì đó với máy chủ của bạn. Điều đó không nhất thiết có nghĩa là máy chủ MySQL của bạn không hoạt động. Điều đó có nghĩa là người dùng của bạn không có đủ quyền. Hãy liên hệ với nhà cung cấp dịch vụ của bạn.

Trả lời

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *