Sepetiniz

Database Mail Konfigurasyonu

SSMS üzerinde Management altında Database Mail’e sağ tıklayarak Configure Database Mail diyoruz. Skip this page in the future diyerek next diyoruz. Gelen ekranda Set up Database Mail by performing the following task seçili iken tekrar next diyoruz. The Database Mail is not available. Would you like to enable this feature diye bir uyarı verirse  Yes diyerek ilerliyoruz. ProfileName kısmından bir isim veriyoruz. Smtp Accounts’un sağ tarafındaki Add butonuna basıyoruz. Account Name kısmından account’umuza bir isim veriyoruz. Email Adress kısmına mail atma yetkisine sahip bir kullanıcı giriyoruz. Eposta grubunuzdan mail atma yetkisine sahip bir kullanıcı talep etmelisiniz.  Display name kısmından mail atacak kullanıcının görünecek ismini giriyoruz. Server Name kısmına kurumunuzun mail server sunucusunu girmelisiniz. Örneğin eposta.mydomain.com SMTP Authentication kısmından Basic Authentication’ı seçiyoruz. Username kısmına tekrar mail atma yetkisine sahip kullanıcının mail adresini giriyoruz ve ok’e tıklıyoruz.

 

Ok’e tıkladıktan sonra aşağıdaki ekran geliyor ve tekrar next’e tıklıyoruz.

 

Gelen ekranda aşağıdaki gibi tanımladığımız profile Public olarak set ediyoruz ve Default Profile olarak ayarlıyoruz.

 

Sonra next ve finish diyerek işlemi tamamlıyoruz.

 

Kurulumu doğru yaptığımızdan ve Database Mail’in düzgün çalıştığından emin olmak için SSMS üzerine Management altında Database Mail’e sağ tıklayarak Send Test Mail’e tıklıyoruz. Ve To kısmına mail’i kime göndereceksek onu yazıyoruz. Mail kutumuzu kontrol ederek mail’in ulaştığından emin oluyoruz.

 

 

Not: Sunucunuzun mail atabilecek sunucular listesinde olması gerekir. Kurumunuzda böyle bir kısıtlama varsa ilgili kişilerle görüşmelisiniz.

SQL Server Kurulumu

Bu makalede Stand-Alone SQL Server kurulumu yapacağız. Stand-Alone herhangi bir cluster yapısı olmadan tek bir sunucunun üzerine sadece tek bir instance kurmak anlamına gelir. SQL Server Kurulum Dosyası içindeki setup.exe’ye sağ tıklayıp Run as Administrator ya da Yönetici olarak çalıştır diyoruz. Sol taraftaki Installation sekmesine seçiyoruz ve aşağıdaki gibi New SQL Server stand-alone installation or add features to an existing installation’a tıklıyoruz.

 

 

Eğer kurulum dosyanız lisanslıysa otomatik olarak enter the product key gelir ve lisans key’i aşağıda otomatik olarak yer alır. Eğer lisanssız bir kurulum yapıyorsanız  Specify a free edition kısmından Evalution ya da Express’i seçmeniz gerekecek. Evalution Edition tüm özellikleriyle 180 gün boyunca kullanabildiğiniz sürümüdür. Express Edition ise kısıtlı özelliklerle sürekli olarak kullanabileceğiniz sürümüdür. Ben lisanslı bir kurulum yaptığım için aşağıdaki diğer seçeneği seçiyorum.

 

Bir sonraki ekranda aşağıdaki gibi I accept the licence terms’i seçmeniz gerekiyor.

 

 

Bir sonraki ekranda kurulum dosyasının update edilebilir bir sürümü varsa onu kontrol eder. Eğer mevcut dosyanın sürümü ile kurulum yapmak istiyorsanız Skip Scan demeniz yeterli.

 

 

Sonraki ekranda kurulum öncesi gereksinimleri denetliyor ve kurulum yapılıp yapılamayacağına karar veriyor.

 

 

Benim kurulumda sadece firewall ile ilgili bir uyarı verdi. Bu uyarıda aşağıdaki görüldüğü gibi firewall’umun açık olduğunu gösteriyor. Ve bazı portlar için erişimin açık olduğundan emin olmamı söylüyor.

 

 

Bir sonraki ekranda hiçbir değişiklik yapmadan  aşağıda görüldüğü haliyle geçiyoruz.

 

Bir sonraki ekrandan ihtiyacımıza göre seçim yapıyoruz. Ben genelde aşağıdaki şekilde seçim yaparak ilerliyorum.

 

 

