데이터베이스 복사 마법사 사용Use the Copy Database Wizard

데이터베이스 복사 마법사는 서버 가동을 중지시키지 않고 데이터베이스 및 특정 서버 개체를 한 SQL ServerSQL Server 인스턴스에서 다른 인스턴스로 이동하거나 복사합니다.The Copy Database Wizard moves or copies databases and certain server objects easily from one instance of SQL ServerSQL Server to another instance, with no server downtime. 이 마법사를 사용하여 다음을 수행할 수 있습니다.By using this wizard, you can do the following:

  • 원본 서버 및 대상 서버 선택Pick a source and destination server.

  • 이동하거나 복사할 데이터베이스 선택Select database(s) to move or copy.

  • 데이터베이스의 파일 위치 지정Specify the file location for the database(s).

  • 대상 서버에 대한 로그인 복사Copy logins to the destination server.

  • 지원 개체, 작업, 사용자 정의 저장 프로시저 및 오류 메시지를 추가로 복사Copy additional supporting objects, jobs, user-defined stored procedures, and error messages.

  • 데이터베이스 이동 또는 복사 일정 예약Schedule when to move or copy the database(s).

제한 사항 Limitations and restrictions

  • Express Edition에서는 데이터베이스 복사 마법사를 사용할 수 없습니다.The Copy Database Wizard is not available in the Express edition.

  • 다음 데이터베이스는 데이터베이스 복사 마법사를 사용하여 이동하거나 복사할 수 없습니다.The Copy Database Wizard cannot be used to copy or move databases that:

    • 시스템 데이터베이스Are System.

    • 복제용 데이터베이스Are marked for replication.

    • 액세스 불가, 로드 중, 오프라인, 복구 중으로 표시되거나 응급 모드인 데이터베이스Are marked Inaccessible, Loading, Offline, Recovering, Suspect, or in Emergency Mode.

    • Microsoft Azure storage에 데이터 또는 로그 파일이 저장된 데이터베이스Have data or log files stored in Microsoft Azure storage.

  • 이전 버전의 SQL Server로는 데이터베이스를 이동하거나 복사할 수 없습니다.A database cannot be moved or copied to an earlier version of SQL Server.

  • 이동 옵션을 선택하면 마법사가 데이터베이스를 이동한 후 자동으로 원본 데이터베이스를 삭제합니다.If you select the Move option, the wizard deletes the source database automatically after moving the database. 복사 옵션을 선택하면 데이터베이스 복사 마법사에서 원본 데이터베이스를 삭제하지 않습니다.The Copy Database Wizard does not delete a source database if you select the Copy option. 또한 선택한 서버 개체는 대상으로 이동되지 않고 복사됩니다. 데이터베이스 개체만 실제로 이동됩니다.In addition, selected server objects are copied rather than moved to the destination; the database is the only object that is actually moved.

  • SMO( SQL ServerSQL Server Management Objects) 방법을 사용하여 전체 텍스트 카탈로그를 이동하는 경우 이동 후에 인덱스를 다시 채워야 합니다.If you use the SQL ServerSQL Server Management Object method to move the full-text catalog, you must repopulate the index after the move.

  • 분리 및 연결 방법은 데이터베이스를 분리하고 데이터베이스 파일(.mdf, .ndf, .ldf)을 이동하거나 복사한 다음 새 위치에서 데이터베이스를 다시 연결합니다.The detach and attach method detaches the database, moves or copies the database .mdf, .ndf, .ldf files and reattaches the database in the new location. 분리 및 연결 방법의 경우 데이터 손실이나 불일치가 발생하지 않도록 하려면 활성 세션을 이동 또는 복사 중인 데이터베이스에 연결하면 안 됩니다.For the detach and attach method, to avoid data loss or inconsistency, active sessions cannot be attached to the database being moved or copied. SMO( SQL ServerSQL Server Management Objects) 방법에서는 데이터베이스가 결코 오프라인 상태가 되지 않으므로 활성 세션이 허용됩니다.For the SQL ServerSQL Server Management Object method, active sessions are allowed because the database is never taken offline.

  • 대상 서버에 존재하지 않는 데이터베이스를 참조하는 SQL Server 에이전트를 전송하면 전체 작업이 실패합니다.Transferring SQL Server Agent jobs which reference databases that do not already exist on the destination server will cause the entire operation to fail. 마법사는 데이터베이스를 만들기 전에 SQL Server 에이전트 작업을 만들려고 합니다.The Wizard attempts to create a SQL Server Agent job prior to creating the database. 해결 방법:As a workaround:

    1. 대상 서버에서 복사 또는 이동할 데이터베이스와 동일한 이름의 셸 데이터베이스를 만듭니다.Create a shell database on the destination server with the same name as the database to be copied or moved. 데이터베이스 만들기를 참조하세요.See Create a Database.

    2. 대상 데이터베이스 구성 페이지에서 대상 서버에서 이름이 같은 데이터베이스를 삭제한 다음 데이터베이스 전송을 계속하여 기존 데이터베이스 파일을 덮어씁니다.를 선택합니다.From the Configure Destination Database page select Drop any database on the destination server with the same name, then continue with the database transfer, overwriting existing database files.

중요!!IMPORTANT!! 분리 및 연결 방법은 원본 및 대상 데이터베이스 소유권을 데이터베이스 복사 마법사를 실행 중인 로그인으로 설정합니다.The detach and attach method will cause the source and destination database ownership to become set to the login executing the Copy Database Wizard. 데이터베이스 소유권을 변경하려면 ALTER AUTHORIZATION(Transact-SQL) 을 참조하세요.See ALTER AUTHORIZATION (Transact-SQL) to change the ownership of a database.

