작업 예약Schedule a Job

이 항목에서는 SQL ServerSQL Server 에이전트 작업을 예약하는 방법에 대해 설명합니다.This topic describes how to schedule a SQL ServerSQL Server Agent job.

시작하기 전에Before You Begin

보안Security

자세한 내용은 Implement SQL Server Agent Security을 참조하세요.For detailed information, see Implement SQL Server Agent Security.

SQL Server Management Studio 사용Using SQL Server Management Studio

작업에 대한 일정을 만들고 연결하려면To create and attach a schedule to a job

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

  2. SQL Server 에이전트, 작업을 차례로 확장한 다음 예약할 작업을 마우스 오른쪽 단추로 클릭하고 속성을 클릭합니다.Expand SQL Server Agent, expand Jobs, right-click the job you want to schedule, and click Properties.

  3. 일정 페이지를 선택한 다음 새로 만들기를 클릭합니다.Select the Schedules page, and then click New.

  4. 이름 입력란에 새 일정의 이름을 입력합니다.In the Name box, type a name for the new schedule.

  5. 만든 즉시 일정이 적용되지 않게 하려면 사용 확인란의 선택을 해제합니다.Clear the Enabled check box if you do not want the schedule to take effect immediately following its creation.

  6. 일정 유형에 대해 다음 중 하나를 선택합니다.For Schedule Type, select one of the following:

    • SQL Server 에이전트가 시작될 때 자동으로 시작 을 클릭하여 SQL ServerSQL Server 에이전트 서비스가 시작할 때 작업을 시작합니다.Click Start automatically when SQL Server Agent starts to start the job when the SQL ServerSQL Server Agent service is started.

    • CPU가 유휴 상태로 될 때마다 시작 을 클릭하여 CPU가 유휴 상태일 때 작업을 시작합니다.Click Start whenever the CPUs become idle to start the job when the CPUs reach an idle condition.

    • 일정을 반복적으로 실행하려면 되풀이 를 클릭합니다.Click Recurring if you want a schedule to run repeatedly. 반복 수행 일정을 설정하려면 대화 상자에서 빈도, 일별 빈도기간 그룹을 입력하세요.To set the recurring schedule, complete the Frequency, Daily Frequency, and Duration groups on the dialog.

    • 한 번만 실행하도록 예약하려면 한 번 을 클릭합니다.Click One time if you want the schedule to run only once. 한 번 예약을 설정하려면 대화 상자에서 한 번 발생 그룹을 입력합니다.To set the One time schedule, complete the One-time occurrence group on the dialog.

작업에 일정을 연결하려면To attach a schedule to a job

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

  2. SQL Server 에이전트, 작업을 차례로 확장한 다음 예약할 작업을 마우스 오른쪽 단추로 클릭하고 속성을 클릭합니다.Expand SQL Server Agent, expand Jobs, right-click the job that you want to schedule, and click Properties.

  3. 일정 페이지를 선택한 다음 선택을 클릭합니다.Select the Schedules page, and then click Pick.

  4. 연결하려는 일정을 선택한 다음 확인을 클릭합니다.Select the schedule that you want to attach, and then click OK.

  5. 작업 속성 대화 상자에서 연결된 일정을 두 번 클릭합니다.In the Job Properties dialog box, double-click the attached schedule.

  6. 시작 날짜 가 올바르게 설정되었는지 확인합니다.Verify that Start date is set correctly. 올바르게 설정되지 않았으면 일정을 시작하려는 날짜를 설정한 다음 확인을 클릭합니다.If it is not, set the date when you want for the schedule to start, and then click OK.

  7. 작업 속성 대화 상자에서 확인을 클릭합니다.In the Job Properties dialog box, click OK.

Transact-SQL 사용Using Transact-SQL

작업을 예약하려면To schedule a job

  1. 개체 탐색기에서 데이터베이스 엔진Database Engine인스턴스에 연결합니다.In Object Explorer, connect to an instance of 데이터베이스 엔진Database Engine.

  2. 표준 도구 모음에서 새 쿼리를 클릭합니다.On the Standard bar, click New Query.

  3. 다음 예를 복사하여 쿼리 창에 붙여 넣고 실행을 클릭합니다.Copy and paste the following example into the query window and click Execute.

    USE msdb ;  
    GO  
    -- creates a schedule named NightlyJobs.   
    -- Jobs that use this schedule execute every day when the time on the server is 01:00.   
    EXEC sp_add_schedule  
        @schedule_name = N'NightlyJobs' ,  
        @freq_type = 4,  
        @freq_interval = 1,  
        @active_start_time = 010000 ;  
    GO  
    -- attaches the schedule to the job BackupDatabase  
    EXEC sp_attach_schedule  
       @job_name = N'BackupDatabase',  
       @schedule_name = N'NightlyJobs' ;  
    GO  
    

자세한 내용은 sp_add_schedule(Transact-SQL)sp_attach_schedule(Transact-SQL)을 참조하세요.For more information, see sp_add_schedule (Transact-SQL) and sp_attach_schedule (Transact-SQL).

SQL Server 관리 개체 사용Using SQL Server Management Objects

Visual Basic, Visual C#, PowerShell 등 선택한 프로그래밍 언어를 사용하여 JobSchedule 클래스를 사용합니다.Use the JobSchedule class by using a programming language that you choose, such as Visual Basic, Visual C#, or PowerShell. 자세한 내용은SMO(SQL Server 관리 개체)를 참조하세요.For more information, seeSQL Server Management Objects (SMO).