SQL Linked Server Kullanımı

SQL Linked Server Kullanımı

MS SQL ile başka bir Serverde bulanan Database Select ile görüntülemek için veya kendi tablolarınız ile join yapmak, kendi tablonuzda olup burada bulunmayan verileri bulmak, buradaki veriler ile kendi verilerinizi birarada kullanmak isterseniz, iki veya daha fazla server arasında iletişim kurabilmek için SQL Linked Server ile bağlantı kurabilirsiniz. Üstelik Oracle, Access vb. başka veritabanlarına da bağlantı kurabilirsiniz.

MS SQL de aynı serverda olan databaselere yetkiniz varsa zaten ulaşabilirsiniz.

Örneğin aynı serverda Firma1 ve Firma2 isiminde 2 ayrı veritabanı varsa,

SQL Server Management dan

Use Firma1

komutu ile Firma1 aktif database yapılır.

Select * From [Firma2].dbo.[Muhasebe]

komutu ile Firma2 databasesinde bulunan Muhasebe tablosuna yetkiniz varsa erişebilirsiniz.

Ancak Firma3 isminde başka serverde bulunan bir Database varsa buna erişmek için bu Servera logon olmak gerekir. Bulunduğunuz SQL Management den buraya gelebilmek için Logon olmak yani kullanıcı adı ve şifresini bilmek ve bununla gelmek gerekir. Bu durumda Select ifadesi veya SQL ifadeleri ile kullanıcı bilgisi gönderilmez. Çözüm ise linked Server ekleyerek SQL Server login bilgilerini kayıt etmektir. Böylece linked Server sayesinde başka serverlara erişebiliriz.

Bunun için öncelikle Linked Server tanımı yapılmalı.

1-Server Objects

2-Linked Servers

Server Objects

 

3-New Linked Servers

 New Linked Servers

4-Security sekmesinden Login kullanıcı adı ve şifre tanımı yapılır.

Linked Server Security Ayarı

Linked Server tanımı yapıldıktan sonra tanımlı servera artık TSQL komutları ile erişebilinir.

Select * From [10.10.10.100].FIRMA3.dbo.TABLOADI

Bulunduğumuz serverda bulunan tablolar ile Link tanımlanmış serverda bulunan tablolar arasında sorgu aşağıdaki gibi yapılabilir.

Select From [Firma2].dbo.[Muhasebe] AS A1
Inner Join [10.10.10.100].FIRMA3.dbo.TABLOADI AS A2 ON A1.ID=A2.ID


İlgili Yazılar