Cơ sở dữ liệu có thể lưu trữ một lượng lớn thông tin - tất cả các bài đăng, trang, nhận xét, menu và bất kỳ dạng dữ liệu văn bản nào. Bạn có trang web càng phát triển thì cơ sở dữ liệu của nó càng lớn. Cùng với đó, cơ sở dữ liệu có thể trở nên 'lộn xộn' với các mục không cần thiết, chẳng hạn như nhận xét spam, bản nháp, tệp đã đóng hoặc tạm thời, v.v.
Tất nhiên, nó có thể dẫn đến hiệu suất tốc độ trang web của bạn kém và thậm chí sử dụng tài nguyên quá mức trong tài khoản cPanel của bạn - một số yêu cầu MySQL đối với cơ sở dữ liệu 'nặng' có thể bị kẹt trong một hàng đợi đánh vào Quy trình đầu vào và giới hạn CPU. Do đó, cần phải tối ưu hóa thích hợp để liên quan đến hiệu quả mà dữ liệu được truy xuất từ cơ sở dữ liệu.
Hướng dẫn này sẽ chỉ cho bạn một số cách để đạt được mục tiêu này. 1. Để bắt đầu, bạn cần xác định vị trí cơ sở dữ liệu được gán cho trang web của bạn. Nếu bạn không biết tên của nó, vui lòng kiểm tra tệp cấu hình trang web của bạn:
CMS | Đường dẫn đến tệp cấu hình | Dòng |
---|---|---|
WordPress | thư mục gốc cài đặt, wp-config.php | xác định ('DB_NAME', 'cpuser_database'); |
Joomla | thư mục gốc cài đặt, config.php | public $ db ='cpuser_database'; |
PrestaShop | thư mục gốc cài đặt>> / config / settings.inc.php | xác định ('_ DB_NAME_', cpuser_database '); |
OpenCart | thư mục gốc cài đặt, config.php | xác định ('DB_DATABASE', 'cpuser_database'); |
Drupal | thư mục gốc cài đặt>> / sites / default / settings.php | 'database' => 'cpuser_database', |
Hình tượng trưng | thư mục gốc cài đặt, config.php | $ CFG-> dbname, ='cpuser_database'; |
Magento | thư mục gốc cài đặt>> / app / etc / local.xml | |
phpBB | thư mục gốc cài đặt, config.php | $ dbname ='cpuser_database'; |
3. Trước khi thực hiện bất kỳ thay đổi nào, chúng tôi đặc biệt khuyên bạn nên tải xuống bản sao lưu của cơ sở dữ liệu của bạn. Để làm như vậy, hãy chuyển đến Tệp phần> Sao lưu thực đơn:
4. Nhấp vào cơ sở dữ liệu được đề cập trong Tải xuống Bản sao lưu cơ sở dữ liệu MySQL để bắt đầu tải xuống:
5. Bây giờ bạn có thể tiến hành tối ưu hóa chính nó. Điều hướng đến Cơ sở dữ liệu phần> phpMyAdmin thực đơn:
6. Nhấp vào cơ sở dữ liệu ở menu bên trái để mở rộng danh sách các bảng:
7. Đánh dấu chọn bảng cần thiết và chọn Tối ưu hóa bảng từ trình đơn thả xuống như được hiển thị bên dưới:
8. Theo cách tương tự, bạn có thể tối ưu hóa nhiều bảng cùng một lúc hoặc tất cả chúng bằng cách sử dụng Kiểm tra tất cả tùy chọn:
9. Kết quả là, bạn sẽ nhận được kết quả sau:
10. Một cách khác để tối ưu hóa cơ sở dữ liệu của bạn là xóa dữ liệu không cần thiết. Nó có thể được thực hiện thông qua SQL dòng lệnh với truy vấn sau:
DELETE FROM $ table where
trong đó $ table xác định tên của bảng cần được điều chỉnh và
11. Hãy xem xét kỹ tùy chọn này và xem xét cách thức hoạt động của nó.
Giả sử bạn cần xóa tất cả các bài viết có chứa một số từ khóa, bạn nên sử dụng lệnh sau:
XÓA TỪ 'bảng'
ĐÂU 'cột' như '% từ khóa% '
LƯU Ý: bạn cần thay thế bảng và cột với các giá trị thực tế của cơ sở dữ liệu của bạn.
Để làm như vậy, hãy di chuyển đến bảng chứa các bài đăng trên trang web của bạn và tìm cột tương ứng. Trong trường hợp của chúng tôi, đó là wp9x_posts và posts_title cột:
Dưới đây, bạn có thể xem biến thể cuối cùng của lệnh của chúng tôi:
XÓA TỪ 'wp9x_posts'
WHERE 'post_title' như '% test%'
Sau khi bạn nhấn Bắt đầu , tất cả các bài đăng có 'kiểm tra' từ trong tiêu đề của họ sẽ bị xóa.
Đầu ra sẽ giống như sau:
12. Nếu bạn muốn xóa các bài đăng trong khoảng thời gian đã chỉ định, vui lòng sử dụng cái này:
XÓA TỪ 'bảng'
WHERE 'cột' giữa 'datefrom' và 'dateto '
Một lần nữa, bảng và cột nên được thay thế bằng các giá trị thực tế cũng như datefrom và dateto .
LƯU Ý: bạn cần chỉ định ngày và giờ chính xác có thể được tra cứu trong cơ sở dữ liệu.
Lệnh cuối cùng của chúng ta là:
> XÓA khỏi 'wp9x_posts'
WHERE 'post_date' trong khoảng thời gian từ '2015-06-24 19:48:14' đến '2016-07-20 23:27:23' 13. Giả sử bạn cần xóa nhận xét từ một người dùng nhất định. Đây là lệnh để sử dụng:
DELETE FROM 'table'
WHERE 'column' ='username'
trong trường hợp của chúng tôi là:
XÓA TỪ 'wp9x_comments'
WHERE 'comment_author' ='test_user'
hoặc nếu bạn cần xóa các bài đăng có trạng thái nhất định:
XÓA TỪ 'bảng'
WHERE 'column' ='status'
trong trường hợp của chúng tôi là:
XÓA TỪ 'wp9x_posts'
WHERE 'post_status' ='closed' Chế độ tương tự hoạt động đối với bất kỳ bảng, cột và cơ sở dữ liệu nào khác, bạn chỉ cần đặt các giá trị tương ứng. Bạn cũng có thể tham khảo tài liệu MySQL để tìm hiểu thêm về các thao tác có thể có và cú pháp MySQL.
Vậy là xong!
Bạn cần trợ giúp? Liên hệ với HelpDesk của chúng tôi