❤️ AZDIGI chính thức cập nhật hệ thống blog mới hoàn chỉnh. Tuy nhiên có thể một số bài viết bị sai lệch hình ảnh, hãy ấn nút Báo cáo bài viết ở cuối bài để AZDIGI cập nhật trong thời gian nhanh nhất. Chân thành cám ơn.
Bài viết hôm này mình sẽ hướng dẫn bạn thực hiện xử lý lỗi Error establishing a database connection khi truy cập vào website WordPress của mình. Lỗi này hiển thị ra do website WordPress của bạn không thể kết nối đến máy chủ cơ sở dữ liệu (database), vì vậy để xử lý lỗi này ta sẽ có một số trường hợp:
- Website WordPress không kết nối được với database do thông tin kết nối sai.
- Tiền tố cơ sở dữ liệu không khớp với giá trị
$table_prefixkhai báo trong wp-config.phbp - Máy chủ quá tải khiến dịch vụ MySQL không hoạt động được.
- Nếu sử dụng VPS/Máy chủ riêng, thì có thể dung lượng đĩa cứng không đủ để MySQL ghi dữ liệu.
Kiểm tra thông tin kết nối trong wp-config.php
Ở mã nguồn WordPress, wp-config.php là file quan trọng nhất. Đây là nơi 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 bạn thay đổi mật khẩu database MySQL bạn cần phải cập nhật lại thông tin database. Phần thông tin database của một trang có dạng như sau.
define('DB_NAME', 'database-name');
define('DB_USER', 'database-username');
define('DB_PASSWORD', 'database-password');
define('DB_HOST', 'localhost');
Giá trị DB_Host của bạn có thể không là localhost mà tùy thuộc vào host, nó sẽ khác nhau, thường share hosting có giá trị là localhost . Còn nếu bạn sử dụng mysql remote từ một trang khác bạn có thể cần để ý cập nhật cho đúng.
Nếu mọi thứ trong file wp-config.php đều đúng (chắc chắn kiểm tra cả lỗi chính tả) thì chắc chắn có vấn đề gì đó sai trên thiết lập hosting/server của bạn.
Kiểm tra phân quyền User và Database
Bạn cần phải chắc chắc rằng user cấu hình trong wp-config.php phải có đầy đủ quyền thao tác với database. Và ở trong cPanel bạn thực hiện cập nhật quyền như sau
- Bạn kiểm tra xem việc phân quyền database cho user bên trong trang quản trị mysql.
- Bạn kiểm tra xem user có full quyền với database hay không tại phần Add User To Database
- Bạn bấm tick vào full quyền và nhấn thay đổi.
Kiểm tra giá trị table prefix value
Bạn nên chắc chắn rằng giá trị prefix value của mình phải được thiết lập đúng giống như trên database như chẳng hạn trong wp-config.php có giá trị là.
$table_prefix = 'wp_';
Trên database của tôi cũng phải đúng dạng wp_ Nhưng ở ảnh dưới mình đặt là wp0l_
- Lưu ý: Bạn có thể đặt tuỳ ý nhé
Kiểm tra đảm bảo extension mysql trên php đã được bật.
Kiểm tra extension Mysql, Mysqli của PHP. Đối với hosting sử dụng Cloudlinux sẽ được trang bị thêm chức năng PHP Selector cho phép bật/tắt PHP Extension. Lúc này các bạn cần kiểm tra xem Extension Mysql đã được bật hay chưa.
- Đối với PHP 5 cần đảm bảo các extension sau được bật


- Đối với PHP 7.x cần đảm bảo các extension sau được bật


Thử Repair WordPress Database
Có thể đôi khi do database của bạn lỗi, Bạn có thể thử sửa lỗi database bằng cách thêm dòng sau vào file wp-config.php
define('WP_ALLOW_REPAIR', true);
Sau đó bạn truy cập đường link dẫn: https://tên_web_site_của_bạn.com/wp-admin/maint/repair.php
Nếu như tất cả các cách trên không thành công, bạn có thể liên hệ với quản trị hosting kiểm tra thêm cho bạn.
Có thể bạn cần xem thêm
- Hướng dẫn tạo database trên DirectAdmin
- Hướng dẫn cài Wordpress với LEMP trên Ubuntu 22.04
- Hướng dẫn xử lý lỗi website chuyển hướng quá nhiều lần (Too Many Redirects) trong WordPress
- Hướng dẫn Clone mã nguồn WordPress thủ công
- Sửa lỗi Table Database thiếu khóa chính (Primary Key) trên WordPress
- Deploy WordPress + MySQL + phpMyAdmin bằng Docker Compose
Về tác giả
Thạch Phạm
Đồng sáng lập và Giám đốc điều hành của AZDIGI. Có hơn 15 năm kinh nghiệm trong phổ biến kiến thức liên quan đến WordPress tại thachpham.com, phát triển website và phát triển hệ thống.




