PDA

View Full Version : Vấn đề Replicate khi Setup lại SQL Server



tuan-nda
17-02-2011, 15:00
Chào các bạn,
Tình huống : Do sự cố, phải cài đặt lại HĐH Window Sever 2003 và khôi phục lại DB SQl Sever.
Vấn đề: Làm sao vẫn giữ được các Replicate(Push) trước đó mà không phải Reintialze lại.
Nếu Reintilze lại là vấn đề khủng khiếp đối với tôi. Phải thiết lập cho 50 IP, mỗi IP là 2GB.
Rất mong anh/chị tư vấn giúp. Xin cảm ơn trước!

[=========> Bổ sung bài viết <=========]

Chắc nơi đây chỉ toàn baby nên tôi close topic này.
Tìm nơi khác vậy!!!

Red Devilic
20-02-2011, 10:51
Hi bạn.

Mình thì không làm Replicate lâu rồi. Tuy nhiên vẫn nhớ là có 3 cách để thực hiện:

1- Dùng thirdparty-software :D
2- Khi CSDL lớn như của bạn, chắc cũng phải có đội support của MS sẵn sàng giải quyết những vấn đề như vậy nhỉ :D
3- Có thể dùng Script.
Khi setup Replication, ngoài thao tác trên giao diện, có thể setup bằng các Script.Bạn có thể lưu các script để sau này thiết lập lại.

Bạn chắc là rất kinh nghiệm với Replication, tiện đây mình đã có 1 topic post khoảng gần 2 năm nhưng vẫn chưa có lời giải đáp, bạn có thể xem qua và cho 1 vài lời khuyên không ?

http://ddth.com/showthread.php?t=287079

tuan-nda
21-02-2011, 11:13
Rất cảm ơn bạn Red Devilic.
*Dòng 1 và 2 - Bạn để mặt cười chắc bạn cũng rõ tính khả thi :-)
*Dòng 3: Đúng như bạn nói là không khải mất công - lưu lại và thực thi Sript
(Tương tự new subscription) Nhưng khi như vậy - tất cả số dữ liệu tại 1 chi nhánh sẽ bị xóa hết(snap shot) và sẽ bị bulk copy từ trung tâm - và thời gian hoàn thành cho DB 2GB là vấn đề. Nhất là dối với ứng dụng online.
(Mình sử dụng cơ chế transaction khi thiết lập Replicate.Hiện nay, khi gặp sự cố như vậy mình và đồng bọn thức 2 ngày đêm để thiết lập mới cho 50 IP, oãi)

Còn vấn đề của bạn (http://ddth.com/showthread.php?t=287079)
Khi Relicate: Publishers là Sever C (SQL2000) và Sucription là Sever B (SQL2005) (chứng thực: sa)

Thực ra tôi chưa thiết lập cho 2 instant khác phiên bản. Nhưng bạn có thể thử đảo ngược ==>Login bằng giao diện của SQL2005 - và tiến hành các bước bình thường.Chúc bạn khoẻ.

Red Devilic
21-02-2011, 11:33
Tôi nhớ là còn 1 cách nữa. Nhưng cách này là đọc được, chứ chưa làm trên thực tế bao giờ. Đó là thực hiện Transaction Replication mà bỏ qua phần Snapshot.

Bạn có thể xem giới thiệu ở đây:
http://technet.microsoft.com/en-us/library/ms151705.aspx

Thực chất là sử dụng file backup trên Publisher, sau đó restore nó trên Subcriber, tiến hành Snapshot ngay tại trên local Subcriber.

Như vậy khi transaction replication từ Pub sang Sub, nó sẽ bỏ qua bước Snapshot vì Snapshot đã được thực hiện ngay trên Sub với file Backup của Pub rồi.

Còn về vấn đề của tôi thì tôi thực hiện tất cả qua giao diện của SQL Server 2005. Bực ở chỗ là bình thường lúc cấu hình thì không gặp vấn đề gì, tuy nhiên khi triển khai thì tự dưng không thấy phần cấu hình Agent Security đâu nữa. Kể cả khi xem Option của Replication, thì phần Security đó cũng bị disabled , ko thể chỉnh sửa như thường được nữa.

Tuy nhiên khi Replicate với các instance khác thì lại bình thường. Tôi ko hiểu là có tùy chọn gì trên SQL Server 2000 mà nó tự động sử dụng luôn Windows Authenticate cho Replication hay không ?

tuan-nda
21-02-2011, 15:40
Cảm ơn Red
Cách này sẽ không bị bulk copy.Tuy nhiên,không ổn về đồng bộ CSDL.
Ví dụ:
1/A là Pub, B và C la Sub (Transaction). Hiện 3 nơi đã đồng bộ 10 mẫu tin.
2/Phát sinh tại B là 2 mẫu tin. Giả sử lúc đó hệ thống bị sự cố như mình nói.
Lúc này, tại A=10 ,B=12,C=10
3/Khi khắc phục và thiết lập không snapshot -->A và C sẽ bị thiếu 2 mẫu tin ps từ B.
Cũng khó toàn vẹn khi sự cố xãy ra. Mình cảm ơn Red nhiều.