2013-06-17 14 views
8

Có cách nào để giữ hai cơ sở dữ liệu đồng bộ không? Tôi có một khách hàng đang chạy WordPress với MySQL. Có cách nào để lấy một bản sao của cơ sở dữ liệu trạng thái hiện tại, và sử dụng nó cho một máy chủ phát triển, và sau đó khi thay đổi dev được thực hiện đẩy nó trở lại trang web trực tiếp?Làm thế nào để giữ hai cơ sở dữ liệu MySQL đồng bộ?

Khách hàng có thể thực hiện thay đổi đối với trang web trực tiếp trong khi tôi sẽ làm việc trên phiên bản dev và tự hỏi liệu có bất kỳ xung đột hợp nhất nào không.

Nếu tôi nhập cơ sở dữ liệu cập nhật qua phpmyadmin, nó sẽ chỉ cập nhật chỉ với những thay đổi mới nhất hoặc ghi đè mọi thứ?

+4

Sao chép MySQL; nhưng những thay đổi cấu trúc chính nào bạn tạo ra cho cơ sở dữ liệu dev? –

+0

Bạn không bao giờ phải có hai cơ sở dữ liệu đang chạy với cùng một nội dung. –

+0

@MarkBaker Đó là một trang web nhỏ, những thay đổi tôi đang thêm là các tính năng mới cho phía quản trị viên. Tôi hầu như lo lắng về việc viết các thay đổi mới hơn. Trong các thử nghiệm của tôi cho đến nay nó dường như chỉ cập nhật các bảng đã thay đổi. Tôi chỉ thận trọng trước khi bắt đầu làm việc với trang web của khách hàng. – Alex

Trả lời

6

Vì vậy, cuối cùng tôi đã tìm được giải pháp cho vấn đề của mình. Vì đây là một vấn đề đối với WordPress, tôi đã tìm thấy hai plugin hoạt động thực sự tốt.

Miễn phí một: Database Sync
Rất đơn giản và có giao diện đẩy/kéo dễ dàng.

Plugin trả phí $ 40-200: WP Migrate DB Pro
Được đánh bóng nhiều hơn và có tùy chọn để chọn các bảng cụ thể mà bạn muốn đồng bộ hóa.

1

Có câu trả lời cho vấn đề trùng lặp here. Tuy nhiên, đó chỉ là khởi đầu của những khó khăn của bạn. Nếu hai người đang thực hiện các thay đổi độc lập với hai bản sao của một cơ sở dữ liệu, việc sáp nhập hai cơ sở chắc chắn sẽ gây ra những cơn ác mộng. Trong ngắn hạn, có sẽ có xung đột hợp nhất. Chính xác những gì, và những gì bạn làm về nó, sẽ phụ thuộc vào bản chất của những thay đổi mà bạn đã thực hiện. Chúc may mắn!

+0

Tôi không nghĩ rằng những thay đổi của chúng tôi sẽ là cùng một bảng, và mọi thứ sẽ được thực hiện rất thận trọng và được sao lưu, nhưng tôi muốn nó là một quá trình suôn sẻ. – Alex

8

Đây là tài liệu tham khảo nhanh về MySQL Replication bởi @Mark Baker hoặc bạn có thể sử dụng MySQL Workbench Synchronization.

+1

Ah, có vẻ như đây có thể là một giải pháp tuyệt vời. Đang điều tra ngay bây giờ. – Alex

+0

Mặc dù bạn phải cài đặt MySQL Workbench trên máy tính của mình. –

+0

Đồng bộ hóa Workbench MySQL trông giống như nó sẽ làm vé. Cảm ơn. – Alex

1

Giải pháp thanh toán hiện đại (bài đăng này khá cũ) cho vấn đề này là deevopmergebot.

Mergebot là một saas plugin, giúp với việc hợp nhất phức tạp giữa các cơ sở dữ liệu phát triển và sản xuất khác nhau, đặc biệt cho WordPress.

deevop là giải pháp toàn diện hơn cung cấp môi trường phát triển nhưng cũng có nhiều tùy chọn để đồng bộ hóa dữ liệu phức tạp giữa các giai đoạn (không bao gồm bảng, vv) không chỉ cho WordPress mà còn cho các nền tảng khác.

Bạn thậm chí có thể kết hợp cả hai và sử dụng deevop làm người quản lý triển khai (một cú nhấp chuột triển khai đến/từ sản xuất) và sau đó sử dụng sáp nhập cho các kết hợp cơ sở dữ liệu phức tạp.

+0

deevop trông thú vị. Mergebot là từ cùng một người đã thực hiện WP Migrate Pro (Bộ não ngon) – Alex