필수 구성 요소 Prerequisites

  • 대상 서버에서 SQL Server 에이전트가 시작되었는지 확인합니다.Ensure that SQL Server Agent is started on the destination server.

  • 대상 서버에서 원본 서버의 데이터 및 로그 파일 디렉터리에 연결할 수 있는지 확인합니다.Ensure the data and log file directories on the source server can be reached from the destination server.

  • 분리 및 연결 방법을 사용할 경우 SSIS 하위 시스템용 SQL Server 에이전트 프록시가 원본 및 대상 서버의 파일 시스템에 대한 액세스 자격 증명이 있는 대상 서버에 존재해야 합니다.Under the detach and attach method, a SQL Server Agent Proxy for the SSIS subsystem must exist on the destination server with a credential that can access the file system of both the source and destination servers. 프록시에 대한 자세한 내용은 SQL Server 에이전트 프록시 만들기를 참조하세요.For more information on proxies, see Create a SQL Server Agent Proxy.

중요!!IMPORTANT!! 분리 및 연결 방법을 사용할 경우 Integration Services 프록시 계정을 사용하지 않으면 복사 또는 이동 프로세스가 실패합니다.Under the detach and attach method, the copy or move process will fail if an Integration Services Proxy account is not used. 특정 상황에서는 원본 데이터베이스가 원본 서버에 다시 연결되지 않고 모든 NTFS 보안 권한이 데이터 및 로그 파일에서 제거됩니다.Under certain situations the source database will not become re-attached to the source server and all NTFS security permissions will be stripped from the data and log files. 이 경우 파일로 이동하여 관련 사용 권한을 다시 적용하고 SQL Server의 인스턴스에 데이터베이스를 다시 연결합니다.If this happens, navigate to your files, re-apply the relevant permissions, and then re-attach the database to your instance of SQL Server.

권장 사항 Recommendations

사용 권한 Permissions

원본 서버와 대상 서버 모두에서 sysadmin 고정 서버 역할의 멤버여야 합니다.You must be a member of the sysadmin fixed server role on both the source and destination servers.

데이터베이스 복사 마법사 페이지 The Copy Database wizard pages

SQL Server Management Studio의 데이터베이스 복사 마법사 를 시작합니다. 개체 탐색기 에서 데이터베이스를 확장합니다.Launch the Copy Database Wizard in SQL Server Management Studio from Object Explorer and expand Databases. 그런 다음 데이터베이스를 마우스 오른쪽 단추로 클릭한 다음 태스크를 선택하고 데이터베이스 복사를 클릭합니다.Then right-click a database, point to Tasks, and then click Copy Database. 데이터베이스 복사 마법사 시작 페이지가 표시되면 다음을 클릭합니다.If the Welcome to the Copy Database Wizard splash page appears, click Next.

원본 서버 선택Select a source server

이동 또는 복사하려는 데이터베이스가 있는 서버를 지정하고 로그인 정보를 입력하는 데 사용됩니다.Used to specify the server with the database to move or copy, and to enter login information. 인증 방법을 선택하고 로그인 정보를 입력한 후 다음 을 클릭하여 원본 서버에 연결합니다.After you select the authentication method and enter login information, click Next to establish the connection to the source server. 이 연결은 해당 세션 동안 열린 상태로 유지됩니다.This connection remains open throughout the session.

  • 원본 서버Source server
    이동 또는 복사하려는 데이터베이스가 있는 서버의 이름을 식별하는 데 사용됩니다.Used to identify the name of the server on which the database(s) you want to move or copy is located. 수동으로 입력하거나 줄임표를 클릭하여 원하는 서버로 이동합니다.Manually enter, or click the ellipsis to navigate to the desired server. 서버는 SQL Server 2005 이상이어야 합니다.The server must be at least SQL Server 2005.

  • Windows 인증 사용Use Windows Authentication
    사용자가 Microsoft Windows 사용자 계정을 통해 연결하도록 합니다.Allows a user to connect through a Microsoft Windows user account.

  • SQL Server 인증 사용Use SQL Server Authentication
    사용자가 SQL Server 인증 사용자 이름 및 암호를 제공하여 연결하도록 합니다.Allows a user to connect by providing a SQL Server Authentication user name and password.

    • 사용자 이름User name
      연결할 사용자 이름을 입력하는 데 사용됩니다.Used to enter the user name to connect with. 이 옵션은 SQL Server 인증을 사용하여 연결하도록 선택한 경우에만 사용할 수 있습니다.This option is only available if you have selected to connect using SQL Server Authentication.

    • 암호Password
      로그인 암호를 입력하는 데 사용됩니다.Used to enter the password for the login. 이 옵션은 SQL Server 인증을 사용하여 연결하도록 선택한 경우에만 사용할 수 있습니다.This option is only available if you have selected to connect using SQL Server Authentication.

대상 서버 선택Select a destination server

