Enable Stretch Database for a databaseEnable Stretch Database for a database

이 항목은 다음에 적용됩니다. 예SQL Server(2016부터 시작)아니요Azure SQL 데이터베이스아니요Azure SQL 데이터 웨어하우스아니요병렬 데이터 웨어하우스THIS TOPIC APPLIES TO: yesSQL Server (starting with 2016)noAzure SQL DatabasenoAzure SQL Data Warehouse noParallel Data Warehouse

Stretch Database에 기존 데이터베이스를 구성하려면 SQL Server Management Studio에서 데이터베이스에 대해 태스크 | 스트레치 | 사용을 선택하여 스트레치에 데이터베이스 사용 마법사를 엽니다.To configure an existing database for Stretch Database, select Tasks | Stretch | Enable for a database in SQL Server Management Studio to open the Enable Database for Stretch wizard. Transact-SQL을 사용하여 데이터베이스에서 스트레치 데이터베이스를 활성화할 수도 있습니다.You can also use Transact-SQL to enable Stretch Database for a database.

개별 테이블에 대해 태스크 | 스트레치 | 사용 선택하고 스트레치 데이터베이스에 데이터베이스를 사용하도록 설정하지 않은 경우에는 마법사가 스트레치 데이터베이스에 데이터베이스를 구성하고 그 과정에서 사용자가 테이블을 선택하도록 합니다.If you select Tasks | Stretch | Enable for an individual table, and you have not yet enabled the database for Stretch Database, the wizard configures the database for Stretch Database and lets you select tables as part of the process. Enable Stretch Database for a table의 단계 대신 이 항목의 단계를 따릅니다.Follow the steps in this topic instead of the steps in Enable Stretch Database for a table.

데이터베이스 또는 테이블에서 스트레치 데이터베이스를 활성화하려면 db_owner 사용 권한이 필요합니다.Enabling Stretch Database on a database or a table requires db_owner permissions. 데이터베이스에서 스트레치 데이터베이스를 활성화하려면 CONTROL DATABASE 사용 권한도 필요합니다.Enabling Stretch Database on a database also requires CONTROL DATABASE permissions.

참고

나중에 Stretch Database를 사용하지 않도록 설정하려는 경우 테이블 또는 데이터베이스에서 Stretch Database를 사용하지 않도록 설정하면 원격 개체가 삭제되지 않습니다.Later, if you disable Stretch Database, remember that disabling Stretch Database for a table or for a database does not delete the remote object. 원격 테이블 또는 원격 데이터베이스를 삭제하려면 Azure 관리 포털을 사용하여 삭제해야 합니다.If you want to delete the remote table or the remote database, you have to drop it by using the Azure management portal. 원격 개체는 수동으로 삭제할 때까지 Azure 비용이 계속해서 발생합니다.The remote objects continue to incur Azure costs until you delete them manually.

시작하기 전에Before you get started

필수 조건: 서버에서 스트레치 데이터베이스 사용Prerequisite: Enable Stretch Database on the server

데이터베이스 또는 테이블에서 스트레치 데이터베이스를 활성화하기 전에 로컬 서버에서 스트레치 데이터베이스를 먼저 활성화해야 합니다.Before you can enable Stretch Database on a database or a table, you have to enable it on the local server. 이 작업에는 sysadmin 또는 serveradmin 권한이 필요합니다.This operation requires sysadmin or serveradmin permissions.

  • 필요한 관리 권한이 있으면 스트레치에 데이터베이스 사용 마법사가 스트레치에 사용할 서버를 구성합니다.If you have the required administrative permissions, the Enable Database for Stretch wizard configures the server for Stretch .

  • 필요한 권한이 없는 경우에는 마법사를 실행하기 전에 관리자가 sp_configure 를 실행하여 수동으로 옵션을 사용하도록 설정하거나 관리자가 마법사를 실행해야 합니다.If you don't have the required permissions, an administrator has to enable the option manually by running sp_configure before you run the wizard, or an administrator has to run the wizard.

    서버에서 스트레치 데이터베이스를 수동으로 사용하도록 설정하려면 sp_configure 를 실행하고 원격 데이터 보관 옵션을 설정합니다.To enable Stretch Database on the server manually, run sp_configure and turn on the remote data archive option. 다음 예에서는 값을 1로 설정하여 remote data archive 옵션을 활성화합니다.The following example enables the remote data archive option by setting its value to 1.

