Database Wordpress

Làm thế nào để sửa lỗi error establishing a database connection

Làm thế nào để sửa lỗi Error establishing a database connection

Giới thiệu

WordPress được viết bằng ngôn ngữ PHP và MySQL. Khi một trang web được truy cập trên website của bạn, mã PHP code sẽ truy xuất database MySQL và lấy thông tin cần thiết để chạy trang. Một truy vấn PHP cần để viết tiêu đề bài viết, một cái khác cần lấy thông tin tác giả, một cái khác để trích ngày xuất bản, vâng vâng. Mã lỗi Error establishing a database connection. có nghĩa là vì lý do nào đó mà PHP code không thể kết nối tới MySQL database để lấy thông tin cần để dựng trang.

Có nhiều lý do website có thể gặp lỗi kết nối database, nhưng thông thường sẽ rơi vào ba phần:

  1. Database bị hỏng. Có nhiều lý do khiến WordPress database bị hỏng, hầu hết là do upload plugin xấu.
  2. Xai thông tin đăng nhập. Databse WordPress sử dụng thông tin đăng nhập khác với tài khoản đã được cấp để truy cập hosting account control panel. Nếu thông tin đăng nhập bị thay đổi do WordPress được chuyển đi, hoặc chuyển qua nhà cung cấp hosting khác, website của bạn sẽ không truy cập được tới database với thông tin cũ. Theo kinh nghiệm của chúng tôi, lỗi này thường xảy ra nhất.
  3. Server chứa databse này bị sập. Database server có thể không hoạt động vì vấn đề kỹ thuật, hoặc bạn có thể gặp trường hợp traffic tăng đột biết khiến bất thình lình server không thể xử lý được.

Trong bài hướng dẫn này, bạn sẽ học cách tìm và sửa lỗi establishing a database connection trong WordPress.

Bạn cần chuẩn bị gì?

Trước khi bắt đầu bạn cần chuẩn bị:

  • Một WordPress website dã từng hoạt động
  • Truy cập control panel của tài khoản Hosting nơi wordpress được cài.
  • Quyền write vào file cài đặt WordPress website
  • Kiến thức cơ bản về cấu trúc WordPress

Bước 1 — Xác định lỗi Error establishing a database connection do đâu

Đầu tiên bạn nên làm là kiểm tra lỗi giống nhau ở cả front-end và back-end là yoursite.com, và yoursite.com/wp-admin (thay yoursite.com với trang WordPress của bạn). Nếu lỗi giống nhau là Error establishing a database connection, hãy tiếp tục vào Bước 2. Nhưng nếu website của bạn bị down, và bạn thấy một lỗi khác là: One or more database tables are unavailable. The database may need to be repaired, vậy bạn cần sửa database của bạn.

WordPress có cách tự động repair datbase, nhưng bạn có thể thử kích hoạt tính năng này trước. Để làm vậy, bạn cần truy cập vào file wp-config.php file, nơi chứa file cài WordPress.

Bạn sẽ thấy file wp-config.php trong thư mục gốc của trang WordPress file.

wp-config.php file nằm trong thư mục gốc của WordPress

Khi bạn đã mở file  wp-config.php, thêm dòng sau vào và lưu thay đổi:

define( 'WP_ALLOW_REPAIR', true );

Dòng sau sẽ kích hoạt nó cho bạn và tối ưu hoặc sửa chữa database bằng cách truy cập tới:

yourwebsite.com/wp-admin/maint/repair.php (chỉ cần thay thế yourwebsite.com thành địa chỉ URL thật sự).

Chọn bất kỳ lựa chọn nào để thực hiện database repair.

Bạn có thể thấy hình trên có 2 lựa chọn để sửa hoặc sửa chửa và tối ưu database của bạn. Hãy chọn 1 trong 2; hãy lưu ý là quá trình tối ưu sẽ mất nhiều thời gian hơn vì sau khi sửa chữa database sẽ được tối ưu.

Lưu ý

Hãy lưu ý là trang sửa chữa database này không an toàn; bất kỳ ai cũng có thể truy cập yourwebsite.com/wp-admin/maint/repair.php mà không phải đăng nhập. Khi bạn đã hoàn toàn sửa database của bạn, hãy chắc là bạn đã xóa dòng code mà bạn đã thêm define( 'WP_ALLOW_REPAIR', true ); trong wp-config.php: . Việc này sẽ tắt trang sửa lỗi và ngăn chặn bất kỳ ai có ý đồ xấu với database của bạn.