데이터베이스를 이동 또는 복사할 서버를 지정하는 데 사용됩니다.Used to specify the server where the database will be moved or copied to. 원본 서버와 대상 서버를 동일한 서버 인스턴스로 설정하면 데이터베이스 복사본이 생성됩니다.If you set the source and destination servers to the same server instance, you will make a copy of the database. 이 경우 이 마법사에서 나중에 데이터베이스의 이름을 바꿔야 합니다.In this case you must rename the database at a later point in the wizard. 원본 데이터베이스 이름은 대상 서버에 있는 이름과 충돌하지 않는 경우에만 복사되거나 이동된 데이터베이스에 사용할 수 있습니다.The source database name can be used for the copied or moved database only if name conflicts do not exist on the destination server. 이름 충돌이 있을 때는 먼저 대상 서버에서 수동으로 이 문제를 해결해야 원본 데이터베이스 이름을 대상 서버에서 사용할 수 있습니다.If name conflicts exist, you must resolve them manually on the destination server before you can use the source database name there.

  • 대상 서버Destination server
    이동 또는 복사하려는 데이터베이스가 있는 서버의 이름을 식별하는 데 사용됩니다.Used to identify the name of the server to which the database(s) you want to move or copy to is located. 수동으로 입력하거나 줄임표를 클릭하여 원하는 서버로 이동합니다.Manually enter, or click the ellipsis to navigate to the desired server. 서버는 SQL Server 2005 이상이어야 합니다.The server must be at least SQL Server 2005.

    참고 클러스터형 서버인 대상을 사용할 수 있습니다. 그러나 데이터베이스 복사 마법사를 사용하면 클러스터형 대상 서버에서 공유 드라이브만 선택할 수 있습니다.NOTE You can use a destination that is a clustered server; the Copy Database Wizard will make sure you select only shared drives on a clustered destination server.

  • Windows 인증 사용Use Windows Authentication
    사용자가 Microsoft Windows 사용자 계정을 통해 연결하도록 합니다.Allows a user to connect through a Microsoft Windows user account.

  • SQL Server 인증 사용Use SQL Server Authentication
    사용자가 SQL Server 인증 사용자 이름 및 암호를 제공하여 연결하도록 합니다.Allows a user to connect by providing a SQL Server Authentication user name and password.

    • 사용자 이름User name
      연결할 사용자 이름을 입력하는 데 사용됩니다.Used to enter the user name to connect with. 이 옵션은 SQL Server 인증을 사용하여 연결하도록 선택한 경우에만 사용할 수 있습니다.This option is only available if you have selected to connect using SQL Server Authentication.

    • 암호Password
      로그인 암호를 입력하는 데 사용됩니다.Used to enter the password for the login. 이 옵션은 SQL Server 인증을 사용하여 연결하도록 선택한 경우에만 사용할 수 있습니다.This option is only available if you have selected to connect using SQL Server Authentication.

전송 방법 선택Select the transfer method

  • 분리/연결 방법을 사용합니다.Use the detach and attach method
    데이터베이스를 원본 서버에서 분리하고 데이터베이스 파일(.mdf, .ndf 및 .ldf)을 대상 서버로 복사하고 데이터베이스를 대상 서버에 연결합니다.Detach the database from the source server, copy the database files (.mdf, .ndf, and .ldf) to the destination server, and attach the database at the destination server. 이 방법은 원본 디스크를 읽고 대상 디스크에 쓰는 작업이 주된 작업이므로 속도가 빠릅니다.This method is usually the faster method because the principal work is reading the source disk and writing the destination disk. 데이터베이스에서 개체를 만들거나 데이터베이스 저장소 구조를 만드는 데는 SQL ServerSQL Server 논리를 필요로 하지 않습니다.No SQL ServerSQL Server logic is required to create objects within the database, or create data storage structures. 그러나 데이터베이스에 할당되었지만 사용되지 않는 공간이 많으면 속도가 저하될 수 있습니다.This method can be slower, however, if the database contains a large amount of allocated but unused space. 예를 들어 100MB를 할당하여 만든 새 데이터베이스의 경우 5MB만 사용 중이고 나머지 공간은 비어 있어도 100MB 전체가 복사됩니다.For instance, a new and practically empty database that is created allocating 100 MB, copies the entire 100 MB, even if only 5 MB is full.

    참고 이 방법을 사용하면 전송 중에 사용자가 데이터베이스를 사용할 수 없습니다.NOTE This method makes the database unavailable to users during the transfer.

    • 오류 발생 시 원본 데이터베이스 다시 연결If a failure occurs, reattach the source database
      데이터베이스를 복사하면 원본 데이터베이스 파일이 원본 서버에 항상 다시 연결됩니다.When a database is copied, the original database files are always reattached to the source server. 데이터베이스 이동을 완료할 수 없는 경우 이 상자를 사용하여 원본 파일을 원본 데이터베이스에 다시 연결할 수 있습니다.Use this box to reattach original files to the source database if a database move cannot be completed.
  • SQL 관리 개체 방법을 사용합니다.Use the SQL Management Object method
    이 방법은 원본 데이터베이스에 있는 데이터베이스 개체의 정의를 읽어 대상 데이터베이스에 각 개체를 만든 다음,This method reads the definition of each database object on the source database and creates each object in the destination database. 원본 테이블에서 대상 테이블로 데이터를 전송하여 인덱스와 메타데이터를 다시 만듭니다.Then it transfers the data from the source tables to the destination tables, recreating indexes and metadata.

    참고

    이 방법을 사용하면 데이터를 전송하는 동안에도 데이터베이스 사용자가 데이터베이스에 액세스할 수 있습니다.Database users can continue to access the database during the transfer.

데이터베이스 선택Select database

원본 서버에서 대상 서버로 이동 또는 복사할 데이터베이스를 선택합니다.Select the database(s) you want to move or copy from the source server to the destination server. 항목 상단의 제한 사항 을 참조하세요.See Limitations and Restrictions at the top of topic.

  • 이동Move
    데이터베이스를 대상 서버로 이동합니다.Move the database to the destination server.

  • 복사Copy
    데이터베이스를 대상 서버에 복사합니다.Copy the database to the destination server.

  • 원본Source
    원본 서버에 존재하는 데이터베이스를 표시합니다.Displays the databases that exist on the source server.

  • 상태Status
    원본 데이터베이스의 다양한 정보를 표시합니다.Displays various information of the source database.

  • 새로 고침Refresh
    데이터베이스 목록을 새로 고칩니다.Refresh the list of databases.

대상 데이터베이스 구성Configure destination database