Yukarıdaki resimdeki özellikleri aşağıda detaylı olarak bulabilirsiniz. Bu şekilde kendi ihtiyacınıza karar verebilirsiniz. İlerde ihtiyacınız olursa burada seçmediğiniz özellikleri sonradan da ekleyebilirsiniz.

 

Database Engine Services

SQL Server kurulumun kendisidir. Seçmeden veritabanı oluşturamazsınız.

SQL Server Replication

Replication yapma ihtiyacınız varsa bu seçeneği seçebilirsiniz. Replication ile ilgili detayları “SQL Server Replication Türleri” isimli makalemde bulabilirsiniz.

Full-Text and Semantic Ex…

Eğer veritabanlarınızda Full Text Search özelliğini kullanacaksınız bu seçeneğide seçmelisiniz. Full Text Search hakkındaki detayları “Fulltext Search” isimli makalemde bulabilirsiniz.

Data Quality Services

Hatalı, tekrar eden detayı temizlemek için kullanılır. Örneğin IST ve İstanbul olarak aynı kolona girilen değerlerin aynı değeri ifade etmesine rağmen istatistiklerde farklı gözükmesini engellemek için. Veritabanı Uzmanlarından ziyade İş Zekası Uzmanlarının ilgi alanına girer.

Data Quality Client

Data Quality Service’de belirttiğimiz temizleme işlemini yapabilmek için gerekli client uygulamasıdır. Veritabanı Uzmanlarından ziyade İş Zekası Uzmanlarının ilgi alanına girer.

Analysis Service

OLAP (Online Analytical Processing)  tipi sistemler için gereklidir. Veritabanı Uzmanlarından ziyade İş Zekası Uzmanlarının ilgi alanına girer.

Reporting Service

Rapor Hazırlamak için kullanılan bir tool’dur.

Data Quality Client

Data Quality Services’ı kullanmak için gerekli client tabanlı uygulamadır.

Client Tools Connectivity

Client’lar ve SQL Server arasındaki iletişim için kullanılır. Aşağıdaki bileşenleri içerir ve seçilmesi gereklidir.

OLEDB for OLAP, ODBC, ADODB, and ADOMD+

Integration Service

Datayı kopyalamak, taşımak ve dönüştürmek için kullanılır. Genellikle İş Zekası Uzmanları kullanır.

Client Tools Backwards Compatibility

SQL Distributed Management Objects (SQL-DMO) ve Decision Support Objects (DSO)’ü içerir. Bu özellikler SQL Server ve Analysis Services objelerini yönetmek için kullanılır.

Client Tools SDK

Yazılımcılar için yazılım geliştirme kiti içerir. Örneğin bu kurulumla gelen bazı class’lar web servisler içinde bir SSIS package çalıştırmak için kullanılabilir.

Documentation Components

Books Online’ı lokal olarak yüklemek isterseniz bu seçeneği seçmelisiniz.

Management Tools Basic-Complete

SQL Server’a bağlanmak için kullandığımı en temel araç olan SQL Server Managemet Studio kurulumu için bu seçenekleri seçmelisiniz. Basic seçerseniz SQL Sever Profiler, Database Engine Tuning Advisor, SQL Server Utility management kullanamazsınız. Bu özellikleri kullanmaya ihtiyacınız varsa Complete’i de seçmelisiniz.

Distributed Replay Controller

SQL Server upgrade yapacaksanız ve upgrade testlerini uygulamadan gelen gerçek isteklerle ve aynı yoğunlukta yapmak istiyorsanız bu seçeneği seçmelisiniz. Detayları “SQL Server Distributed Replay ile upgrade öncesi birden çok sunucuda test yükü oluşturmak” isimli makalemde bulabilirsiniz.

Distributed Replay Client

SQL Server upgrade yapacaksanız ve upgrade testlerini uygulamadan gelen gerçek isteklerle ve aynı yoğunlukta yapmak istiyorsanız bu seçeneği seçmelisiniz. Detayları “SQL Server Distributed Replay ile upgrade öncesi birden çok sunucuda test yükü oluşturmak” isimli makalemde bulabilirsiniz.

SQL Client Connectivity SDK

Veritabanı uygulaması geliştirmek için SQL Server Native Client (ODBC/OLE DB) içerir.

Master Data Service

İşletmelerde heterojen yapıda tutulan verilerin tek bir merkezden yönetilmesi için gereklidir.