Hãy vẫn giữ wp-config mở bây giờ  cho tới khi bạn thấy lỗi đã được sửa và website hoạt động trở lại. Nếu bạn vẫn thấy  Error establishing a database connection, bạn cần sử dụng wp-config.php cho bước tiếp theo.

Bước 2 — Kiểm tra cài đặt kết nối database trong wp-config.php

Nếu bước trên không hoạt động và không sử dụng được, vậy bước tiếp bạn nên làm là mở lại cấu hình kết nối bạn đã đặt trong file wp-config.php.

Trong trường hợp bạn không biết vì sao thông tin đăng nhập tự dưng ngừng hoạt động, hãy lưu ý là những việc làm như chuyển công ty hosting hoặc thay đổi bất kỳ thứ gì trong database hoặc thông tin user có thể gây lỗi nếu file wp-config.php chưa được cập nhật với thông tin mới.

FIle wp-config.php có thể vẫn đang mở ở bước trước. Nếu không, đăng nhập vào File Manager của control panel hosting của bạn và mở file wp-config.php. Bạn sẽ thấy chỗ cấu hình kết nối tới database, có thể giống như sau:

// ** MySQL settings - You can get this info from your web host ** //
/** The name of the database for WordPress */
define('DB_NAME', 'somuvnet_wp670');
 
/** MySQL database username */
define('DB_USER', 'somuvnet_wp67');
 
/** MySQL database password */
define( 'DB_PASSWORD', 'password_here' );
 
/** MySQL hostname */
define( 'DB_HOST', 'localhost' );
  1. Tên database (DB_NAME)
  2. Username đăng nhập (DB_USER)
  3. Mật khẩu đăng nhập (DB_PASSWORD)
  4. Datbase hostname (DB_HOST)

Nếu không có bất kỳ giá trị nào không đúng, WordPress sẽ không thể kết nối tới database của bạn. Và bạn sẽ gặp lỗi Error establishing a database connection

Cách chắc chằn là các thông tin trên là đúng là bạn phải kiểm tra lại thông tin MySQL database thực sự. Để làm việc này bạn truy cập section MySQL Databases. Hình bên dưới  là icon MySQL Database trong cPanel, phần này cũng giống với các nền tảng control panel cho hosting khác.

cPanel MySQL Databases đặt trong phần Databases .

Khi đã mở MySQL Databases, tìm mục Current Databases.  Nó sẽ liệt kê tất cả databases và users đã được sử dụng cho website cua bạn. Thông tin mà chúng ta đang tìm kiếm là Database và Privileged Users. Mục đích là hãy chắc rằng giá trị trong 2 cột này khợp với DB_NAME và DB_USER trong file wp-config.php.

Khớp giá trị giữa file wp-config.php với thông tin thật sự trong màn hình Current Databases .

Mỗi khi thực hiện thay đổi, nhớ refresh trang để xem sửa lỗi được Error establishing a database connection chưa vì có thể bạn không cần làm hết tất cả các bước.

Kiểm tra giá trị database name

Start with database name.

Chúng ta bắt đầu với database name value. Nếu mục Current Databases không liệt kê database trong file wp-config.php giống với giá trị DB_NAME, database đang bị thiếu. Việc này xảy ra khi một website chuyển tới nhà cung cấp hosting mới và database chưa được chuyển hoàn toàn. Chúng tôi khuyên bạn liên hệ của nhà cung cấp hosting mới và nhờ họ hoàn tất chuyển /khôi phục database WordPress. Việc này sẽ giúp tạo database mới và có thể khôi phục bằng database backup của WordPress.

Kiểm tra thông tin database user

Bước 2 chúng ta cần kiểm tra cột Privileged Users. Trong ví dụ này, bạn có thể nhanh chóng nhận ra Privileged Users có thông tin không giống với file wp-config.php file – trong file wp-config, thông tin bị thiếu số 0. Khi chúng tôi cập nhật giá trị DB_USER từ somuvnet_wp67 thành somuvnet_wp670, chúng tôi đã sửa được lỗi sai username. Hãy thử tải lại trang để xem lỗi còn tồn tại hay không.

