Örnek: Windows kimlik doğrulamasını kullanarak veritabanı yansıtmayı yapılandırma (Transact-SQL)

Şunlar için geçerlidir: SQL Server

Bu örnek, Windows Kimlik Doğrulaması kullanarak bir tanıkla veritabanı yansıtma oturumu oluşturmak için gereken tüm aşamaları gösterir. Bu konudaki örneklerde Transact-SQL kullanılır. Transact-SQL adımları kullanmaya alternatif olarak, veritabanı yansıtma kurulumu için Veritabanı Yansıtma Güvenliğini Yapılandırma Sihirbazı'nı kullanabileceğinizi unutmayın. Daha fazla bilgi için bkz. Windows Kimlik Doğrulaması Kullanarak Veritabanı Yansıtma Oturumu Oluşturma (SQL Server Management Studio).

Ön koşul

Örnekte varsayılan olarak basit kurtarma modelini kullanan AdventureWorks örnek veritabanı kullanılmaktadır. Veritabanı yansıtmasını bu veritabanıyla kullanmak için tam kurtarma modelini kullanacak şekilde değiştirmeniz gerekir. Bunu Transact-SQL yapmak için deyimini ALTER DATABASE aşağıdaki gibi kullanın:

USE master;  
GO  
ALTER DATABASE AdventureWorks   
SET RECOVERY FULL;  
GO  

SQL Server Management Studio'da kurtarma modelini değiştirme hakkında bilgi için bkz. Veritabanının Kurtarma Modelini Görüntüleme veya Değiştirme (SQL Server).

İzinler

Veritabanı üzerinde ALTER izni ve CREATE ENDPOINT izni ya da sysadmin sabit sunucu rolünün üyesi olmayı gerektirir.

Example

Bu örnekte, iki iş ortağı ve tanık üç bilgisayar sisteminde varsayılan sunucu örnekleridir. Üç sunucu örneği aynı Windows etki alanını çalıştırır, ancak örneğin tanık sunucu örneği için kullanıcı hesabı (başlangıç hizmeti hesabı olarak kullanılır) farklıdır.

Aşağıdaki tabloda bu örnekte kullanılan değerler özetlemektedir.

İlk yansıtma rolü Konak sistemi Domain kullanıcı hesabı
Başgörevli PARTNERHOST1 <Mydomain>\<dbousername>
Mirror PARTNERHOST5 <Mydomain>\<dbousername>
Witness WITNESSHOST4 <Somedomain>\<witnessuser>
  1. Asıl sunucu örneğinde bir uç nokta oluşturun (PARTNERHOST1'da varsayılan örnek).

    CREATE ENDPOINT Endpoint_Mirroring  
        STATE=STARTED   
        AS TCP (LISTENER_PORT=7022)   
        FOR DATABASE_MIRRORING (ROLE=PARTNER)  
    GO  
    --Partners under same domain user; login already exists in master.  
    --Create a login for the witness server instance,  
    --which is running as Somedomain\witnessuser:  
    USE master ;  
    GO  
    CREATE LOGIN [Somedomain\witnessuser] FROM WINDOWS ;  
    GO  
    -- Grant connect permissions on endpoint to login account of witness.  
    GRANT CONNECT ON ENDPOINT::Endpoint_Mirroring TO [Somedomain\witnessuser];  
    --Grant connect permissions on endpoint to login account of partners.  
    GRANT CONNECT ON ENDPOINT::Endpoint_Mirroring TO [Mydomain\dbousername];  
    GO  
    
  2. Yansıtma sunucusu örneğinde bir uç nokta oluşturun (PARTNERHOST5'da varsayılan örnek).

    CREATE ENDPOINT Endpoint_Mirroring  
        STATE=STARTED   
        AS TCP (LISTENER_PORT=7022)   
        FOR DATABASE_MIRRORING (ROLE=ALL)  
    GO  
    --Partners under same domain user; login already exists in master.  
    --Create a login for the witness server instance,  
    --which is running as Somedomain\witnessuser:  
    USE master ;  
    GO  
    CREATE LOGIN [Somedomain\witnessuser] FROM WINDOWS ;  
    GO  
    --Grant connect permissions on endpoint to login account of witness.  
    GRANT CONNECT ON ENDPOINT::Endpoint_Mirroring TO [Somedomain\witnessuser];  
    --Grant connect permissions on endpoint to login account of partners.  
    GRANT CONNECT ON ENDPOINT::Endpoint_Mirroring TO [Mydomain\dbousername];  
    GO  
    
  3. Tanık sunucu örneğinde bir uç nokta oluşturun (WITNESSHOST4'da varsayılan örnek).

    CREATE ENDPOINT Endpoint_Mirroring  
        STATE=STARTED   
        AS TCP (LISTENER_PORT=7022)   
        FOR DATABASE_MIRRORING (ROLE=WITNESS)  
    GO  
    --Create a login for the partner server instances,  
    --which are both running as Mydomain\dbousername:  
    USE master ;  
    GO  
    CREATE LOGIN [Mydomain\dbousername] FROM WINDOWS ;  
    GO  
    --Grant connect permissions on endpoint to login account of partners.  
    GRANT CONNECT ON ENDPOINT::Endpoint_Mirroring TO [Mydomain\dbousername];  
    GO  
    
  4. Yansıtma veritabanını oluşturun. Daha fazla bilgi için bkz. Yansıtma Veritabanını Yansıtma için Hazırlama (SQL Server).

  5. PARTNERHOST5'da yansıtma sunucusu örneğinde, PARTNERHOST1 üzerindeki sunucu örneğini iş ortağı olarak ayarlayın (bu, ilk asıl sunucu örneği olur).

    ALTER DATABASE AdventureWorks   
        SET PARTNER =   
        'TCP://PARTNERHOST1.COM:7022'  
    GO  
    
  6. PARTNERHOST1 üzerindeki asıl sunucu örneğinde, PARTNERHOST5'da sunucu örneğini iş ortağı olarak ayarlayın (bu, ilk yansıtma sunucusu örneği olur).

    ALTER DATABASE AdventureWorks   
        SET PARTNER = 'TCP://PARTNERHOST5.COM:7022'  
    GO  
    
  7. Asıl sunucuda tanığı ayarlayın (WITNESSHOST4 üzerindedir).

    ALTER DATABASE AdventureWorks   
        SET WITNESS =   
        'TCP://WITNESSHOST4.COM:7022'  
    GO  
    

İlgili Görevler

Ayrıca Bkz.

ALTER DATABASE (Transact-SQL)
Veritabanı Yansıtma Uç Noktası (SQL Server)
Veritabanı Yansıtma ve Her Zaman Açık Kullanılabilirlik Grupları için Aktarım Güvenliği (SQL Server)
Veritabanını Başka Bir Sunucu Örneğinde Kullanılabilir Hale Getirirken Meta Verileri Yönetme (SQL Server)
SQL Server Veritabanı Motoru ve Azure SQL Veritabanı için Güvenlik Merkezi