Link Database SQL Server to SQL Server

 


Berikut adalah cara membuat link database SQL Server to SQL Server :

1. Command Prompt

Format :

USE [master]

go

-- perintah menghapus linked server jika ada

EXEC master.dbo.sp_dropserver @server=N'namalinkedservernya', @droplogins='droplogins'

go

-- perintah membuat linked server

EXEC master.dbo.sp_addlinkedserver @server = N'namalinkedservernya', @srvproduct=N'', @provider=N'SQLNCLI', @datasrc=N'namaservernya', @catalog=N'namadatabasenya'

-- perintah membuat user login linked server

EXEC master.dbo.sp_addlinkedsrvlogin @rmtsrvname=N'namalinkedservernya',@useself=N'False',@locallogin=NULL,  @rmtuser=N'usernamenya',@rmtpassword='passwordnya' 


2. GUI

Untuk membuat link database disini menggunakan contoh 2 database yaitu Database A ( dtbA ) dan Database B ( dtB ) 

2.1. Lalukan setting pada kedua Database Server ( dtA & dtB ) :

2.1.1. Buka Sql Server Configuration Manager,  pilih SQL Serfver Network --> Protocols for MSSQLSERVER,  Pastikan “Name Pipes“ Enabled. 



2.1.2. Kemudian buka SQL Server lalu   atur ke dua Database Server Autentikasi agar bisa Login dengan menggunakan Account yang lain. Klik kanan pada Database Server --> Properties



2.2. Database  B ( dtB )

2.2.1. Buat User Login pada Database B (dtB), untuk digunakan pada Database  A ( dtA ) sebagai user login. Pilih “Security --> Logins --> New Login…”



2.2.2. Pilih General.  kemudian isi nama  pada kolom “Login Name”, kemudian oilih “SQL Server authentication“, lalu masukkan user password. Hilangkan tanda Check pada “Enforce passwprd policy“, dan pilih “Default Database” yang akan dihubungkan, lalu klik OK.


2.3. Linked Database B dari Database A

2.3.1. Buka “Server Objects --> Linked Servers --> New Linked Server” 



2.3.2. Pada halaman General, Masukkan Nama Database Server pada “Linked Server“, dan pilih opsi “SQL server” untuk server Type.



2.3.3. Pada  Security, pilih “Be made using this security context“, lalu isi user login yang dibuat. kemudian klik OK



2.3.4. Kemudian akan diperlihatkan dtB di Linked Server.



2.3.5. Perintah untuk menjalankan Link database mengakses table

-- Select
SELECT * from openquery(dtB,' SELECT * FROM Employee.EmployeeDetail'')
-- update
UPDATE OPENQUERY (dtB, 'SELECT name FROM Employee.EmployeeDetail WHERE id = 101')   
SET name = 'ADifferentName'; 
-- insert
INSERT OPENQUERY (dtB, 'SELECT name FROM Employee.EmployeeDetail')  
VALUES ('NewTitle'); 
-- delete
DELETE OPENQUERY (dtB, 'SELECT name FROM jEmployee.EmployeeDetail WHERE name = ''NewTitle''');



Baca juga artikel yang berkaitan :