Linked Server

Những hướng dẫn về tạo kết nối giữa 2 server để truyền đẩy dữ liệu

MÔ HÌNH

Hiện tại có 02 phiên bản phần mềm QT và CB cài đặt ở 02 server khác nhau, cần truyền dữ liệu từ bản QT sang bản CB.

Đứng ở Server của bản CB ( đích) tạo 1 Linked Server để kết nối tới server bản QT

CÁCH THỰC HIỆN

Dùng lệnh T-sql

  1. Tạo Linked Server dùng lệnh sau thay đổi thông tin phù hợp

DECLARE @LinkedServerName NVARCHAR(100) = N'LINKED_DTECH';  -- Tên của Linked server
DECLARE @RemoteServerIP   NVARCHAR(100) = N'IP\Dtech_Express,2866'; -- Thay IP thực tế
DECLARE @RemoteUser       NVARCHAR(100) = N'sa';          
DECLARE @RemotePassword   NVARCHAR(100) = N'xxxx'; -- Thay đổi mật khẩu user sa

-- 1. Xóa nếu tồn tại
IF EXISTS (SELECT srvname FROM master.dbo.sysservers WHERE srvname = @LinkedServerName)
BEGIN
    EXEC master.dbo.sp_dropserver @server=@LinkedServerName, @droplogins='droplogins';
END

-- 2. Tạo Linked Server với SQLNCLI (Driver có sẵn phổ biến)
EXEC master.dbo.sp_addlinkedserver 
    @server = @LinkedServerName, 
    @srvproduct = N'',           
    @provider = N'SQLNCLI',    -- Đã đổi từ MSOLEDBSQL sang SQLNCLI
    @datasrc = @RemoteServerIP;

-- 3. Cấu hình Login
EXEC master.dbo.sp_addlinkedsrvlogin 
    @rmtsrvname = @LinkedServerName, 
    @useself = N'False', 
    @rmtuser = @RemoteUser, 
    @rmtpassword = @RemotePassword;

-- 4. Bật cấu hình RPC
EXEC master.dbo.sp_serveroption @server=@LinkedServerName, @optname=N'rpc', @optvalue=N'true';
EXEC master.dbo.sp_serveroption @server=@LinkedServerName, @optname=N'rpc out', @optvalue=N'true';

PRINT '--- Da tao Linked Server ' + @LinkedServerName + ' bang SQLNCLI thanh cong! ---';
  1. Kiểm tra Linked server có kết nối thành công

  1. Thực hiện cập nhật giao diện truyền đẩy dữ liệu lên có 02 lưới

Data nguồn trên giao diện cấu hình sửa lại theo cú pháp:

Dùng giao diện Manager Studio

Last updated