Bir sonraki ekranda Default ya da Named seçeneği gelir. Default Instance her sunucuda bir tane kurulabilir. Default instance kurulumu sonrası SQL Server’a bağlanırken  Server Name kısmına sadece sunucu ismini yazarak SQL Server’a bağlanbilirsiniz. Named  Instance bir sunucuda birden fazla kurulabilir. Named Instance’a bağlanırken  Sunucuİsmi\Instanceİsmi şeklinde bağlanabilirsiniz. Biz örneğimizde Named Instance kuruyor ve isim olarak ta aşağıdaki gibi TESTINSTANCE veriyoruz.

 

Bir sonraki ekranda kullanıcı hesapları ve collation bilgilsi geliyor. Eğer Instance’ınız stand alone olarak çalışacaksa ve başka bir makineye bağlanmayacaksa bu şekilde bırakıp geçebilirsiniz. Ben lokal kurulum yapacaksam bile Database Engine için ve SQL Server Agent için Local System’i seçiorum ama böyle kalmasında da sıkıntı yok. Ama Always On, SQL Server Failover Cluster benzeri bir çözüm kullanacaksanız ya da Instance’ınız domaininizdeki başka sunucularla konuşacaksa burdaki hesaplar için active directory’de kullanıcı hesapları oluşturup aşağıdaki ekranda tanımlamanız gerekir. Microsoft bu tip kurulumlarda Database Engine ve Agent için farklı hesaplar kullanmayı tavsiye ediyor. Örneğin Database engine için Domainİsmi\SQLServiceAccount, Agent için Domainİsmi\SQLAgentAccount gibi..

 

 

Biz standalone kurulum yaptığımız için sadece Agent ve Database Engine için Local System’i seçip devam ediyoruz. Local system’i seçmek için Accoun Name kısmına tıklayıp browse diyerek konumlardan kendi bilgisayarınızı seçmeli  ve seçilecek nesne adı yazan yere system yazıp adları denetle demelisiniz.

Collation sekmesine gelip istediğiniz collation’ı seçmelisiniz. Server collation’ı kurulum sonrasında da değiştirebilirsiniz ama kompleks birkaç işlem gerektirir ve mevcut sisteminizde veritabanları  varsa bu işlemi yapmanız çok da kolay olmaz. Server Collation’ı değiştirmek için “Server Collation’ı değiştirmek” isimli makaleme bakabilirsiniz. Collation ile ilgili detayları öğrenmek isterseniz sitemizde arama kısmına collation yazarak detaylı bilgi edinebilirsiniz.

Bir sonraki ekranda veritabanına bağlantı şeklini ayarlayacağız. Karşımıza iki seçenek çıkacak.

Windows Authentication mode: Sadece active directory kullanıcısı ile ya da lokal sunucuda tanımlı bir windows kullanıcısı ile giriş yapılabilir. SSMS’i açmak için bağlandığınız sunucu ya da client’a hangi kullanıcı ile giriş yaptıysanız o kullanıcının SQL Server’a şifresiz bir şekilde girebilmesidir. Tabi sunucuya giriş yaptığınız kullanıcının SQL Server üzerinde yetkilendirilmiş olması gerekir. SQL Authentication ile giriş yapılamaz. SQL Authentication’da bir kullanıcı adı ve parola belirleyerek active directory ya da lokal sunucudaki kullanıcılardan bağımsız olarak SQL Server üzerinde oluşturulan bir kullanıcının sql server’a bağlanma şeklidir.

Mixed Mode: Hem windows authentication hem de sql authentication ile giriş yapılabir anlamına geliyor. Bu seçeneği seçtiğinizde aşağıdaki ekran görüntüsünde gördüğünüz gibi bir parola girmenizi ve bu parolayı onaylamanızı istiyor. Bu parola kurulacak instance’ın sa şifresi olarak belirlenecek. Biraz altta ise Specify SQL Server Administrator yazan yerde Add Current User’a tıklamanız gerekiyor. Bu işlem kurulumu yaptığınız kullanıcı için kurulacak olan instance üzerinde sysadmin(instance üzerinde herşeyi yapabilme yeteneğine sahip kullanıcı) hakkı verilmesini sağlayacak.

 

 

Next demeden önce Data Directories tab’ına geçmeniz gerekiyor.

 

Data Root Directory

