구독에 대한 만료 기간 설정Set the Expiration Period for Subscriptions

이 항목에서는 SQL Server 2017SQL Server 2017 또는 SQL Server Management StudioSQL Server Management Studio 을 사용하여 Transact-SQLTransact-SQL에서 구독 만료 기간을 설정하는 방법에 대해 설명합니다.This topic describes how to set the expiration period for subscriptions in SQL Server 2017SQL Server 2017 by using SQL Server Management StudioSQL Server Management Studio or Transact-SQLTransact-SQL. 구독 만료 기간은 구독이 만료되어 제거되기 전까지 유효한 기간을 나타냅니다.The expiration period for subscriptions determines the period of time before a subscription expires and is removed. 자세한 내용은 Subscription Expiration and Deactivation을 참조하세요.For more information, see Subscription Expiration and Deactivation.

항목 내용In This Topic

시작하기 전 주의 사항 Before You Begin

권장 사항 Recommendations

  • 구독 만료 기간을 게시 보존 기간이라고도 합니다.The subscription expiration period is also referred to as the publication retention period. 병합 복제 메타데이터의 정리는 다음과 같이 이 설정의 영향을 받습니다.Cleanup of merge replication metadata is dependent on this setting:

    • 보존 기간에 도달하기 전까지는 복제 작업을 통해 게시 및 구독 데이터베이스의 메타데이터를 정리할 수 없습니다.Replication cannot clean up metadata in the publication and subscription databases until the retention period is reached. 보존 기간을 너무 길게 설정하면 복제 성능이 저하될 수 있으므로 주의해야 합니다.Use caution in specifying a high value for the retention period, because it can negatively impact replication performance. 보존 기간 내에 모든 구독자가 정기적으로 동기화될 가능성이 있으면 보존 기간을 낮은 값으로 설정하는 것이 좋습니다.It is recommended that you use a lower setting if you can reliably predict that all Subscribers will synchronize regularly within that time period.

      병합 게시의 보존 기간은 다양한 표준 시간대의 구독자를 수용하기 위해 24시간의 유예 기간을 갖습니다.The retention period for merge publications has a 24-hour grace period to accommodate Subscribers in different time zones. 예를 들어 보존 기간을 하루로 설정한 경우 실제 보존 기간은 48시간이 됩니다.If, for example, you set a retention period of one day, the actual retention period is 48 hours.

    • 구독이 만료되지 않도록 지정할 수 있지만 이 경우 메타데이터를 정리할 수 없으므로 이 값은 사용하지 않도록 합니다.It is possible to specify that subscriptions never expire, but it is strongly recommended that you do not use this value, because metadata cannot be cleaned up.

SQL Server Management Studio 사용 Using SQL Server Management Studio

게시 속성 - <Publication> 대화 상자의 일반 페이지에서 구독의 만료 기간을 설정합니다.Set the expiration period for subscriptions on the General page of the Publication Properties - <Publication> dialog box. 이 대화 상자에 액세스하는 방법은 View and Modify Publication Properties을 참조하세요.For more information about accessing this dialog box, see View and Modify Publication Properties.

구독에 대한 만료 기간을 설정하려면To set the expiration period for subscriptions

  1. 게시 속성 - <게시> 대화 상자의 일반 페이지에 있는 구독 만료 섹션에서 구독을 만료해야 할지 여부를 지정합니다.In the Subscription expiration section on the General page of the Publication Properties - <Publication> dialog box, specify whether subscriptions should expire.

  2. 구독이 만료되어야 하는 경우 만료 기간을 지정합니다.If they should expire, specify an expiration time period.

Transact-SQL 사용 Using Transact-SQL

복제 저장 프로시저를 사용하여 게시를 만들 때 이 값을 설정하거나 나중에 이 값을 수정할 수 있습니다.You can use replication stored procedures to either set this value when a publication is created or modify this value at a later time.

스냅숏 또는 트랜잭션 게시에 대한 구독 만료 기간을 설정하려면To set the expiration period for a subscription to a snapshot or transactional publication

  1. 게시자에서 sp_addpublication을 실행합니다.At the Publisher, execute sp_addpublication. 이때 @retention에서 구독 만료 기간을 설정하는 방법에 대해 설명합니다.Specify the desired subscription expiration period, in hours, for @retention. 기본 만료 기간은 336시간입니다.The default expiration period is 336 hours. 자세한 내용은 Create a Publication을 참조하세요.For more information, see Create a Publication.

병합 게시에 대한 구독 만료 기간을 설정하려면To set the expiration period for a subscription to a merge publication

  1. 게시자에서 sp_addmergepublication을 실행합니다.At the Publisher, execute sp_addmergepublication. 이때 @retention에서 구독 만료 기간을 설정하는 방법에 대해 설명합니다.Specify the desired value for the subscription expiration period for @retention. @retention_period_unit에 다음과 같은 만료 기간 표현 단위 중 하나를 지정합니다.Specify the units in which the expiration period is expressed for @retention_period_unit, which can be one of the following:

    • 1 = 주1 = week

    • 2 = 개월2 = month

    • 3 = 년3 = year

      기본 만료 기간은 14일입니다.The default expiration period is 14 days. 자세한 내용은 Create a Publication을 참조하세요.For more information, see Create a Publication.

스냅숏 또는 트랜잭션 게시에 대한 구독 만료 기간을 변경하려면To change the expiration period for a subscription to a snapshot or transactional publication

  1. 게시자에서 sp_changepublication을 실행합니다.At the Publisher, execute sp_changepublication. 이때 @property@property , @value에서 구독 만료 기간을 설정하는 방법에 대해 설명합니다.Specify retention for @property and the new subscription expiration period, in hours, for @value.

병합 게시에 대한 구독의 만료 기간을 변경하려면To change the expiration period for a subscription to a merge publication

  1. 게시자에서 sp_helpmergepublication을 실행하고 @publication@publisher에서 구독 만료 기간을 설정하는 방법에 대해 설명합니다.At the Publisher, execute sp_helpmergepublication, specifying @publication and @publisher. 결과 집합의 retention_period_unit 값은 다음 중 하나일 수 있습니다.Note the value of retention_period_unit in the result set, which can be one of the following:

    • 0 = 일0 = day

    • 1 = 주1 = week

    • 2 = 개월2 = month

    • 3 = 년3 = year

  2. 게시자에서 sp_changemergepublication을 실행합니다.At the Publisher, execute sp_changemergepublication. 이때 @property@property 을 지정하고 @value에서 구독 만료 기간을 설정하는 방법에 대해 설명합니다.Specify retention for @property and the new subscription expiration period, as text based on the retention period unit from step 1, for @value.

  3. (옵션) 게시자에서 sp_changemergepublication을 실행합니다.(Optional) At the Publisher, execute sp_changemergepublication. 이때 retention_period_unit@property 을 지정하고 @value에서 구독 만료 기간을 설정하는 방법에 대해 설명합니다.Specify retention_period_unit for @property and a new unit for the subscription expiration period for @value.

관련 항목:See Also

복제 시스템 저장 프로시저 개념 Replication System Stored Procedures Concepts
Subscription Expiration and Deactivation Subscription Expiration and Deactivation