Thêm priviledged user bị thiếu

Tuy nhiên, trong quá trình chuyển WordPress tới nhà cung cấp khác hoặc khi cài WordPress thủ công, bạn có thể quên thêm user vào database. Kết quả là Privileged Users bị trống như hình bên dưới.

This database has no user added.

Để sửa lỗi này, chúng tôi đã dùng mục Add User To Database ở cuối trang:

Bottom of the screen lets manage database users and add privileges.

  1. Đầu tiên xem Current Users có giống với giá trị DB_USER value trong wp-config.php được liệt kê ở đây không.
  2. Nếu nó được liệt kê, chúng ta sẽ dùng user đó trong phần Add User To Database->User, chọn database tương ứng trong danh sách và nhấn nút Add. Bạn sẽ phải định nghĩa quyền, chọn All Privileges, click vào Make Changes và quay lại bằng nút Go Back.
  3. Nếu không được liệt kê, chúng ta sẽ sử dụng phần Add New User để tạo thêm MySQL username. Tại đây bạn điền username hoặc phần còn thiếu vào trường Username và chúng tôi khuyên sử dụng Password generator để tạo Pasword.

QUAN TRỌNG: bạn nên cập nhật giá trị DB_PASSWORD trong file wp-config.php ngay để nó không bị mất trong quá trình thao tác. Khi user đã được thêm (hoặc được tạo), bạn sẽ cần thực hiện lại bước trước bước (2) để thêm nó vào database. Khi làm xong hãy tải lại trang để xem lỗi đã được sửa chưa.

Kiểm tra giá trị host

Nếu cả 2 bước trên vẫn không sửa được, có 2  thông tin còn lại cần phải kiểm tra. Là giá trị host và password. Hãy bắt đầu với giá trị host, giá trị host thường đi kèm với thông tin tài khoản. Chúng tôi khuyên kiểm tra lại thông tin này với nhà cung cấp hosting của bạn nếu không tìm thấy trong email được gửi tới cho bạn từ trước về thông itn tài khoản. Nếu bạn đã đổi MySQL database host, hãy tải  lại trang và xem lỗi Error establishing a database connection đã được sửa chưa.

Kiểm tra thông tin mật khẩu đăng nhập

Mật khẩu đăng nhập co1 thể được tìm thấy trong mục MySQL Databases->Current Users trong control panel.

  1. Xác định đúng user trong cột Users và click vào nút Change Password .
  2. Tại đây bạn có thể sử dụng giá trị DB_PASSWORD trong file  wp-config.php hoặc tạo password mới bằng tool Password Generator. Hãy cập nhật giá trị DB_PASSWORD trongwp-config.php file với password mới.
  3. Nhấn Change Password

Đó là tất cả các bước kiểm tra cho file wp-config.php.  Hãy tải lại trang để xem lỗi được sửa chưa. Nếu lỗi vẫn chưa được sửa hãy làm bước sau.

Bước 3 — Liên hệ công ty hosting của bạn

Nếu bạn đã làm các bước trên mà vẫn gặp lỗi, bạn vẫn còn thấy Error establishing a database connection,  có nghĩa lỗi do nhà cung cấp hosting. Hãy liên hệ nhà cung cấp dịch vụ web hosting của bạn và cho họ các hton6g tin cần thiết để tái hiện lỗi, họ có thể xác định nguyên nhân gây lỗi.

Kết luận

Bài hướng dẫn này có thể giúp bạn sửa lỗi The Error establishing a database connection đang hiện lên trên WordPress. Bằng các bước phù hợp bạn sẽ có thể sửa lỗi nếu lỗi do database bị hỏng hoặc sai thông tin kết nối database. Ngoài ra có thể có lỗi do nhà cung cấp hosting mà chỉ có họ mới sửa được nhưng 90% lỗi nằm ở các vấn đề trên, hãy áp dụng cách sửa trên trước khi liên hệ đội hỗ trợ kỹ thuật.

Hãy gia nhập cùng hàng trăm subscriber của Hostinger trên thế giới

để nhận các bài hướng dẫn mới nhất tới email của bạn.

Please wait...

Cảm ơn đã đăng ký!

Tiết kiệm ngay thôi!

Mua hosting & tên miền miễn phí, tất cả trong một chỉ từ

VNĐ52.000
00
/th