SQL Server’ın kurulacağı path. Default olarak gelen değerde bırakmanızı tavsiye ederim. Tabi işletim sistemi crash olursa sistem veritabanlarınız gidecektir. Bu yüzden muhakkak backup’larınızı düzenli olarak almalı ve backup alınamadığında haberiniz olmasını sağlayan bir sistem kurmalısınız. Bazı kişilere göre Data Root Directory’i işletim sisteminden farklı bir diskte oluşturmak daha mantıklı gelebilir. Ama zamanla kullandığınız storage değişebilir ve sizin sistem veritabanlarınızı taşımanızı gerektirebilir. Bu yüzden ben burda default ayarları kullanarak geçiyorum.

User database directory

Veritabanlarınızın mdf uzantılı data dosyalarını ilk oluşturulma esnasında default olarak nerede oluşturulacağı path’in bilgisini içeriyor. Burda yazan değer yeni veritabanı oluşturma esnasında otomatik olarak gelecektir fakat veritabanı oluştururken manual değiştirme şansınız da olacak.

User database log directory

Veritabanlarınızın ldf uzantılı log dosyalarını ilk oluşturulma esnasında default olarak nerede oluşturulacağı path’in bilgisini içeriyor. Burda yazan değer yeni veritabanı oluşturma esnasında otomatik olarak gelecektir fakat veritabanı oluştururken manual değiştirme şansınız da olacak.

Temp DB directory

Tempdb’nin data dosyalarının nerede tutulacağını belirten path bilgisi

Temp DB log directory

Tempdb’nin log dosyalarının nerede tutulacağını belirten path bilgisi

Backup directory

Veritabanı backup’ı almak istediğinizde default olarak çıkacak path bilgisi

 

Aşağıda nasıl set ettiğimizi görebilirsiniz. Tabi bütün veritabanlarını default olarak bu path’lerde oluşturacağımız anlamına gelmez. Ben lokalime kurulum yaptığım için ve başka disk’im olmadığı için sadece C diskini seçtim. Microsoft data ve log dosyalarının ayrı diskte tempdb’nin ayrı diskte tutulmasını tavsiye ediyor. Ayrıca bazı veritabanları çok büyük olabilir ve daha fazla IO ihtiyacı olabilir. Bu yüzden veritabanını file group’lara ayırıp birden fazla data file oluşturup bu file’ları disklere yaymanız gerekebilir. “Veritabanı Oluşturmak” isimli makalemde ihtiyaca göre nasıl veritabanı oluşturulması gerektiği bilgisinin detaylarına ulaşabilirsiniz.

 

 

File Stream tab’ından isterseniz file stream’i enable edebilirsiniz. File Stream isimli makalemde detay bilgiye ulaşabilirsiniz.

 

SQL Server 2016 Management Studio ile bu ekranda aşağıdaki gibi tempdb konfigürasyonu da geldi.

 

Aşağıdaki gördüğünüz alanlardan tempdb file sayısını, initial size’ını, auto growth’unu data ve log dosyalarının path’lerini  ayarlayabiliyoruz.

 

Genelde sisteminizdeki cpu sayısı kadar tempdb file sayısı set etmeniz önerilir.

 

Bu şekilde birden fazla sayıda set edimiş tempdb file sayısı tempdb’de oluşabilecek contention’ın önüne geçer.

 

Çok fazla sayıda oluşturmanız da kötü yönde etki yapabilir.

 

Ben şahsen bugüne kadar 8 cpu’lu bir makine de 8 ya da 16 tane tempdb file oluşturdum ve bir sıkıntı yaşamadım.

 

Yeni aldığım bir sistemde tempdb’de ciddi anlamda bir contention yaşanıyordu ve ilk yaptığım şey tempdb file sayısını arttırmaktı. Bunun sonucunda problem çözülmüştür.

 

Aşağıda, kurulum esnasında tempdb konfigürasyonunu yapacağınız ekranı görebilirsiniz.

 

 

Next diyerek ilerliyoruz. Gelen ekranda Reporting Service konfigurasyon ekranı geliyor. Default olarak aşağıdaki gibi bırakıp ilerliyoruz.

 

 

Gelen ekran Install diyerek kurulumu tamamlıyoruz.

 

Kurulum tamamlandıktan sonra “Yeni Kurulumda yapılması gereken konfigurasyonlar” isimli makalemi okumanızı tavsiye ederim.

Yeni Kurulumda Yapılması Gereken Konfigürasyonlar

Bu makalede SQL Server Kurulumu yaptıktan sonra yapılması gereken konfigurasyonları inceleyeceğiz. Kurulumla ilgili detayı SQL Server Kurulumu ile ilgili makalemde bulabilirsiniz.

 

