Nếu bạn đã lướt web trong một thời gian, chắc hẳn bạn có ít nhất đã nhìn thấy lỗi Thiết lập kết nối cơ sở dữ liệu một vài lần do nhiều nguyên nhân gây ra. Là một người mới bắt đầu WordPress, điều này có thể cực kỳ bực bội đặc biệt khi nó xảy ra lỗi mà bạn không thay đổi bất cứ điều gì. 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 tốt nhất hiện nay.
Cách khắc phục lỗi Thiết lập kết nối cơ sở dữ liệu trong WordPress
Lưu ý: Trước khi bạn thực hiện bất kỳ thay đổi cơ sở dữ liệu trong WordPress, hãy đảm bảo bạn đã sao lưu toàn bộ dữ liệu.
Mục lục [hide]
Tại sao bạn lại gặp phải lỗi này?
Bạn gặp phải lỗi thiết lập kết nối cơ sở dữ liệu trong WordPress vì WordPress không thể thiết lập kết nối cơ sở dữ liệu. Vậy tại sao WordPress không thể thiết lập kết nối cơ sở dữ liệu. Có thể là thông tin xác thực đăng nhập cơ sở dữ liệu của bạn sai hoặc đã bị thay đổi. Có thể 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.
Vấn đề có xảy ra với / wp-admin / không?
Điều đầu tiên bạn nên làm là đảm bảo rằng bạn đang nhận được cùng một lỗi trên cả front-end của website và back-end của website (wp-admin). Nếu thông báo lỗi giống nhau trên cả hai trang “Error establishing a database connection”, sau đó tiến hành bước tiếp theo. Nếu bạn nhận được một lỗi khác trên wp-admin, ví dụ như “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 ”, bạn cần phải sửa cơ sở dữ liệu.
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 ngay trước “That’s all, stop editing! Happy blogging”dòng wp-config.php.
1
|
define( 'WP_ALLOW_REPAIR' , true); |
Khi bạn đã thực hiện điều đó, bạn có thể xem các cài đặt bằng cách truy cập trang này: http://www.yoursite.com/wp-admin/maint/repair.php
Hãy nhớ rằng, người dùng không cần phải đăng nhập để truy cập chức năng này khi xác định này được thiết lập. Mục đích chính của nó là sửa chữa một cơ sở dữ liệu bị hỏng, người dùng thường không thể đăng nhập khi cơ sở dữ liệu bị hỏng. Vì vậy, một khi bạn đã hoàn tất việc sửa chữa và tối ưu hóa cơ sở dữ liệu của mình, hãy đảm bảo xóa nó khỏi tệp wp-config.php của bạn.
Nếu sửa chữa này không khắc phục được sự cố hoặc bạn đang gặp sự cố khi chạy bản sửa lỗi thì hãy tiếp tục đọc bài viết này vì bạn có thể tìm một giải pháp khác.
Kiểm tra tệp WP-Config
WP-Config.php có lẽ là tập tin quan trọng nhất trong toàn bộ quá trình cài đặt WordPress của bạn. Đây là nơi bạn chỉ định chi tiết cho 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 thay đổi tệp này. Điều đầu tiên bạn nên luôn luôn kiểm tra là tất cả mọi thứ trong tập tin wp-config.php của bạn là như nhau.
1
2
3
4
|
define( 'DB_NAME' , 'database-name' ); define( 'DB_USER' , 'database-username' ); define( 'DB_PASSWORD' , 'database-password' ); define( 'DB_HOST' , 'localhost' ); |
Hãy nhớ rằng giá trị DB_Host của bạn có thể không phải lúc nào cũng là localhost. Tùy thuộc vào máy chủ, nó sẽ khác nhau.
Một số người cho rằng họ đã khắc phục sự cố của họ bằng cách thay thế localhost bằng IP. Thông thường, bạn sẽ thấy loại sự cố này khi chạy WordPress trên máy chủ cục bộ . Ví dụ trên MAMP, giá trị DB_Host khi thay đổi thành IP có vẻ hoạt động.
1
|
define( 'DB_HOST' , '127.0.0.1:8889' ); |
Nếu mọi thứ trong tệp này là chính xác (hãy đảm bảo bạn kiểm tra lỗi chính tả), thì có điều gì đó sai ở máy chủ.
Kiểm tra Web Host (MySQL)
Thông thường bạn sẽ gặp lỗi này khi thiết lập kết nối cơ sở dữ liệu khi website của bạn tràn ngập nhiều traffic. Về cơ bản, máy chủ lưu trữ của bạn không thể xử lý tải (đặc biệt shared hosting). Website của bạn sẽ rất chậm và một số người dùng thậm chí còn xuất ra lỗi. Vì vậy, điều tốt nhất bạn nên làm là phản hồi với nhà cung cấp hosting của bạn và yêu cầu họ rằng máy chủ MySQL của bạn là đáp ứng.
Đối với những người dùng muốn thử nghiệm nếu máy chủ MySQL đang chạy một mình, bạn có thể làm một vài điều. Kiểm tra các trang web khác trên cùng một máy chủ để xem liệu chúng có vấn đề hay không. Nếu họ cũng nhận được cùng một lỗi, thì chắc chắn có điều gì đó sai 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, 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, chúng tôi cần xác minh xem người dùng cơ sở dữ liệu của bạn có đủ quyền không. Tạo một tệp mới có tên là testconnection.php và dán đoạn mã sau vào nó:
1
2
3
4
5
6
7
số 8
|
<?php $link = mysql_connect( 'localhost' , 'root' , 'password' ); if (! $link ) { die ( 'Could not connect: ' . mysql_error()); } echo 'Connected successfully' ; mysql_close( $link ); ?> |
Đảm bảo thay đổi người dùng và mật khẩu. Nếu 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ì đó sai. Quay lại tệp wp-config của bạn để đảm bảo mọi thứ có 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 vào phpMyAdmin tức là đã có vấn đề xảy ra với máy chủ của bạn. Nó không hẳn là máy chủ MySQL của bạn bị hỏng. Điều đó có nghĩa là người dùng của bạn không có đủ quyền.
Vì vậy, nếu bạn nhận được các truy cập bị từ chối lỗi trong hoặc kết nối với phpMyAdmin hoặc thông qua kết quả testconnection.php, sau đó bạn nên liên hệ với nhà cung cấp máy chủ của bạn ngay lập tức để được hỗ trợ khắc phục.
Giải pháp làm việc cho người khác
Điều quan trọng cần lưu ý là chúng có thể không hiệu quả với bạn. Sử dụng rủi ro của riêng bạn và đảm bảo rằng bạn có đủ bản sao lưu nếu gặp sự cố.
Deepak Mittal nói rằng khách hàng của ông đã gặp lỗi mà cơ sở dữ liệu cần được sửa chữa. Ngay cả sau khi sửa chữa cơ sở dữ liệu, lỗi vẫn không được khắc phục. Ông đã thử nhiều cách khác nhau và cuối cùng, vấn đề là url của trang web. Rõ ràng đã được thay đổi mà gây ra lỗi vẫn tồn tại. Ông chạy truy vấn SQL bằng cách vào phpMyAdmin:
1
|
UPDATE wp_options SET option_value= 'YOUR_SITE_URL' WHERE option_name= 'siteurl' |
Đảm bảo thay thế YOUR_SITE_URL bằng ví dụ url thực tế: http://www.wpbeginner.com. Các wp_options sẽ khác nếu bạn thay đổi tiền tố cơ sở dữ liệu WordPress mặc định .
Sachinum cho rằng anh ta có thể kết nối cơ sở dữ liệu với testconnection.php, vì vậy anh ta đã thay đổi người dùng wp-config.php thành người dùng root. WordPress bắt đầu hoạt động hoàn hảo. Sau đó, anh đã hoàn nguyên các thiết lập trở lại người dùng cơ sở dữ liệu và nó tiếp tục hoạt động.
Cutewonders cho rằng họ đã xóa nội dung của active_plugins trong bảng wp_options và chỉnh sửa nội dung của recent_edited. Về cơ bản họ đã khắc phục được vấn đề.
Hãy khắc phục lỗi Thiết lập kết nối cơ sở dữ liệu khó chịu này với một trong những cách chúng tôi đã giới thiệu ở trên và chờ đợi kết quả ra sao nhé. Chúc bạn thành công!