Lỗi Error establishing a database connection là lỗi do WordPress không thể xác lập kết nối cơ sở dữ liệu (CSDL). Một số lý do WordPress không thể thiết lập kết nối cơ sở dữ liệu đó là: Show
2. Cách sửa lỗi Error establishing a database connectionCách sửa lỗi Error establishing a database connectionBước 1: Xác định lỗi có xảy ra ở WP-Admin không?Nếu bạn chắc chắn lỗi Error establishing a database connection xuất hiện ở cả Front-end và Back-end của website thì bạn có thể thực hiện theo các bước sau đây: Xuất hiện 2 lỗi khác nhau trên wp-admin (One or more database tables are unavailable hoặc The database may need to be repaired) thì cần chỉnh lỗi cơ sở dữ liệu:
Bước 2: Kiểm tra File WP-Config.phpKiểm tra File WP-Config.phpCách 1: Để cài đặt WordPress thành công thì file wp-config.php đóng vai trò đặc biệt quan trọng. File này chứa thông tin để kết nối với cơ sở dữ liệu (tên, mật khẩu để truy cập cơ sở dữ liệu). Kiểm tra lại các thông tin trong file wp-content: define('DB_NAME', 'database-name'); define('DB_USER', 'database-username'); define('DB_PASSWORD', 'database-password'); define('DB_HOST', 'localhost'); Cách 2:
Bước 3: Kiểm tra Hosting của website muốn truy cậpKiểm tra Hosting của website để sửa lỗi Error establishing a database connectionKhi website nhận được một lượng truy cập lớn cùng một lúc cũng có thể là nguyên nhân gây nên lỗi Error establishing a database connection. Khi đó, Hosting không thể xử lý kịp và xảy ra lỗi kết nối website. Kiểm tra xem có đúng web đang có quá nhiều người truy cập hay không bằng cách: Truy cập website khác đang dùng chung dịch vụ Hosting với website đang bị lỗi tải trang. Nếu website đó cũng gặp lỗi tương tự chứng tỏ Hosting có vấn đề => liên hệ với nhà cung cấp để được hỗ trợ. Trường hợp không có website chạy chung Hosting => đăng nhập cPanel => truy cập PHPMyAdmin để kết nối Database => tạo file mới và đặt tên “testconnection.php” => xác minh User sử dụng cơ sở dữ liệu có được phép kết nối không bằng cách dán đoạn Code sau đây: [php]</pre> <pre><?php $link = mysql_connect('localhost', 'root', 'password'); if (!$link) { die('Could not connect: ' . mysql_error()); } echo 'Connected successfully'; mysql_close($link); ?></pre> <pre>[/php] 3. Hai trường hợp lỗi Error establishing a database connection và cách khắc phụcTrường hợp 1: Nếu Service MySQL đang hoạt động nếu bạn đang dùng VPSChắc chắn Service MySQL đang hoạt động nếu bạn đang dùng VPS. Kiểm tra bằng một trong 2 lệnh sau: Service mysql status Hoặc Service mysql status Nếu kết quả trả về là:
Nếu MySQL không hoạt động => kiểm tra Error log trong thư mục /var/log Trường hợp 2: Hosting dùng CloudlinuxHosting dùng Cloudlinux sẽ có thêm tính năng PHP Selector. Chức năng này cho phép bật/tắt PHP Extension => Kiểm tra xem PHP Extension đã được bật hay chưa? Việc đầu tiên trước khi bắt tay vào khắc phục lỗi là tìm hiểu nguyên nhân gây ra tai nạn này. WordPress sử dụng 2 công nghệ cốt lỗi của PHP và MySql để xây dựng. Kết hợp hai thứ lại với nhau, WordPress sử dụng các lệnh PHP để kết nối với cơ sở dữ liệu MySQL, lấy thông tin cần thiết và sau đó hiển thị mọi thứ trên màn hình. Đây là nơi xảy ra lỗi. Lỗi xảy ra khi, vì bất kỳ lý do gì mà WordPress không thể truy cập thông tin trong cơ sở dữ liệu thông qua các lệnh PHP. Khi điều đó xảy ra, về cơ bản, WordPress không biết phải làm gì tiếp theo, vì vậy bạn chỉ nhận được thông báo “Error establishing a database connection” trên màn hình. Một số nguyên nhân sau có thể gây ra lỗi nghiêm trọng này, bạn cần xem xét trường hợp lỗi của mình theo từng mục trong checklist sau:
Cách khắc phục lỗi thiết lập kết nối cơ sở dữ liệuVì tôi coi trọng thời gian của bạn, trước tiên tôi sẽ đề xuất một con đường có khả năng khắc phục sự cố nhanh nhất cho bạn . Sau đó, tôi sẽ đào sâu hơn và chỉ cho bạn cách tự mình thực hiện tất cả các bản sửa lỗi. Bước 1: Liên lạc với nhà cung cấp máy chủ web của bạn Trong hầu hết các trường hợp, nếu bạn nói với họ loại lỗi nào bạn gặp phải, họ sẽ cho bạn biết nguyên nhân chính xác là gì hoặc thậm chí họ sẽ sửa lỗi cho bạn. Quan trọng nhất, họ sẽ cho bạn biết liệu cơ sở dữ liệu của bạn có ổn không và liệu có bất kỳ hoạt động đáng ngờ nào trên máy chủ hay không. Nếu lỗi không phải do lỗi của họ (máy chủ đang hoạt động và không có lưu lượng truy cập tăng đột biến) và họ không muốn giúp bạn, hãy chuyển sang bước 2: Bước 2: Kiểm tra xem Plugin hoặc tệp tin theme của bạn có bị hỏng hay không? Các tệp WordPress của bạn có thể bị hỏng do một vài sự kiện không may. Chẳng hạn, có thể bạn đã cập nhật một plugin hoặc một theme và toàn bộ sự việc đã khiến website bạn sụp? Có lẽ bạn đã nối trang web với một dịch vụ bên ngoài? Có lẽ bạn đã chỉnh sửa một số tập tin? Nhớ lại các thao tác đã từng làm và phát hiện các điểm nghi ngờ từ đó xác định lỗi. Đây là những gì bạn nên làm:
Để kết nối, bạn cần username và password vào tài khoản FTP của mình. Nếu bạn không biết chúng là gì / ở đâu, cách dễ nhất để có được chúng là tìm kiếm qua các email ban đầu bạn nhận được từ máy chủ web khi bạn đăng ký lần đầu. Ngoài ra, bạn có thể yêu cầu đại diện hỗ trợ trò chuyện trực tiếp cung cấp cho bạn những chi tiết đó. Có chúng, kết nối với máy chủ và điều hướng đến thư mục gốc chưa bộ mã WordPress. Nó thường được gọi là public_html và hoặc www www hoặc bạn có thể đã ở trong đó một khi bạn thiết lập kết nối FTP. Nguyên tắc cơ bản là nếu bạn có thể thấy các thư mục con như nội dung wp-content và và wp-admin thì thì bạn đang ở trong root WordPress. Ví dụ:
Nếu không còn lỗi, bây giờ bạn biết rằng đó là do một số plugin gây ra. Quay trở lại FTP, đổi tên thư mục trở lại thành plugin Plugins. Đi vào đó và thay đổi tên thư mục của từng plugin, từng cái một. Cách dễ nhất để làm điều này là thêm một dấu gạch dưới ở cuối: Bước 3: Kiểm tra xem cơ sở dữ liệu của bạn có bị hỏng hay không? Cơ sở dữ liệu WordPress là được tổ chức rất phức tạp và có rất nhiều dữ liệu nhỏ phụ thuộc vào nhau. Đôi khi, một cái gì đó không đúng chỗ cũng sẽ gây ra lỗi như trên.
Nếu bạn thấy cùng một lỗi chính: “Error establishing a database connection” , hãy bỏ qua bước này.
Bước 4: Kiểm tra thông tin xác thực kết nối cơ sở dữ liệu của bạn Như tôi đã đề cập, WordPress sử dụng username và password cụ thể để kết nối với cơ sở dữ liệu. Thông thường, những thông tin truy cập đó không tự thay đổi. Tuy nhiên, bạn có thể gặp một số tình huống kỳ lạ sau khi thực hiện bất kỳ thay đổi nào đối với tệp trang web của mình, môi trường lưu trữ hoặc bất kỳ điều gì khác. Nói cách khác, mặc dù điều đó không nên xảy ra, thông tin đăng nhập đôi khi thay đổi. Và với thông tin truy cập xấu – Lỗi thiết lập kết nối cơ sở dữ liệu, xảy ra! Việc khắc phục được thực hiện trong tập tin wp-config.php. define(‘DB_NAME’, ‘some_db’); define(‘DB_USER’, ‘some_username’); define(‘DB_PASSWORD’, ‘some_pass’); define(‘DB_HOST’, ‘localhost’); Các dòng code phía trên nắm giữ tất cả các chi tiết mà WordPress cần để kết nối với cơ sở dữ liệu. Nếu bất kỳ điều nào trong số này là sai, sẽ không có kết nối nào được thiết lập. Lưu ý rằng có một cách thủ công để khắc phục sự cố này, nhưng nó thực sự đòi hỏi nhiều bước và có thể thực sự rất khó hiểu. Nói cách khác, bất cứ điều gì tôi nói ở đây vẫn sẽ chỉ có thể áp dụng cho một phạm vi nhỏ người dùng tình cờ sử dụng cùng một máy chủ như tôi, vì vậy tôi có một giải pháp phổ quát hơn cho bạn: Lấy bốn dòng đó từ tệp tin wp-config.php, chỉ cần sao chép chúng vào bảng tạm, liên hệ lại với bộ phận hỗ trợ máy chủ web của bạn, dán các dòng đó vào cửa sổ trò chuyện và hỏi xem chi tiết có chính xác để bạn có thể kết nối không vào cơ sở dữ liệu của bạn.Người đại diện sẽ kiểm tra mọi thứ, và quay lại với bạn với một số phản hồi. Thông thường, họ sẽ cung cấp cho bạn các chi tiết chính xác trong trường hợp bất cứ điều gì đã được thay đổi.Tất cả những gì bạn cần làm là lấy thông tin đăng nhập mới và đặt chúng vào tập tin wp-config.php của bạn trong đó có các thông tin cũ. define(‘DB_NAME’, ‘some_db’); /* this is the name of your WordPress database */ define(‘DB_USER’, ‘some_username’); define(‘DB_PASSWORD’, ‘some_pass’); define(‘DB_HOST’, ‘localhost’); /* this is the web address of your database server */ Cuối cùng, tải lại tập tin qua FTP. Ở giai đoạn này, bạn có thể quay lại trang web của mình và xem lỗi đã được khắc phục chưa. Nếu không, tôi có một bước cuối cùng cho bạn: Bước 5: Khôi phục các tệp WordPress mặc định Như tôi đã đề cập trước đó, các tệp WordPress cốt lõi có thể bị hỏng vì một số lý do. Có thể đã có một nỗ lực hack trên trang web của bạn, có thể bạn đã sửa đổi một số tệp một cách tình cờ, có thể một plugin lừa đảo đã sửa đổi. Dù có thể là gì, bạn vẫn có thể khôi phục các tệp gốc, mặc định của WordPress. Cách dễ nhất để làm điều đó là chỉ cần tải xuống một phiên bản WordPress sạch từ WordPress.org và sao chép nó qua phiên bản bạn có ngay bây giờ. Đây là cách sửa chữa cuối cùng. Nếu điều này không có ích, bạn sẽ không có lựa chọn nào khác ngoài việc quay lại nhờ hỗ trợ của dịch vụ hosting, nói với họ mọi thứ bạn đã làm và yêu cầu trợ giúp. Ở giai đoạn này, về cơ bản, bạn đã làm mọi thứ mà bạn có thể làm để tự khắc phục sự cố và đến nhà cung cấp dịch vụ phải giải quyết vấn đề. Làm thế nào để tránh lỗi này trong tương lai?Mặc dù không có cách nào 100% không bảo vệ để bảo vệ trang web của bạn khỏi mọi lỗi thiết lập kết nối cơ sở dữ liệu, có hai yếu tố chính mà bạn nên có để bảo hiểm cho trang web:
|