Tạm thời vô hiệu hóa sao chép Sql


7

Do nhu cầu kinh doanh, tôi có thể cần phải vô hiệu hóa sao chép giao dịch trong môi trường của mình (Sql 2k -> Sql 2008). Về mặt chức năng, tôi hiểu điều này có nghĩa là tôi sẽ cần phải bỏ đăng ký và bài viết. Là có được các kịch bản tạo đủ để khôi phục sao chép trở lại trạng thái ban đầu khi nhu cầu xung đột được giải quyết?

Cảm ơn.


1
Một vài câu hỏi. Bạn có muốn vô hiệu hóa chỉ người đăng ký hoặc nhà xuất bản và người đăng ký? Bạn đang sao chép toàn bộ cơ sở dữ liệu hay bạn đang lọc ra một số đối tượng?
Craig Efrein

1
Chúng tôi sẽ cần phải vô hiệu hóa nó trên cả nhà xuất bản và người đăng ký. Ngoài ra, chúng tôi đang sao chép một tập hợp con lớn của các bảng trong cơ sở dữ liệu, nhưng không phải tất cả chúng.
swasheck

2
Tôi chỉ đưa ra câu trả lời của mình dựa trên việc vô hiệu hóa đăng ký. Việc đăng ký sẽ bị vô hiệu hóa trên cả nhà xuất bản và người đăng ký.
Craig Efrein

Câu trả lời:


9

Tôi đã thử nghiệm ví dụ này bằng cách sử dụng SQL Server 2000 (MS2000) làm nhà xuất bản và SQL Server 2008 (MS2008) làm thuê bao. Trên nhà xuất bản, một cơ sở dữ liệu có tên arp có một số bảng, nhưng chỉ những người dùng bảng mới được đưa vào như một bài viết trong ấn phẩm. Ví dụ này xóa đăng ký khỏi cả hai máy chủ và sau đó đặt lại.

Trên thuê bao MS2008

Đã xóa đăng ký hiện tại khỏi MS2008

USE arp
GO

EXEC sp_droppullsubscription @publisher='MS2000', @publisher_db='arp', @publication='arp_pub'

Trên nhà xuất bản MS2000

Bỏ đăng ký

-- dropped subscription
exec sp_dropsubscription @publication = N'Arp_pub', @subscriber = N'MS2008', @destination_db = N'arp', @article = N'all'

Đánh rơi thuê bao

-- On MS2000, dropped subscriber from MS2008 after removing it from MS2008
exec sp_dropsubscriber @subscriber = N'MS2008'

Sau này, tôi tạo lại thuê bao.

Trên Nhà xuất bản, MS2000

Thêm lại trong thuê bao

use [master]
exec sp_addsubscriber @subscriber = N'MS2008', @type = 0, @description = null, @security_mode = 1, @frequency_type = 64, @frequency_interval = 1, @frequency_relative_interval = 1, @frequency_recurrence_factor = 0, @frequency_subday = 4, @frequency_subday_interval = 5, @active_start_time_of_day = 0, @active_end_time_of_day = 235959, @active_start_date = 0, @active_end_date = 99991231

exec sp_changesubscriber_schedule @agent_type = 1, @subscriber = N'MS2008', @frequency_type = 4, @frequency_interval = 1, @frequency_relative_interval = 1, @frequency_recurrence_factor = 0, @frequency_subday = 8, @frequency_subday_interval = 1, @active_start_time_of_day = 0, @active_end_time_of_day = 235959, @active_start_date = 0, @active_end_date = 99991231
GO

Thêm lại trong đăng ký

use [Arp]
exec sp_addsubscription @publication = N'Arp_pub', @subscriber = N'MS2008', @destination_db = N'arp', @sync_type = N'Automatic', @subscription_type = N'pull', @update_mode = N'read only'
GO

Trên thuê bao MS2008

Tạo cơ sở dữ liệu

CREATE DATABASE arp;
GO

Thêm đăng ký kéo

use [arp]
exec sp_addpullsubscription @publisher = N'MS2000', @publication = N'Arp_pub', @publisher_db = N'Arp', @independent_agent = N'False', @subscription_type = N'pull', @description = N'', @update_mode = N'read only', @immediate_sync = 0

Thêm đại lý

@Job_login là người dùng ntlm có quyền đối với thư mục ảnh chụp mặc định. Người dùng đó cũng có quyền truy cập vào ấn phẩm trên nhà xuất bản

Thư mục ảnh chụp nhanh là thư mục dùng chung có thể truy cập bởi cả Nhà xuất bản và Người đăng ký.

exec sp_addpullsubscription_agent @publisher = N'MS2000', @publisher_db = N'Arp', @publication = N'Arp_pub', @distributor = N'MS2000', @distributor_security_mode = 1, @distributor_login = N'', @distributor_password = null, @enabled_for_syncmgr = N'False', @frequency_type = 64, @frequency_interval = 0, @frequency_relative_interval = 0, @frequency_recurrence_factor = 0, @frequency_subday = 0, @frequency_subday_interval = 0, @active_start_time_of_day = 0, @active_end_time_of_day = 235959, @active_start_date = 20120214, @active_end_date = 99991231, @alt_snapshot_folder = N'', @working_directory = N'', @use_ftp = N'False', @job_login = N'MS2008\replication_user', @job_password = 'test123', @publication_type = 0
GO

Trên nhà xuất bản MS2000, tôi đã chạy công việc chụp nhanh

Bảng nhân rộng một lần nữa hiển thị trên MS2008.


1
Chào mừng bạn Tôi đã để lại tại chỗ người dùng, thư mục chụp nhanh, chia sẻ. Tất cả điều này là loại bỏ đăng ký từ cả hai máy chủ, nhưng mọi thứ khác chỉ còn lại một mình.
Craig Efrein
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.