SQL Server/SQL Server Tip

SQL Server 에디션 다운그레이드와 제한된 기능 확인

SungWookKang 2015. 7. 23. 09:31
반응형

SQL Server 에디션 다운그레이드와 제한된 기능 확인

 

  • Version : SQL 2008, 2008R2, 2012

 

SQL Server Enterprise 에디션에서는 데이터 압축, 파티셔닝, TDE(투명한 데이터 암호화), CDC(변경된 데이터 캡처)등의 기능을 제공한다. 이 기능은 내부적으로 데이터베이스 엔진이 파일 저장 정보를 관리 할 것이다.

 

이렇게 Enterprise 에디션을 사용하는 경우 Standard 에디션으로 다운그레이드 할 때 오류가 발생 할 수 있다. 동적 관리 뷰 sys.dm_db_persisted_sku_reatures 를 사용하여 특정 기능을 사용하는 데이터베이스의 영향도를 확인 할 수 있다.

 

예를 들어 SQL Server 2008 Standard 에디션 인스턴스에 AdventrueWorks 데이터베이스를 복원하려고 할 때 Person.address 테이블은 엔터프라이즈 에디션의 페이지 수준 압축을 사용하는 테이블이다. 이때 데이터베이스 복원 시 다음과 같은 오류가 발생 할 수 있다.

RESTORE DATABASE is terminating abnormally.

Msg 909, Level 21, State 1, Line 4

Database 'AdventureWorks' cannot be started in this edition of SQL Server because part or all of object 'Address' is enabled with data compression or vardecimal storage format. Data compression and vardecimal storage format are only supported on SQL Server Enterprise Edition.

Msg 933, Level 21, State 1, Line 4

Database 'AdventureWorks' cannot be started because some of the database functionality is not available in the current edition of SQL Server.

 

 

 

DBA는 SQL Server 2008 엔터프라이즈에서 다른 에디션으로 변경 하려고 할 때 현재 데이터베이스가 제한하는 기능 을 사용하는지 여부를 확인하기 위해 다음 스크립트를 실행하여 확인 할 수 있다.

USE AdventureWorks

GO

SELECT *

FROM sys.dm_db_persisted_sku_features

GO

 

 

위 그림을 보면 AdventureWorks 데이터베이스는 SQL Server 2008 Enterprise 에디션의 압축 기능을 사용하는 것을 알 수 있다. 이는 에디션을 변경하기전에 해당 기능을 제거하여 백업 및 복원을 해야 한다.

 

 

[참고자료]

http://www.mssqltips.com/sqlservertip/2108/identify-database-features-restricted-to-a-specific-edition-of-sql-server-2008/

 

 

2013-12-16 / 강성욱 / http://sqlmvp.kr

 

 

 

반응형