By:    |   Read Comments (4)   |   Related Tips: More > Upgrades and Migrations

 

Problem

One of the Junior SQL Server database administrators (DBA) in my company approached me yesterday with a dilemma. He wanted to know how he can identify whether a database uses any of the features that are restricted to a specific edition of SQL Server 2008. In this tip we will go through the steps a DBA needs to follow to identify a database which uses edition specific features.

Solution

When you implement any of the features such as Data Compression , Partitioning , Transparent Data Encryption or Change Data Capture of SQL Server 2008 Enterprise Edition on a database, these features will internally change the way the database engine stores information within the database files. If a database uses any of the above features which are specifically designed to be used in Enterprise Edition of SQL Server 2008, it cannot be moved to other editions of SQL Server 2008.

DBAs can identify all edition specific features that are enabled within a user database by using thesys.dm_db_persisted_sku_features dynamic management view.


As an example, let's try restoring the AdventureWorks database to a SQL Server 2008 Standard Edition instance. Unfortunately, there is a catch; one of the tables Person.Address of is using Page Level compression in SQL Server 2008 Enterprise Edition. When you try to restore the database to a SQL Server 2008 Standard Edition instance which does not support the Data Compression feature, the restoration of the database will fail with the following error message:

 

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.

 

3.png

 

If a DBA is asked to move a database from Enterprise Edition to any other edition of SQL Server 2008 it is a good idea to execute the T-SQL code below to identify whether the current database uses any of the features that are restricted to a specific edition of SQL Server. The sys.dm_db_persisted_sku_features dynamic management view will let you know which edition specific feature is being used by the database. One needs to have VIEW DATABASE STATE permission on the database to view the results.

 

USE AdventureWorks
GO
SELECT * 
FROM sys.dm_db_persisted_sku_features 
GO 

 

4.png

 

As you can see in the code above snippet, the dynamic management view lets you know that the AdventureWorks database uses Compression feature of SQL Server 2008 Enterprise Edition. The sys.dm_db_persisted_sku_features dynamic management view will not return any rows if no features that are restricted by edition are used by the database. In case, you are using Data Compression , Partitioning , Transparent Data Encryption or Change Data Capture of SQL Server 2008 Enterprise Edition, you need to remove the features before you perform the full backup and restore the database.

번호 제목 글쓴이 날짜 조회 수
41 [명령 프롬프트] Microsoft SQL Server 서비스를 시작, 중지 또는 일시 중지 황제낙엽 2021.09.08 41
40 SQL Server 데이터베이스 기본 위치 변경하기 file 황제낙엽 2021.09.07 33
39 SQL Server 와 SQL Server Management Studio(SSMS) 설치 황제낙엽 2021.08.24 99
38 Windows 방화벽에서 SQL Server 포트 허용하기 황제낙엽 2020.02.13 274
37 DB 성능 최적화 14가지 지키기 (쿼리 성능 향상) 황제낙엽 2019.05.29 184
36 특정 컬럼에 대해 그룹핑하여 각 그룹별 ROWNUM 붙이기 그리고 left join 황제낙엽 2019.05.28 92
35 조회용 검색 쿼리 황제낙엽 2019.05.28 141
34 ROWNUM 붙이기 황제낙엽 2019.05.28 104
33 SQL Server 서비스 시작 황제낙엽 2017.06.01 114
32 서버 컴퓨터 이름 변경과 함께 SQL Server 이름 변경 하기 file 황제낙엽 2016.07.19 1402
31 SQL Server 2014의 라이선스의 변화 file 황제낙엽 2016.06.29 116
30 Downgrade from SQL Server Enterprise Edition to Standard Edition file 황제낙엽 2016.06.23 597
29 SQL Server 를 Developer (Enterprise) 에서 Standard 로 교체하기(Downgrade) 황제낙엽 2016.06.23 161
» Identify database features restricted to a specific edition of SQL Server 2008 file 황제낙엽 2016.06.18 183
27 SQL Server 에디션 다운그레이드와 제한된 기능 확인 file 황제낙엽 2016.06.18 227
26 SQL Server 2008 R2 제거 file 황제낙엽 2016.06.15 1750
25 SQL Server 2016 설치를 위한 하드웨어 및 소프트웨어 요구 사항 황제낙엽 2016.06.14 583
24 MS-SQL Server 2008 SA계정 활성화. (SQL Server 인증 연결) file 황제낙엽 2016.06.14 184
23 혼합 인증 켜기(SQL Server 및 Windows 인증 모드) file 황제낙엽 2016.06.14 136
22 MS SQL Server Environment (SQL Server 2008 개요) file 황제낙엽 2016.06.14 146