Öncelikle default portları set etmelisiniz.

 

SQL Server Configuration Manager’a sağ tıklayıp Yönetici olarak çalıştır diyoruz. Açılan ekranda aşağıdaki gibi SQL Server Network Configuration altında Protocols for TESTINSTACE’a tıklıyoruz. Bizim kurduğumuz instance ismi TESTINSTACE ‘tı. Sizde hangi instance’ın ayarlarını yapacaksınız onu tıklamanız gerekiyor.

 

Daha sonra sağ taraftaki TCP/IP kısmına sağ tıklayıp özellikler diyoruz. Bütün TCP Dynamic Ports kısımlarındaki 0’ı silip boş bırakıyoruz ve TCP Port kısımlarına da default olarak vermek istediğimiz portları yazıyoruz. Normalde sadece en alttaki IPALL kısmında bu işlemi yapsanız yeterli fakat daha önce bu şekilde sorun yaşayabilen bazı uygulamalarla karşılaştığım için hepsini yapmanızda fayda var.

 

 

Port konfigurasyonumuz tamamlandıktan sonra sisteminizde meydana gelebilecek herhangi bir problem anında sql server’ın sizi mail ile bilgilendirebilmesi için database mail’i konfigure etmelisiniz. Bu konfigurasyonla ilgili detayı Database Mail Konfigurasyonu isimli makalemde bulabilirsiniz. Database Mail konfigurasyonunu yaptıktan sonra aşağıdaki linkteki script’i çalıştırmalısınız. Bu script ile sql server’da oluşan bir çok sorunu kimse farketmeden yakalayabiliyorsunuz.

 

https://www.brentozar.com/blitz/configure-sql-server-alerts/

 

Yukarıdaki script’i açtıktan sonra Ctrl H’a basarak “The DBA Team” ifadesini tanımladığınız operator’e verdiğiniz isimle değiştirmeniz gerekiyor. Operator Tanımlamak isimli makalemde detayları bulabilirsiniz. Script’i çalıştırdığınızda alertleriniz tanımlanmış olacaktır.

 

Alert’lerin mail olarak gelebilmesi için SQL Server Agent’a sağ tıklayıp properties diyerek aşağıdaki ayarları yapmanız gerekiyor.

Sp_configure’ü kullanarak detaylı server konfigurasyonlarını yapmanız gerekiyor.

 

Sp_configure ile ilgili detaylara sp_configure(SQL Server’da Server Seviyesinde Konfigurasyonlar) isimli makaleden erişebilirsiniz.

 

Daha sonra da Security policy’den gerekli ayarları yapmamız gerekiyor. “secpol.msc(Security Policy SQL Server Ayarları)” isimli makalemden detaylara erişebilirsiniz.

Kurulum yaptıktan sonra SQL Server Servis Hesabının windows üzerindeki yetkilerini vermek için “SQL Server Servis Hesabının Windows Üzerindeki Yetkileri” isimli makalemi okumanızı tavsiye ederim.

Son olarak SQL Server’ın Windows üzerinde daha performanslı çalışmasını sağlamak için “SQL Server’ı Yüksek Performans’ta Çalışacak Şekilde Ayarlamak(High Performance)” isimli makalemdeki ayarı yapmanızı tavsiye ederim.

Sistem veritabanları

Master:

SQL Server Instance’ı üzerinde sistem seviyesindeki tüm bilgileri tutan veritabanıdır.

Msdb:

SQL Server Agent tarafından alertleri ve jobları zamanlamak için kullanılır.

Model:

Yeni bir veritabanı oluştururken SQL Server default ayarları model veritabanına bakarak set eder. Örneğin Veritabanı Boyutu, Collation Bilgisi, Recovery Model’i, AutoGrowth Ayarı vb.

Tempdb:

Sistem veritabanları içinde en çok değineceğimiz veritabanı tempdb. Çünkü sistemin türüne ve yoğunluğuna göre farklı konfigurasyonlar yapmak gerekiyor. Temp tabloları gibi geçici objeler oluşturduğumuz zaman bu objeler tempdb veritabanını kullanıyor. Dolayısıyla işlem yoğunluğu fazla olan bir instance üzerinde tempdb file sayısını arttırmak gerekebiliyor. Aşağıdaki linkteki script’i kullanarak hangi tempdb file’ınızın ne kadar read ve write yaptığını, read ve write’larınızın ne kadar beklediğini görebilirsiniz.

 

