Tôi đang sử dụng SymmetricDS để đồng bộ hóa cơ sở dữ liệu. Nó có khả năng đồng bộ hóa hoặc sao chép dữ liệu giữa các nút (máy chủ / cơ sở dữ liệu), chỉ đẩy hoặc kéo dữ liệu do bạn xác định. Nó là một phần mềm dựa trên Java, nó có một đường cong học tập khó khăn, nhưng nó thực sự làm được việc.
SymmetricDS có thể được thiết lập để đẩy các thay đổi từ một nút này sang hai nút khác, do đó đảm bảo rằng cả ba nút đều chứa cùng một dữ liệu. Bạn cần đảm bảo rằng khóa chính là khóa duy nhất và không phải là giá trị tăng tự động do cơ sở dữ liệu chỉ định vì điều này rất có thể sẽ là sự cố trên ba cơ sở dữ liệu khác nhau mà bạn muốn đồng bộ hóa.
Phần mềm cài đặt các trình kích hoạt trên cơ sở dữ liệu và nắm bắt các thay đổi khi các thao tác CHÈN, CẬP NHẬT hoặc XÓA (và các thao tác khác) được thực hiện. Những thay đổi dữ liệu này sau đó được gọi trên các nút khác. Phần mềm cần phải chạy trên từng vị trí, nhưng không cần kết nối internet luôn khả dụng.
Lúc đầu, tôi đã lo lắng rằng việc kích hoạt trên tất cả các bảng của tôi sẽ làm chậm hiệu suất, nhưng điều này không phải là vấn đề gì cả. Tôi không thể nói rằng chúng tôi đã phát hiện ra bất kỳ vấn đề nào về hiệu suất sau khi các trình kích hoạt được cài đặt.
Hãy xem http://symmetricds.org/ để biết thêm chi tiết.