적합한 경우 데이터베이스 이름을 변경하고 데이터베이스 파일의 위치와 이름을 지정합니다.Change the database name if appropriate and specify the location and names of the database files. 이 페이지는 이동하거나 복사하는 각 데이터베이스에 대해 한 번씩 표시됩니다.This page appears once for each database being moved or copied.

  • 원본 데이터베이스Source Database
    원본 데이터베이스의 이름입니다.The name of the source database. 이 입력란의 내용은 편집할 수 없습니다.The text box is not editable.

  • 대상 데이터베이스Destination Database
    생성할 대상 데이터베이스의 이름입니다. 원하는 대로 수정합니다.The name of the destination database to be created, modify as desired.

  • 대상 데이터베이스 파일:Destination database files:

    • FilenameFilename
      생성할 대상 데이터베이스 파일의 이름입니다. 원하는 대로 수정합니다.The name of the destination database file to be created, modify as desired.

    • 크기(MB)Size (MB)
      대상 데이터베이스 파일의 크기(메가바이트)입니다.Size of the destination database file in megabytes.

    • 대상 폴더Destination Folder
      대상 데이터베이스 파일을 호스트할 대상 서버의 폴더입니다. 원하는 대로 수정합니다.The folder on the destination server to host the destination database file, modify as desired.

    • 상태Status
      상태Status

  • 대상 데이터베이스가 이미 있는 경우:If the destination database already exists:
    대상 데이터베이스가 이미 있는 경우 수행할 작업을 결정합니다.Decide what action to take if the destination database already exists.

    • 이름이 같은 데이터베이스나 파일이 대상에 있으면 전송을 중지합니다.Stop the transfer if a database or file with the same name exists at the destination.

    • 대상 서버에서 이름이 같은 데이터베이스를 삭제한 다음 데이터베이스 전송을 계속하여 기존 데이터베이스 파일을 덮어씁니다.Drop any database on the destination server with the same name, then continue with the database transfer, overwriting existing database files.

서버 개체 선택Select Server Objects

이 페이지는 원본 서버와 대상 서버가 다를 때만 사용할 수 있습니다.This page is only available when the source and destination are different servers.

  • 사용 가능한 관련 개체Available related objects
    대상 서버에 전송할 수 있는 개체를 나열합니다.Lists objects available to transfer to the destinations server. 개체를 포함하려면 사용 가능한 관련 개체 상자에서 개체 이름을 클릭한 다음 >> 단추를 클릭하여 선택한 관련 개체 상자로 개체를 이동합니다.To include an object, click the object name in the Available related objects box, and then click the >> button to move the object to the Selected related objects box.

  • 선택한 관련 개체Selected related objects
    대상 서버에 전송할 개체를 나열합니다.Lists objects that will be transferred to the destinations server. 개체를 제외하려면 선택한 관련 개체 상자에서 개체 이름을 클릭한 다음 << 단추를 클릭하여 사용 가능한 관련 개체 상자로 개체를 이동합니다.To exclude an object, click the object name in the Selected related objects box, and then click the << button to move the object to the Available related objects box. 기본적으로 선택한 각 유형의 모든 개체가 전송됩니다.By default all objects of each selected type are transferred. 특정 유형의 개별 개체를 선택하려면 선택한 관련 개체 상자에서 해당 개체 유형 옆의 줄임표 단추를 클릭합니다.To choose individual objects of any type, click the ellipsis button next to any object type in the Selected related objects box. 그러면 개별 개체를 선택할 수 있는 대화 상자가 열립니다.This opens a dialog box where you can select individual objects.

  • 서버 개체 목록List of Server Objects

    • 로그인(기본적으로 선택됨)Logins (Selected by default.)
    • SQL Server 에이전트 작업SQL Server Agent jobs

    • 사용자 정의 오류 메시지User-defined error messages

    • 끝점Endpoints

    • 전체 텍스트 카탈로그Full-text catalog

    • SSIS 패키지SSIS Package

    • master 데이터베이스의 저장 프로시저Stored procedures from master database

      참고 확장 저장 프로시저 및 이와 관련된 DLL은 자동으로 복사할 수 없습니다.NOTE Extended stored procedures and their associated DLLs are not eligible for automated copy.

원본 데이터베이스 파일 위치Location of source database files

이 페이지는 원본 서버와 대상 서버가 다를 때만 사용할 수 있습니다.This page is only available when the source and destination are different servers. 원본 서버의 데이터베이스 파일이 포함된 파일 시스템 공유를 지정합니다.Specify a file system share that contains the database files on the source server.

  • 데이터베이스Database
    이동 중인 각 데이터베이스의 이름을 표시합니다.Displays the name of each database being moved.

  • 폴더 위치Folder location
    원본 서버에 있는 데이터베이스 파일의 폴더 위치입니다.The folder location of the database files on the source server. 예를 들면 C:\Program Files\Microsoft SQL Server\MSSQL110.MSSQLSERVER\MSSQL\DATA과 같습니다.For example: C:\Program Files\Microsoft SQL Server\MSSQL110.MSSQLSERVER\MSSQL\DATA.

  • 원본 서버의 파일 공유File share on source server
    원본 서버에 있는 데이터베이스 파일이 포함된 파일 공유입니다.The file share containing the database files on the source server. 공유를 수동으로 입력하거나 줄임표를 클릭하여 원하는 공유로 이동합니다.Manually enter the share, or click the ellipsis to navigate to the share. 예를 들면 \\server_name\C$\Program Files\Microsoft SQL Server\MSSQL110.MSSQLSERVER\MSSQL\Data과 같습니다.For example: \\server_name\C$\Program Files\Microsoft SQL Server\MSSQL110.MSSQLSERVER\MSSQL\Data.

패키지 구성Configure the package

