02/10/2018, 00:34

[SQLSERVER] Hướng dẫn cấu hình tạo bản sao đồng bộ dữ liệu giữa 2 server sử dụng Replication trong Sqlserver

Tạo bảng sao dữ liệu (replication) là công việc rất quan trọng đối với người quản trị dữ liệu, cho phép chia sẻ, phân tán, đồng bộ dữ liệu giữa các Database server. Bài viết này giới thiệu cách tạo bản sao và đồng bộ dữ liệu trong SQL Server thông qua công cụ ...

Tạo bảng sao dữ liệu (replication) là công việc rất quan trọng đối với người quản trị dữ liệu, cho phép chia sẻ, phân tán, đồng bộ dữ liệu giữa các Database server. Bài viết này giới thiệu cách tạo bản sao và đồng bộ dữ liệu trong SQL Server thông qua công cụ Replication.

Mô hình Replication trong SQL Server

Một số thuật ngữ:

Publisher (nhà xuất bản): Quản lý dữ liệu nguồn, quyết định những dữ liệu nào sẽ được nhân bản (phát hành)

Distributor (nhà phân phối): Thu thập và phân phối các dữ liệu được nhân bản đến người dùng thông qua các đại lý phân phối (Distribution Agent)

Subscriber (người dùng): Người có nhu cầu dữ liệu, đăng ký sử dụng.

Kịch bản triển khai Replication trong SQL Server

02 Database Server (gọi là Server 1 và Server 2)

Trên Server 1 chứa Database để tạo bản sao, trong ví dụ này Database có tên là DB

Trên Server 2 tạo Database có tên DB_REP, dùng để đồng bộ với Database DB trên Server 1

Chú ý: Để thực hiện replication, bạn phải có 2 SQL Database Server, để đơn giản bạn có thể cài SQL Server trên cùng một máy với 2 Instances khác nhau.

Các bước thực hiện như sau:

Bước 1. Trên Server1 tạo Database có tên DB, và tạo một số bảng để minh họa. Trong ví dụ này Database DB có 2 bảng là Employees và Departments. Trên Server 2 tạo Database có tên DB_REP (không cần tạo bảng dữ liệu) để nhận bản sao dữ liệu từ Server1.

Bước 2. Đăng nhập vào SQL Server1, vào mục Replication, chọn New Publication

Chọn Next và chọn chọn Database muốn tạo bản sao

Chọn Next, chọn loại bản sao để thực hiện (Snapshot publication bản sao 1 chiều, merge publication bản sao 2 chiều)

Chọn Next và chọn các bảng dữ liệu cần tạo bản sao

Bấm Next 2 lần, muốn tạo bản sao ngay thì chọn Create a snapshot immediately, muốn lập lịch để chạy đồng bộ thì chọn Schedule… (trong ví dụ này chọn thực hiện đồng bộ ngay)

Bấm Next, chọn Security Settings để thiết lập xác thực cho phép thực thi bản sao

Bấm OK, Bấm Next 2 lần và đặt tên cho publication

Bấm Finish để hoàn tất việc tạo Publication

Bước 3. Tạo Subcription: Bấm phải chuột vào Publication vừa tạo, chọn New Subscription

Bấm Next, chọn Publication đã tạo

Bấm Next, chọn Run all agents

Bấm Next, chọn Add SQL Server Subcriber

Bấm Next, đăng nhập vào Server 2

Chọn Database đồng bộ trên Server2 (trong ví dụ này là DB_REP)

Bấm Next, Xác thực tài khoản cho Distribution Agent Security

Bấm OK, bấm Next, chọn chế độ thực hiện bản sao (liên tục, theo lịch…)

Chọn Next,  Chọn khởi tạo Subcription ngay

Bấm Next 2 lần và bấm Finish để hoàn thành việc tạo Subcription

 

Khởi tạo Subcription thành công

Bước 4. Kiểm tra kết quả thực hiện bản sao dữ liệu

Đăng nhập vào Server2, sẽ thấy các bảng dữ liệu trong Database DB trên Server1 đã được tạo bản sao trong Database DB_REP trên Server2

Đăng nhập vào Database Server1, mở bảng Employees, nhập thêm nhân viên mới

Sau khi đồng bộ, nhân viên vừa mới thêm vào đã được đồng bộ vào bảng Employees trong Database DB_REP trên Database Server2

Chú ý: Để kiểm tra dữ liệu đã được đồng bộ chưa, bấm phải chuột vào Subcription vừa tạo, chọn View Synchronization Status, chọn Monitor.

Trong hộp thoại này, bạn có khởi động hoặc kết thúc việc đồng bộ dữ liệu của các bản sao đã thiết lập.

HAVE FUN :)

Theo bis.net.vn

Tags:
0