trešdiena, 2012. gada 9. maijs

SQL Server redakciju atšķirības

Atkarībā no SQL Server redakcija (tulkojot no vārda edition- Express, Standart, Enterprice u.c., nevis no vārda version- 2005, 2008, 2012) ir pieejamas dažādas SQL Server iespējas. Dažas no iespējām izmanto īpašu veidu datu glabāšanai datu bāzes failā un tādā gadījumā datu bāzi nevar atjaunot uz citas SQL Server redakcijas.

Šīs iespējas ir:
* datu kompresija
* particionēšana
* TDE
* Change Capture

Lai apskatītu kuras no šīm iespējām izmantotas datu bāzē (SQL Server 2008 un jaunākām) izmanto DMV sys.dm_db_persisted_sku_features:
Select * From sys.dm_db_persisted_sku_features;
Datu kompresija
Ja jāatjauno datu bāze no SQL Server 2008 R2 Enterprice Edition uz SQL Server 2008 R2 Standart Edition un tiek izmantota datu kompresija (To noskaidroju ar iepriekš minētā DMV palīdzību).
Var ģenerēt skriptu, kas visām tabulām noņem datu kompresiju, izmantoju šo:
declare @x nvarchar(max)
declare cur cursor for
    SELECT DISTINCT
    SCHEMA_NAME(sys.objects.schema_id) + '.' +
    OBJECT_NAME(sys.objects.object_id) AS [ObjectName]
    FROM sys.partitions
        INNER JOIN sys.objects
        ON sys.partitions.object_id = sys.objects.object_id
    WHERE data_compression > 0
    AND SCHEMA_NAME(sys.objects.schema_id) <> 'SYS'
open cur                  
fetch next from cur into @x
while @@fetch_status = 0
begin
    print 'ALTER INDEX ALL ON ' + 
        @x + ' REBUILD WITH (DATA_COMPRESSION = None);'
    fetch next from cur into @x
end
close cur;
Deallocate cur;
TDE (datu šifrēšana).
Lai atslēgtu datu šifrēšanu, jāizpilda komanda:
ALTER DATABASE DBNosaukums SET ENCRYPTION OFF;
Savukārt lai apskatītu, kā veicās ar atšifrēšanas procesu, var izmantot šādu vaicājumu:
SELECT DB_Name(database_id),
    encryption_state,
    percent_complete
FROM sys.dm_database_encryption_keys

Nav komentāru:

Komentāra publicēšana