데이터베이스 복사 마법사는 SSIS 패키지를 만들어 데이터베이스를 전송합니다.The Copy Database Wizard creates an SSIS package to transfer the database.

  • 패키지 위치Package location
    SSIS 패키지를 쓸 위치를 표시합니다.Displays to where the SSIS package will be written.

  • 패키지 이름Package name
    SSIS 패키지의 기본 이름이 생성됩니다. 원하는 대로 수정합니다.A default name for the SSIS package will be created, modify as desired.

  • 로깅 옵션Logging options
    로깅 정보를 Windows 이벤트 로그에 저장할지 또는 텍스트 파일에 저장할지 여부를 선택합니다.Select whether to store the logging information in the Windows event log, or in a text file.

  • 오류 로그 파일 경로Error log file path
    이 옵션은 텍스트 파일 로깅 옵션을 선택한 경우에만 사용할 수 있습니다.This option is only available if the text file logging option is selected. 로그 파일의 위치에 대한 경로를 제공합니다.Provide a path for the location of the log file.

패키지 예약Schedule the package

이동 또는 복사 작업을 시작할 시기를 지정합니다.Specify when you want the move or copy operation to start. 시스템 관리자가 아닌 경우 SSIS(Integration Services) 패키지 실행 하위 시스템에 대한 액세스 권한이 있는 SQL Server 에이전트 프록시 계정을 지정해야 합니다.If you are not a system administrator, you must specify a SQL Server Agent Proxy account that has access to the Integration Services (SSIS) Package execution subsystem.

중요!!IMPORTANT!! Integration Services 프록시 계정에서는 분리 및 연결 방법으로 사용되어야 합니다.An Integration Services Proxy account must be used under the detach and attach method.

  • 즉시 실행Run immediately
    SSIS 패키지가 마법사 완료 후 실행됩니다.SSIS Package will execute after completing the wizard.

  • 일정Schedule
    SSIS 패키지가 일정에 따라 실행됩니다.SSIS Package will execute according to a schedule.

    • 일정 변경 Change Schedule
      그러면 새 작업 일정 대화 상자가 열립니다.Opens the New Job Schedule dialog box. 원하는 대로 구성합니다.Configure as desired. 완료되었으면 확인 을 클릭합니다.Click OK when finished.
  • Integration Services 프록시 계정 드롭다운 목록에서 사용 가능한 프록시 계정을 선택합니다.Integration Services Proxy account Select an available proxy account from the drop-down list. 전송을 예약하려면 SSIS 패키지 실행 하위 시스템에 대한 사용 권한으로 구성되어 사용자가 사용할 수 있는 프록시 계정이 하나 이상 있어야 합니다.To schedule the transfer, there must be at least one proxy account available to the user, configured with permission to the SSIS package execution subsystem.

    SSIS 패키지 실행에 사용할 프록시 계정을 만들려면 개체 탐색기에서 SQL Server 에이전트프록시를 차례로 확장하고 SSIS 패키지 실행을 마우스 오른쪽 단추로 클릭한 다음 새 프록시를 클릭합니다.To create a proxy account for SSIS package execution, in Object Explorer, expand SQL Server Agent, expand Proxies, right-click SSIS Package Execution, and then click New Proxy.

마법사 완료Complete the wizard

선택한 옵션에 대한 요약 정보를 표시합니다.Displays summary of the selected options. 옵션을 변경하려면 뒤로 를 클릭합니다.Click Back to change an option. 마침 을 클릭하여 SSIS 패키지를 만듭니다.Click Finish to create the SSIS package. 전송하는 동안 작업을 수행하는 중 페이지에서 데이터베이스 복사 마법사실행과 관련한 상태 정보를 모니터링합니다.The Performing operation page monitors status information about the execution of the Copy Database Wizard.

  • 동작Action
    수행 중인 동작을 나열합니다.Lists each action being performed.

  • 상태Status
    전반적으로 성공한 동작인지 아니면 실패한 동작인지 여부를 나타냅니다.Indicates whether the action as a whole succeeded or failed.

  • 메시지Message
    각 단계에서 반환된 메시지를 제공합니다.Provides any messages returned from each step.

Examples

공통 단계Common Steps

이동 또는 복사, 분리 및 연결 또는 SMO등 선택 여부에 관계없이 아래 나열된 5단계는 동일합니다.Regardless of whether you choose Move or Copy, Detach and Attach or SMO, the five steps listed below will be the same. 간단히 말해 이 단계들은 여기에 한 번 나열되며 모든 예제는 6단계에서 시작됩니다.For brevity, the steps are listed here once and all examples will start on Step 6.

  1. 개체 탐색기에서 SQL Server 데이터베이스 엔진의 인스턴스에 연결한 다음 해당 인스턴스를 확장합니다.In Object Explorer, connect to an instance of the SQL Server Database Engine and then expand that instance.

  2. 데이터베이스를 확장하고 데이터베이스를 마우스 오른쪽 단추로 클릭한 다음 태스크를 선택하고 데이터베이스 복사...를 클릭합니다.Expand Databases, right-click the desired database, point to Tasks, and then click Copy Database...

  3. 데이터베이스 복사 마법사 시작 페이지가 표시되면 다음을 클릭합니다.If the Welcome to the Copy Database Wizard splash page appears, click Next.

  4. 원본 서버 선택 페이지: 이동 또는 복사하려는 데이터베이스가 있는 서버를 지정합니다.Select a Source Server page: Specify the server with the database to move or copy. 인증 방법을 선택합니다.Select the authentication method. SQL Server 인증 사용 을 선택한 경우 로그인 자격 증명을 입력해야 합니다.If Use SQL Server Authentication is chosen you will need to enter your login credentials. 다음 을 클릭하여 원본 서버에 연결합니다.Click Next to establish the connection to the source server. 이 연결은 해당 세션 동안 열린 상태로 유지됩니다.This connection remains open throughout the session.

  5. 대상 서버 선택 페이지: 데이터베이스를 이동 또는 복사할 서버를 지정할 수 있습니다.Select a Destination Server page: Specify the server where the database will be moved or copied to. 인증 방법을 선택합니다.Select the authentication method. SQL Server 인증 사용 을 선택한 경우 로그인 자격 증명을 입력해야 합니다.If Use SQL Server Authentication is chosen you will need to enter your login credentials. 다음 을 클릭하여 원본 서버에 연결합니다.Click Next to establish the connection to the source server. 이 연결은 해당 세션 동안 열린 상태로 유지됩니다.This connection remains open throughout the session.

    참고 모든 데이터베이스에서 데이터베이스 복사 마법사를 시작할 수 있습니다.NOTE You can launch the Copy Database Wizard from any database. 원본 또는 대상 서버에서 데이터베이스 복사 마법사를 사용할 수 있습니다.You can use the Copy Database Wizard from either the source or destination server.