EXEC sp_configure 'remote data archive' , '1';  
GO

RECONFIGURE;  
GO  

자세한 내용은 원격 데이터 보관 서버 구성 옵션 구성sp_configure(Transact-SQL)를 참조하세요.For more info, see Configure the remote data archive Server Configuration Option and sp_configure (Transact-SQL).

마법사를 사용하여 데이터베이스에서 Stretch Database 활성화Use the wizard to enable Stretch Database on a database

입력해야 하는 정보와 선택해야 하는 항목을 포함하여 스트레치에 데이터베이스 사용 마법사에 대한 자세한 내용은 스트레치에 데이터베이스 사용 마법사를 실행하여 시작을 참조하세요.For info about the Enable Database for Stretch Wizard, including the info that you have to enter and the choices that you have to make, see Get started by running the Enable Database for Stretch Wizard.

Transact-SQL을 사용하여 데이터베이스에서 스트레치 데이터베이스 활성화Use Transact-SQL to enable Stretch Database on a database

개별 테이블에서 스트레치 데이터베이스를 활성화할 수 있으려면 데이터베이스에서 스트레치 데이터베이스를 먼저 활성화해야 합니다.Before you can enable Stretch Database on individual tables, you have to enable it on the database.

데이터베이스 또는 테이블에서 스트레치 데이터베이스를 활성화하려면 db_owner 사용 권한이 필요합니다.Enabling Stretch Database on a database or a table requires db_owner permissions. 데이터베이스에서 스트레치 데이터베이스를 활성화하려면 CONTROL DATABASE 사용 권한도 필요합니다.Enabling Stretch Database on a database also requires CONTROL DATABASE permissions.

  1. 시작하기 전에 스트레치 데이터베이스가 마이그레이션하는 데이터의 기존 Azure 서버를 선택하거나 새 Azure 서버를 만듭니다.Before you begin, choose an existing Azure server for the data that Stretch Database migrates, or create a new Azure server.

  2. Azure 서버에서 SQL Server가 원격 서버와 통신이 가능하도록 하는 SQL Server의 IP 주소 범위로 방화벽 규칙을 만듭니다.On the Azure server, create a firewall rule with the IP address range of the SQL Server that lets SQL Server communicate with the remote server.

    SSMS(SQL Server Management Studio)의 개체 탐색기에서 Azure 서버에 연결을 시도하여 필요한 값을 쉽게 찾고 방화벽 규칙을 만들 수 있습니다.You can easily find the values you need and create the firewall rule by attempting to connect to the Azure server from Object Explorer in SQL Server Management Studio (SSMS). SSMS를 사용하면 필요한 IP 주소 값이 이미 포함된 다음 대화 상자를 열어 규칙을 만들 수 있습니다.SSMS helps you to create the rule by opening the following dialog box which already includes the required IP address values.

    스트레치용 방화벽 규칙

  3. 스트레치 데이터베이스용으로 SQL Server 데이터베이스를 구성하려면, 데이터베이스에 데이터베이스 마스터 키가 있어야 합니다.To configure a SQL Server database for Stretch Database, the database has to have a database master key. 데이터베이스 마스터 키는 스트레치 데이터베이스가 원격 데이터베이스에 연결하기 위해 사용하는 자격 증명을 보호합니다.The database master key secures the credentials that Stretch Database uses to connect to the remote database. 새 데이터베이스 마스터 키를 만드는 예제는 다음과 같습니다.Here's an example that creates a new database master key.

    USE <database>; 
    GO  
    
    CREATE MASTER KEY ENCRYPTION BY PASSWORD='<password>'; 
    GO
    

    데이터베이스 마스터 키에 대한 자세한 내용은 CREATE MASTER KEY(Transact-SQL)데이터베이스 마스터 키 만들기를 참조하세요.For more info about the database master key, see CREATE MASTER KEY (Transact-SQL) and Create a Database Master Key.

  4. Stretch Database용으로 데이터베이스를 구성하는 경우 온-프레미스 SQL Server와 원격 Azure 서버 간의 통신에 사용할 Stretch Database용 자격 증명을 제공해야 합니다.When you configure a database for Stretch Database, you have to provide a credential for Stretch Database to use for communication between the on premises SQL Server and the remote Azure server. 두 가지 옵션이 있습니다.You have two options.

    • 관리자 자격 증명을 제공할 수 있습니다.You can provide an administrator credential.

      • 마법사를 사용하여 스트레치 데이터베이스를 활성화하면, 그 때 자격 증명을 만들 수 있습니다.If you enable Stretch Database by running the wizard, you can create the credential at that time.

      • ALTER DATABASE를 실행하여 스트레치 데이터베이스를 사용하도록 설정하려는 경우 ALTER DATABASE 를 실행하여 스트레치 데이터베이스를 사용하도록 설정하기 전에 수동으로 자격 증명을 만들어야 합니다.If you plan to enable Stretch Database by running ALTER DATABASE, you have to create the credential manually before you run ALTER DATABASE to enable Stretch Database.

      새 자격 증명을 만드는 예제는 다음과 같습니다.Here's an example that creates a new credential.

      CREATE DATABASE SCOPED CREDENTIAL <db_scoped_credential_name>  
          WITH IDENTITY = '<identity>' , SECRET = '<secret>' ;
      GO   
      

      자격 증명에 대한 자세한 내용은 CREATE DATABASE SCOPED CREDENTIAL(Transact-SQL)을 참조하세요.For more info about the credential, see CREATE DATABASE SCOPED CREDENTIAL (Transact-SQL). 자격 증명을 만들려면 ALTER ANY CREDENTIAL 권한이 필요합니다.Creating the credential requires ALTER ANY CREDENTIAL permissions.

    • 다음 조건이 모두 참인 경우 원격 Azure 서버와 통신하기 위해 SQL Server용 페더레이션된 서비스 계정을 사용할 수 있습니다.You can use a federated service account for the SQL Server to communicate with the remote Azure server when the following conditions are all true.

      • SQL Server 인스턴스를 실행하는 서비스 계정은 도메인 계정입니다.The service account under which the instance of SQL Server is running is a domain account.

      • 이 도메인 계정은 Active Directory가 Azure Active Directory와 페더레이션된 도메인에 속합니다.The domain account belongs to a domain whose Active Directory is federated with Azure Active Directory.

      • 원격 Azure 서버는 Azure Active Directory 인증을 지원하도록 구성됩니다.The remote Azure server is configured to support Azure Active Directory authentication.

      • SQL Server 인스턴스를 실행하는 서비스 계정은 원격 Azure 서버에서 dbmanager 또는 sysadmin 계정으로 구성되어야 합니다.The service account under which the instance of SQL Server is running must be configured as a dbmanager or sysadmin account on the remote Azure server.

  5. 스트레치 데이터베이스용으로 데이터베이스를 구성하려면 ALTER DATABASE 명령을 실행합니다.To configure a database for Stretch Database, run the ALTER DATABASE command.

    1. SERVER 인수에 대해 기존 Azure 서버의 이름을 이름의 .database.windows.net 부분을 포함하여 제공합니다(예: MyStretchDatabaseServer.database.windows.net).For the SERVER argument, provide the name of an existing Azure server, including the .database.windows.net portion of the name - for example, MyStretchDatabaseServer.database.windows.net.

    2. CREDENTIAL 인수와 기존 관리자 자격 증명을 제공하거나 FEDERATED_SERVICE_ACCOUNT = ON을 지정합니다.Provide an existing administrator credential with the CREDENTIAL argument, or specify FEDERATED_SERVICE_ACCOUNT = ON. 다음 예에서는 기존 자격 증명을 제공합니다.The following example provides an existing credential.

    ALTER DATABASE <database name>  
        SET REMOTE_DATA_ARCHIVE = ON  
            (  
                SERVER = '<server_name>' ,  
                CREDENTIAL = <db_scoped_credential_name>  
            ) ;  
    GO
    

다음 단계Next steps

참고 항목See Also

스트레치 데이터베이스 관리자를 실행하여 스트레치 데이터베이스용 데이터베이스 및 테이블 식별 Identify databases and tables for Stretch Database by running Stretch Database Advisor
ALTER DATABASE SET 옵션(Transact-SQL)ALTER DATABASE SET Options (Transact-SQL)