Xin hỏi làm thế nào để tối ưu hóa Forum với DATABASE MYSQL. Nếu Database MYSQL quá lớn thì cần làm gì? Có nên chia nhỏ một MYSQL lớn ra làm nhiều MYSQL nhỏ ko?
Bạn có thể tham khảo vài cách sau: 1) Phải phân tích các show queries (mysql có lưu các slow query ở đâu đó) 2) Không có thì phải lấy được các queries ra, dùng tính năng EXPLAIN để phân tích câu query. 3) Sau khi explain, quyết định đánh INDEX vào các trường cần thiết. Nếu số lượng người dùng rất lớn thì bạn phân tích xem số lượng query đọc (SELECT) và query ghi (INSERT/UPDATE/DELETE) trên database của bạn cái nào nhiều hơn. 4) Nếu SELECT nhiều hơn, bạn nên sử dụng REPLICATION, với SLAVE DB toàn là bảng MyISAM. 5) Nếu INSERT/UPDATE/DELETE nhiều hơn bạn nên chuyển MASTER DB sang InnoDB - Ngoài ra bạn có thể phân tích xem, nhưng câu INSERT/UPDATE/DELETE nào không cần phát huy tác dụng ngay tức thì, bạn có thể sử dụng DELAY param. 6) Sử dụng cache Cũng có một vài cách nữa để tối ưu hóa Database
Chia nhỏ ra đơn giản thôi. vào phpmy admin. bạn vào mysql database cần chia. Chọn bao nhiêu tùy ý bạn rồi export ra, quay lại xóa những cái vừa chọn đi. tạo một database mới, import mysql vừa tạo. vào config, thêm database. vậy là xong. tớ thử làm như vậy và hoàn toàn được.
Hàng mới đã xuất hiện : http://xenforo.com/community/threads/master-slave-database-paid.43666/ Thảo luận : http://xenforo.com/community/thread...d-slave-write-master.14492/page-2#post-316714