A. 분리 및 연결 방법을 사용하여 데이터베이스를 다른 실제 서버 인스턴스로 이동합니다. 로그인 및 SQL Server 에이전트 작업도 이동됩니다.A. Move database using detach and attach method to an instance on a different physical server. A login and SQL Server Agent job will be moved as well.

다음 예제는 Sales 데이터베이스, contoso\Jennie 인 Windows 로그인 및 Jennie’s Report 인 SQL Server 에이전트 작업을 Server1 의 SQL Server 2008 인스턴스에서 Server2의 SQL Server 2016 인스턴스로 이동합니다.The following example will move the Sales database, a Windows login named contoso\Jennie and a SQL Server Agent job named Jennie’s Report from a 2008 instance of SQL Server on Server1 to a 2016 instance of SQL Server on Server2. Jennie’s ReportSales 데이터베이스를 사용합니다.Jennie’s Report uses the Sales database. Sales 는 대상 서버 Server2에 존재하지 않습니다.Sales does not already exist on the destination server, Server2. Server1 은 데이터베이스 이동 후 다른 팀에 다시 할당됩니다.Server1 will be re-assigned to a different team after the database move.

  1. 위의 제한 사항에 설명된 것처럼 대상 서버에 없는 데이터베이스를 참조하는 SQL Server 에이전트 작업을 전송할 때 대상 서버에서 셸 데이터베이스가 생성되어야 합니다.As noted in Limitations and Restrictions, above, a shell database will need to be created on the destination server when transferring a SQL Server Agent job that references a database that does not already exist on the destination server. 대상 서버에서 Sales 라는 셸 데이터베이스를 만듭니다.Create a shell database called Sales on the destination server.

  2. 마법사전송 방법 선택 페이지: 기본값을 검토 및 유지 관리합니다.Back to the Wizard, Select the Transfer Method page: Review and maintain the default values. 다음을 클릭합니다.Click Next.

  3. 데이터베이스 선택 페이지: 원하는 데이터베이스 에 대해 이동 Sales을 선택합니다.Select Databases page: Select the Move checkbox for the desired database, Sales. 다음을 클릭합니다.Click Next.

  4. 대상 데이터베이스 구성 페이지: 마법사 에서 Sales 가 이미 대상 서버에 있다는 것을 확인했습니다. 위의 6단계 에서 만들어져서 _new 대상 데이터베이스 이름에 가 추가되었습니다.Configure Destination Database page: The Wizard has identified that Sales already exists on the destination server, as created in Step 6 above, and has appended _new to the Destination database name. _new 대상 데이터베이스 입력란에서 를 삭제합니다.Delete _new from the Destination database text box. 원하는 경우 파일 이름대상 폴더를 변경합니다.If desired, change the Filename, and Destination Folder. 대상 서버에서 이름이 같은 데이터베이스를 삭제한 다음 데이터베이스 전송을 계속하여 기존 데이터베이스 파일을 덮어씁니다.를 선택합니다.Select Drop any database on the destination server with the same name, then continue with the database transfer, overwriting existing database files. 다음을 클릭합니다.Click Next.

  5. 서버 개체 선택 페이지: 선택한 관련 개체: 패널에서 개체 이름 로그인에 대한 줄임표 단추를 클릭합니다.Select Server Objects page: In the Selected related objects: panel, click the ellipsis button for Object name Logins. 복사 옵션 아래에서 선택한 로그인만 복사합니다.를 선택합니다.Under Copy Options select Copy only the selected logins:. 모든 서버 로그인 표시확인란을 선택합니다.Check the box for Show all server logins. 에 대한 로그인 contoso\Jennie확인란을 선택합니다.Check the Login box for contoso\Jennie. 확인을 클릭합니다.Click OK. 사용 가능한 관련 개체: 패널에서 SQL Server 에이전트 작업 을 선택하고 > 단추를 클릭합니다.In the Available related objects: panel select SQL Server Agent jobs and then click the > button. 선택한 관련 개체 패널에서 SQL Server 에이전트 작업단추에 대한 줄임표 단추를 클릭합니다.In the Selected related objects: panel, click the ellipsis button for SQL Server Agent jobs. 복사 옵션 아래에서 선택한 작업만 복사합니다.를 선택합니다.Under Copy Options select Copy only the selected jobs. Jennie’s Report확인란을 선택합니다.Check the box for Jennie’s Report. 확인을 클릭합니다.Click OK. 다음을 클릭합니다.Click Next.

  6. 원본 데이터베이스 파일 위치 페이지: 원본 서버의 파일 공유 에 대한 줄임표 단추를 클릭하고 지정된 폴더 위치로 이동합니다.Location of Source Database Files page: Click the ellipsis button for File share on source server and navigate to the location for the given Folder location. 예를 들어 폴더 위치가 D:\MSSQL13.MSSQLSERVER\MSSQL\DATA 인 경우 \\Server1\D$\MSSQL13.MSSQLSERVER\MSSQL\DATA 원본 서버의 파일 공유 에 대해를 사용합니다.For example, for Folder location D:\MSSQL13.MSSQLSERVER\MSSQL\DATA use \\Server1\D$\MSSQL13.MSSQLSERVER\MSSQL\DATA for File share on source server. 다음을 클릭합니다.Click Next.

  7. 패키지 구성 페이지: 패키지 이름: 입력란에 SalesFromServer1toServer2_Move를 입력합니다.Configure the Package page: In the Package name: text box enter SalesFromServer1toServer2_Move. 전송 로그를 저장하시겠습니까? 확인란을 선택합니다.Check the Save transfer logs? box. 로깅 옵션 드롭다운 목록에서 텍스트 파일을 선택합니다.In the Logging options drop-down list select Text file. 오류 로그 파일 경로를 원하는 대로 수정합니다.Note the Error log file path; revise as desired. 다음을 클릭합니다.Click Next.

    참고 오류 로그 파일 경로 는 대상 서버의 경로입니다.NOTE The Error log file path is the path on the destination server.

  8. 패키지 예약 페이지: Integration Services 프록시 계정 드롭다운 목록에서 관련 프록시를 선택합니다.Schedule the Package page: Select the relevant proxy from the Integration Services Proxy account drop-down list. 다음을 클릭합니다.Click Next.

  9. 마법사 완료 페이지: 선택한 옵션의 요약 내용을 검토합니다.Complete the Wizard page: Review the summary of the selected options. 옵션을 변경하려면 뒤로 를 클릭합니다.Click Back to change an option. 마침 을 클릭하여 작업을 실행합니다.Click Finish to execute the task. 전송하는 동안 작업을 수행하는 중 페이지에서 마법사실행과 관련한 상태 정보를 모니터링합니다.During the transfer, the Performing operation page monitors status information about the execution of the Wizard.

  10. 작업 수행 중 페이지: 작업이 성공하면 닫기를 클릭합니다.Performing Operation page: If operation is successful, click Close. 작업이 실패할 경우 오류 로그를 검토하고 뒤로 를 클릭하여 추가로 검토합니다.If operation is unsuccessful, review error log, and possibly Back for further review. 그렇지 않은 경우 닫기를 클릭합니다.Otherwise, click Close.

  11. 사후 이동 단계 새 호스트 Server2에서 다음 T-SQL 문을 실행하는 것이 좋습니다.Post Move Steps Consider executing the following T-SQL statements on the new host, Server2:

    ALTER AUTHORIZATION ON DATABASE::Sales TO sa;
    
    ALTER DATABASE Sales 
    SET COMPATIBILITY_LEVEL = 130;
    
    USE Sales
    GO
    
    EXEC sp_updatestats;
    
  12. 사후 이동 단계 정리Post Move Steps Cleanup
    Server1 이 다른 팀으로 이동되고 이동 작업이 반복되지 않으므로 다음 단계를 실행하는 것이 좋습니다.Since Server1 will be moved to a different team and the Move operation will not be repeated, consider executing the following steps:

    • SalesFromServer1toServer2_Move 에서 SSIS 패키지 Server2삭제Deleting SSIS package SalesFromServer1toServer2_Move on Server2.
    • SalesFromServer1toServer2_Move 에서 SQL Server 에이전트 프록시 작업 Server2삭제Deleting SQL Server Agent job SalesFromServer1toServer2_Move on Server2.
    • Jennie’s Report 에서 SQL Server 에이전트 프록시 작업 Server1삭제Deleting SQL Server Agent job Jennie’s Report on Server1.
    • contoso\Jennie 에서 로그인 Server1삭제Dropping login contoso\Jennie on Server1.