https://www.brentozar.com/sql/tempdb-performance-and-configuration/

 

Eğer Read ve Write’larınız 20 ms’nin üstündeyse tempdb file sayınızı arttırabilirsiniz. “Veritabanı Oluşturmak” isimli makalemde anlattığım gibi tempdb’nin auto growth seçeneğini, Initial Size’ını ayarlamanızda fayda var. Aynı makalede file sayısını nasıl arttıracağınızı da bulabilirsiniz.

 

SQL Server Instance’ından SQL Server Instance’ına bağlanacak Linked Server Tanımlamak

SQL Server’dan Oracle’a Linked server tanımlamayı ve tanımladığımız bu linked server’a yeni bir SQL Login’i yetkilendirmeyi önceki makalelerimizde anlatmıştık. Bu makalede SQL Serverdan SQL Server’a bağlanmak için Linked Server tanımlayacağız.

 

SSMS üzerinden Server Objects->Linked Server’a sağ tıklıyoruz ve new Linked Server diyoruz. Linked Server yazan yere hedef instance’ımızın adını yazıyoruz. Server Type kısmında SQL Server’ı seçiyoruz. Security tab’ına geçip Be made using the login’s current security context’i seçiyoruz. Bu seçeneği seçmemiz çok önemli. Çünkü bu seçeneği seçerek hedefte yetkili olmayan hiçbir kullanıcının bu linked server’ı kullanamamasını garantilemiş oluyoruz. Ve Ardından ok’e basarak linked server’ı oluşturmuş oluyoruz.

Ama unutmayalım ki bu linked server’ı sadece kaynak ve hedefte aynı login varsa kullanabilirsiniz. Aynı Login’den kastımız sadece isimlerinin ve şifrelerinin aynı olması değildir. Kaynaktaki ve Hedefteki Login’lerin SID leri aynı olmalıdır. Loginleri başka bir instance’a taşımak isimli makalemde SID’leri aynı olmak kavramının ne anlam ifade ettiğini görebilirsiniz.

 

 

Be made using this security context seçip remote login kısmına hedefteki sql server’da tanımlı bir login’i ve With password kısmına bu login’in şifresini girerseniz kaynaktaki tüm loginler hedefteki login’in hedef üzerinde ne yetkisi varsa erişebilir olacaktır. Yetkiler ayrılığı ilkesine aykırı olduğu için ben hiçbir linked server’ı bu şekilde tanımlamıyorum.

Örneğin TESTSUNUCU01\INSTANCE01 isimli bir instance’ımız olsun. Bu instance üzerinde xUser ve yUser isimlerinde iki adet login’imiz olsun. Bu instance üzerinden TESTSUNUCU02\Instance01 instance’ına linked server tanımlayalım.

TESTSUNUCU02\Instance01 Instance’ına da sadece xUser isimli login’imizi taşıyalım. Loginleri başka bir instance’a taşımak ile ilgili makalemi okuyabilirsiniz. TESTSUNUCU02\Instance01 Instance’ında deneme isimli bir veritabanı oluşturalım ve içinde Table1 isimli bir tablo oluşturup birkaç test verisi girelim. Veritabanı oluşturmak ile ilgili makalemden faydalanabilirsiniz. xUser’a bu veritabanında select hakkı verelim.  Yukarıda anlattığım şekilde linked server’ı TESTSUNUCU01\INSTANCE01 Instace’ı üzerinde tanımlayalım. Tanımlarken de be made using the login’s current security context’i seçelim.  Bu şekilde tanımlamaları yaptıktan sonra eğer xUser ile TESTSUNUCU01\INSTANCE01 connect olursanız aşağıdaki şekilde linked server’ı çalıştımak istediğinizde veriler gelecektir.

Select * From Openquery ([TESTSUNUCU02\Instance01],'select * From deneme.dbo.Table1')

Ama TESTSUNUCU01\INSTANCE01 Instance’ına yUser ile bağlandığınız takdirde linked server’ı kullanamayacaksınız. Çünkü hedefte yUser isimli bir kullanıcı tanımlamadık.

 

Eğer linked server’ı tanımlarken Be made using this security context seçip remote login kısmına hedefte tanımladığımız xUser’ı ve With password kısmına xUser’ın şifresini girerek tanımlasaydık TESTSUNUCU01\INSTANCE01 Instance’ına yUser ile bağlandığımız da linked server’ı kullanabilecektik. Çok güvenli bir yöntem olmasada böyle bir duruma ihtiyaç olabilecek durumlar da olabilir.