2010-10-25 27 views
6

Nếu tôi có thiết lập master-slave MySQL và tôi thay đổi lược đồ trên master (ví dụ: ALTER TABLE/CREATE TABLE, vv), những thay đổi đó sẽ được nhân rộng sang slave?thay đổi lược đồ mysql với master & slave

+1

Mở phiên bản mới nhất DDL trên tổng thể sẽ được nhân rộng trên nô lệ – shadow0359

Trả lời

3

Không, bạn phải thay đổi thủ công.

+0

không có vấn đề ..... –

+0

CREATE TABLE lệnh nên được nhân rộng. Nhưng nếu bạn đang thực hiện ALTER TABLE như thả khóa chính. –

+0

Tôi mới bắt đầu với MySQL. Đã luôn luôn sử dụng SQL Server và nghiêm túc? Các nhà phát triển MySQL không thể học được gì từ những người SQL Server. SQL Server nhân rộng hoạt động không ngừng và "bất kỳ" thay đổi trong tổng thể, bao gồm cả những thay đổi trong lược đồ được nhân rộng tự động. Điều này thật đáng thất vọng khi tôi bắt đầu lên kế hoạch di chuyển. –

8

Câu trả lời thực tế là nó phụ thuộc vào loại bản sao bạn đang sử dụng và cách thiết lập sao chép của bạn được định cấu hình.

Sao chép dựa trên bản sao? Áp dụng ALTER TABLE trên máy chủ? Không sử dụng bất kỳ lệnh SQL không sao chép an toàn nào [1] (ví dụ: các hàm không xác định như RAND())?

TẠO và ALTER sẽ tái tạo tốt.

Trong một số trường hợp, có thể hữu ích khi dừng nô lệ; [chạy tập lệnh trên máy chủ]; [chạy kịch bản trên nô lệ]; bắt đầu nô lệ; Một ví dụ là ở đây [2].

[1] http://dev.mysql.com/doc/refman/5.1/en/replication-sbr-rbr.html

[2] http://dev.mysql.com/doc/refman/5.1/en/replication-solutions-diffengines.html

Các vấn đề liên quan