B. 분리 및 연결 방법을 사용하여 데이터베이스를 동일한 인스턴스에 복사하고 되풀이 일정을 설정합니다.B. Copy database using detach and attach method to the same instance and set recurring schedule.

이 예제에서는 Sales 데이터베이스가 복사되고 동일한 인스턴스에 SalesCopy 로 만들어집니다.In this example the Sales database will be copied and created as SalesCopy on the same instance. 그 후부터 SalesCopy가 매주 다시 생성됩니다.Thereafter, SalesCopy, will be re-created on a weekly basis.

  1. 전송 방법 선택 페이지: 기본값을 검토 및 유지 관리합니다.Select a Transfer Method page: Review and maintain the default values. 다음을 클릭합니다.Click Next.

  2. 데이터베이스 선택 페이지: 데이터베이스에 대해 복사 Sales 를 선택합니다.Select Databases page: Select the Copy checkbox for the Sales database. 다음을 클릭합니다.Click Next.

  3. 대상 데이터베이스 구성 페이지: 대상 데이터베이스 이름을 SalesCopy로 변경합니다.Configure Destination Database page: Change the Destination database name to SalesCopy. 원하는 경우 파일 이름대상 폴더를 변경합니다.If desired, change the Filename, and Destination Folder. 대상 서버에서 이름이 같은 데이터베이스를 삭제한 다음 데이터베이스 전송을 계속하여 기존 데이터베이스 파일을 덮어씁니다.를 선택합니다.Select Drop any database on the destination server with the same name, then continue with the database transfer, overwriting existing database files. 다음을 클릭합니다.Click Next.

  4. 패키지 구성 페이지: 패키지 이름: 입력란에 SalesCopy Weekly Refresh를 입력합니다.Configure the Package page: In the Package name: text box enter SalesCopy Weekly Refresh. 전송 로그를 저장하시겠습니까? 확인란을 선택합니다.Check the Save transfer logs? box. 다음을 클릭합니다.Click Next.

  5. 패키지 예약 페이지: 일정: 라디오 단추를 클릭한 다음 일정 변경 단추를 클릭합니다.Schedule the Package page: Click the Schedule: radio button and then click the Change Schedule button.

    1. 새 작업 일정 페이지: 이름 입력란에 Weekly on Sunday를 입력합니다.New Job Schedule page: In the Name text box enter Weekly on Sunday.

    2. 확인을 클릭합니다.Click OK.

  6. Integration Services 프록시 계정 드롭다운 목록에서 관련 프록시를 선택합니다.Select the relevant proxy from the Integration Services Proxy account drop-down list. 다음을 클릭합니다.Click Next.

  7. 마법사 완료 페이지: 선택한 옵션의 요약 내용을 검토합니다.Complete the Wizard page: Review the summary of the selected options. 옵션을 변경하려면 뒤로 를 클릭합니다.Click Back to change an option. 마침 을 클릭하여 작업을 실행합니다.Click Finish to execute the task. 패키지를 만드는 동안 작업 수행 중 페이지에서 마법사실행과 관련한 상태 정보를 모니터링합니다.During the package creation, the Performing operation page monitors status information about the execution of the Wizard.

  8. 작업 수행 중 페이지: 작업이 성공하면 닫기를 클릭합니다.Performing Operation page: If operation is successful, click Close. 작업이 실패할 경우 오류 로그를 검토하고 뒤로 를 클릭하여 추가로 검토합니다.If operation is unsuccessful, review error log, and possibly Back for further review. 그렇지 않은 경우 닫기를 클릭합니다.Otherwise, click Close.

  9. 새로 만든 SQL Server 에이전트 작업 SalesCopy weekly refresh를 수동으로 시작합니다.Manually start the newly created SQL Server Agent Job SalesCopy weekly refresh. 작업 기록을 검토하고 이제 인스턴스에 SalesCopy 가 있는지 확인합니다.Review job history and ensure SalesCopy now exists on the instance.

후속 작업: 데이터베이스를 업그레이드한 후 Follow up: After upgrading a database

데이터베이스 복사 마법사를 사용하여 이전 버전의 SQL ServerSQL Server 에서 SQL Server 2017SQL Server 2017버전으로 데이터베이스를 업그레이드하면 데이터베이스를 바로 사용할 수 있으며 데이터베이스가 자동으로 업그레이드됩니다.After you use the Copy Database Wizard to upgrade a database from an earlier version of SQL ServerSQL Server to SQL Server 2017SQL Server 2017, the database becomes available immediately and is automatically upgraded. 데이터베이스에 전체 텍스트 인덱스가 있는 경우 업그레이드 프로세스는 전체 텍스트 업그레이드 옵션 서버 속성의 설정에 따라 인덱스를 가져오거나, 다시 설정하거나, 다시 작성합니다.If the database has full-text indexes, the upgrade process either imports, resets, or rebuilds them, depending on the setting of the Full-Text Upgrade Option server property. 업그레이드 옵션이 가져오기 또는 다시 작성으로 설정되어 있는 경우 업그레이드하는 동안 전체 텍스트 인덱스를 사용할 수 없습니다.If the upgrade option is set to Import or Rebuild, the full-text indexes will be unavailable during the upgrade. 인덱싱되는 데이터 양에 따라 가져오기 작업은 몇 시간씩 걸릴 수 있으며 다시 작성 작업은 10배 정도 더 걸릴 수 있습니다.Depending the amount of data being indexed, importing can take several hours, and rebuilding can take up to ten times longer. 업그레이드 옵션이 가져오기로 설정되어 있으면 전체 텍스트 카탈로그를 사용할 수 없는 경우 관련된 전체 텍스트 인덱스가 다시 작성됩니다.Note also that when the upgrade option is set to Import, if a full-text catalog is not available, the associated full-text indexes are rebuilt. 전체 텍스트 업그레이드 옵션 속성 설정을 보거나 변경하는 방법은 서버 인스턴스의 전체 텍스트 검색 관리 및 모니터링을 참조하세요.For information about viewing or changing the setting of the Full-Text Upgrade Option property, see Manage and Monitor Full-Text Search for a Server Instance.

사용자 데이터베이스의 호환성 수준이 업그레이드 이전에 100 이상이었다면 업그레이드 후에도 동일하게 유지됩니다.If the compatibility level of a user database was 100 or higher before upgrade, it remains the same after upgrade. 업그레이드한 데이터베이스의 호환성 수준이 이전에 90이었다면 업그레이드 후에는 SQL Server 2017SQL Server 2017에서 지원되는 가장 낮은 호환성 수준인 100으로 설정됩니다.If the compatibility level was 90 in the upgraded database, the compatibility level is set to 100, which is the lowest supported compatibility level in SQL Server 2017SQL Server 2017. 자세한 내용은 ALTER DATABASE 호환성 수준(Transact-SQL)을 참조하세요.For more information, see ALTER DATABASE Compatibility Level (Transact-SQL).

사후 복사 하거나 이동 고려 사항 Post copy or move considerations

복사 또는 이동후 다음 단계를 수행할지 여부를 고려합니다.Consider whether to perform the following steps after a Copy or Move:

  • 분리 및 연결 방법을 사용할 경우 데이터베이스 소유권 변경Changing the ownership of the database(s) when the detach and attach method is used.
  • 이동후 원본 서버에서 서버 개체 삭제Dropping server objects on the source server after a Move.
  • 대상 서버에서 마법사가 만든 SSIS 패키지 삭제Dropping the SSIS package created by the Wizard on the destination server.
  • 대상 서버에서 마법사가 만든 SQL Server 에이전트 작업 삭제Dropping the SQL Server Agent job created by the Wizard on the destination server.

자세한 정보!More information!

분리 및 연결을 사용하여 데이터베이스 업그레이드(Transact-SQL) Upgrade a Database Using Detach and Attach (Transact-SQL)
SQL Server 에이전트 프록시 만들기Create a SQL Server Agent Proxy