Azure-javaslatok lekérése a SQL Server-adatbázis migrálásához (előzetes verzió)

Az Azure Data Studio Azure SQL Migration bővítménye segít felmérni az adatbázis követelményeit, megfelelő méretű termékváltozat-javaslatokat kapni az Azure-erőforrásokhoz, és migrálni a SQL Server adatbázist az Azure-ba.

Megtudhatja, hogyan használhatja ezt az egységes felületet, és hogyan gyűjthet teljesítményadatokat a forrás SQL Server példányból, hogy megfelelő méretű Azure-javaslatokat kapjon a Azure SQL célokhoz.

Áttekintés

A Azure SQL való migrálás előtt az Azure Data Studio SQL Migration bővítményével megfelelő méretű javaslatokat hozhat létre Azure SQL Database-hez, Azure SQL Managed Instance- és SQL Server azure-Virtual Machines-célokhoz. Az eszköz segítségével teljesítményadatokat gyűjthet a forrás SQL-példányról (helyszíni vagy más felhőben), és számítási és tárolási konfigurációt javasolhat a számítási feladatok igényeinek megfelelően.

A diagram az Azure-javaslatok munkafolyamatát mutatja be az Azure Data Studio Azure SQL Migration bővítményében:

A termékváltozat-javaslati folyamat munkafolyamatát bemutató ábra.

Megjegyzés

Az Azure Data Studio Azure SQL Migration bővítményének felmérési és Azure-javaslati funkciója támogatja a Windowson vagy Linuxon futó forrás SQL Server példányokat.

Előfeltételek

A SQL Server-adatbázis migrálásával kapcsolatos Azure-javaslatok (előzetes verzió) használatának megkezdéséhez meg kell felelnie a következő előfeltételeknek:

Támogatott források és célok

Az Azure-javaslatok a következő SQL Server verziókhoz hozhatók létre:

  • SQL Server 2008-es és újabb verziók Windows vagy Linux rendszeren támogatottak.
  • SQL Server más felhőkben való futtatása támogatott lehet, de az eredmények pontossága eltérő lehet

Az Azure-javaslatok a következő Azure SQL célokhoz hozhatók létre:

  • Azure SQL Database
    • Hardvercsaládok: Standard sorozat (Gen5)
    • Szolgáltatási szintek: általános célú, üzletileg kritikus, rugalmas skálázás
  • Felügyelt Azure SQL-példány
    • Hardvercsaládok: Standard sorozat (Gen5), Prémium sorozat, Prémium sorozatú memóriaoptimalizált
    • Szolgáltatási szintek: általános célú, üzletileg kritikus
  • SQL Server azure-beli virtuális gépen
    • Virtuálisgép-családok: Általános célú, memóriaoptimalizált
    • Tárolócsaládok: Prémium SSD

Teljesítményadatok gyűjtése

A javaslatok létrehozása előtt teljesítményadatokat kell gyűjteni a forrás SQL Server példányról. Az adatgyűjtési lépés során a rendszer lekérdezi a SQL Server-példány több dinamikus rendszernézetét (DMV-ket) a számítási feladat teljesítményjellemzőinek rögzítéséhez. Az eszköz 30 másodpercenként rögzíti a metrikákat, beleértve a processzor- és memóriahasználatot, a tárolást és az I/O-használatot, és a teljesítményszámlálókat helyileg menti a gépre CSV-fájlok készleteként.

Példányszint

Ezeket a teljesítményadatokat SQL Server példányonként egyszer gyűjtjük össze:

Teljesítménydimenzió Leírás Dinamikus felügyeleti nézet (DMV)
SqlInstanceCpuPercent A SQL Server folyamat által használt processzor mennyisége százalékban sys.dm_os_ring_buffers
PhysicalMemoryInUse A SQL Server folyamat teljes memóriaigénye sys.dm_os_process_memory
MemoryUtilizationPercentage SQL Server memóriahasználata sys.dm_os_process_memory

az adatbázis-szintű megadás helyett

Teljesítménydimenzió Leírás Dinamikus felügyeleti nézet (DMV)
DatabaseCpuPercent Az adatbázis által használt processzor teljes százalékos aránya sys.dm_exec_query_stats
CachedSizeInMb Adatbázis által használt gyorsítótár teljes mérete megabájtban sys.dm_os_buffer_descriptors

Fájlszint

Teljesítménydimenzió Leírás Dinamikus felügyeleti nézet (DMV)
ReadIOInMb A fájlból beolvasott megabájtok teljes száma sys.dm_io_virtual_file_stats
WriteIOInMb A fájlba írt megabájtok teljes száma sys.dm_io_virtual_file_stats
NumOfReads A fájlban kiadott olvasások teljes száma sys.dm_io_virtual_file_stats
NumOfWrites A fájlban kiadott írások teljes száma sys.dm_io_virtual_file_stats
Olvashatóság A fájl I/O-olvasási késése sys.dm_io_virtual_file_stats
WriteLatency A fájl I/O-írási késése sys.dm_io_virtual_file_stats

A javaslatok létrehozása előtt legalább 10 percnyi adatgyűjtésre van szükség, de a számítási feladatok pontos felméréséhez ajánlott az adatgyűjtést elég hosszú ideig futtatni a csúcsidőn kívüli és a csúcsidőn kívüli használat rögzítéséhez.

Az adatgyűjtési folyamat elindításához először csatlakozzon a forrás SQL-példányhoz az Azure Data Studióban, majd indítsa el az SQL Migration varázslót. A 2. lépésben válassza az "Azure-javaslat lekérése" lehetőséget. Válassza a "Teljesítményadatok gyűjtése most" lehetőséget, és válasszon ki egy mappát a gépen, ahová az összegyűjtött adatokat menteni fogja.

Képernyőkép a varázsló paneljéről a termékváltozat-javaslatok teljesítményadatainak gyűjtéséhez.

Fontos

Az adatgyűjtési folyamat 10 percig fut az első javaslat létrehozásához. Fontos elindítani az adatgyűjtési folyamatot, ha az aktív adatbázis számítási feladatai az éles forgatókönyvekhez hasonló használatot tükröznek.

Az első javaslat létrehozása után továbbra is futtathatja az adatgyűjtési folyamatot a javaslatok finomításához. Ez a lehetőség különösen akkor hasznos, ha a használati minták idővel változnak.

Az adatgyűjtési folyamat a Start gomb kiválasztása után kezdődik. A rendszer 10 percenként összesíti az összegyűjtött adatpontokat, és az egyes számlálók maximális, középérték és varianciája lemezre lesz írva három CSV-fájlból álló készletbe.

A kijelölt mappában általában a következő utótagokkal rendelkező CSV-fájlok láthatók:

  • SQLServerInstance_CommonDbLevel_Counters.csv: Statikus konfigurációs adatokat tartalmaz az adatbázisfájl elrendezéséről és metaadatairól.
  • SQLServerInstance_CommonInstanceLevel_Counters.csv: Statikus adatokat tartalmaz a kiszolgálópéldány hardverkonfigurációjáról.
  • SQLServerInstance_PerformanceAggregated_Counters.csv: A gyakran frissített összesített teljesítményadatokat tartalmazza.

Ez idő alatt hagyja nyitva az Azure Data Studiót, de folytathatja a többi műveletet. Bármikor leállíthatja az adatgyűjtési folyamatot. Ehhez térjen vissza erre a lapra, és válassza az Adatgyűjtés leállítása lehetőséget.

Megfelelő méretű javaslatok létrehozása

Ha már gyűjtött teljesítményadatokat egy előző munkamenetből, vagy egy másik eszközt (például a Database Migration Assistantet) használva, importálhatja a meglévő teljesítményadatokat a Már rendelkezem a teljesítményadatok lehetőség kiválasztásával. Válassza ki azt a mappát, ahová a teljesítményadatokat (három .csv fájlt) menti, majd válassza a Start lehetőséget a javaslati folyamat elindításához.

Képernyőkép egy termékváltozat-javaslat teljesítményadatainak importálására szolgáló panelről.

Megjegyzés

Az SQL-áttelepítési varázsló első lépése arra kéri, hogy válasszon ki egy kiértékelendő adatbáziskészletet, és ezek az egyetlen adatbázisok, amelyeket figyelembe vesz a javaslati folyamat során.

A teljesítményadat-gyűjtési folyamat azonban a forrás SQL Server példány összes adatbázisához teljesítményszámlálókat gyűjt, nem csak a kiválasztottakhoz.

Ez azt jelenti, hogy a korábban gyűjtött teljesítményadatokkal az adatbázisok egy másik részhalmazára vonatkozó javaslatok ismételt újragenerálhatók egy másik lista megadásával az első lépésben.

Javaslatok paraméterei

Több konfigurálható beállítás is van, amelyek hatással lehetnek a javaslatokra.

Képernyőkép a javaslati paraméterek szakaszról.

A Paraméterek szerkesztése lehetőséget választva igény szerint módosíthatja ezeket a paramétereket.

Képernyőkép a különböző javaslati paraméterekről.

  • Skálázási tényező:
    Ezzel a beállítással megadhat egy puffert, amely az egyes teljesítménydimenziókra vonatkozik. Ez a beállítás olyan problémákat ad vissza, mint a szezonális használat, a rövid teljesítményelőzmények és a jövőbeli használat valószínű növekedése. Ha például azt állapítja meg, hogy egy négy virtuális magra vonatkozó CPU-követelmény 150%-os skálázási tényezővel rendelkezik, a valódi CPU-követelmény hat virtuális mag.

    Az alapértelmezett méretezési tényezőkötet 100%.

  • Százalékos kihasználtság:
    A teljesítményadatokként használni kívánt adatpontok percentilisét a rendszer összesíti.

    Az alapértelmezett érték a 95. percentilis.

  • Előzetes verziójú funkciók engedélyezése:
    Ez a beállítás lehetővé teszi olyan konfigurációk használatát, amelyek még nem minden régió összes felhasználója számára érhetők el általánosan.

    Ez a beállítás alapértelmezés szerint ki van kapcsolva.

  • Rugalmas javaslat engedélyezése:

    Ez a lehetőség egy alternatív javaslatmodellt használ, amely személyre szabott ár-teljesítmény profilkészítést használ a meglévő felhőbeli ügyfelekkel szemben.

    Ez a beállítás alapértelmezés szerint ki van kapcsolva.

Fontos

Az adatgyűjtési folyamat leáll, ha bezárja az Azure Data Studiót. Az adott pontig összegyűjtött adatokat a rendszer a mappába menti.

Ha bezárja az Azure Data Studiót, amíg az adatgyűjtés folyamatban van, az adatgyűjtés újraindításához használja az alábbi lehetőségek egyikét:

  • Nyissa meg újra az Azure Data Studiót, és importálja a helyi mappába mentett adatfájlokat. Ezután hozzon létre egy javaslatot az összegyűjtött adatokból.
  • Nyissa meg újra az Azure Data Studiót, és indítsa újra az adatgyűjtést a migrálási varázslóval.

Minimális engedélyek

A teljesítményadatok gyűjtéséhez szükséges rendszernézetek lekérdezéséhez adott engedélyekre van szükség a feladathoz használt SQL Server bejelentkezéshez. A következő szkripttel létrehozhat egy minimális jogosultsággal rendelkező felhasználót az értékeléshez és a teljesítményadatok gyűjtéséhez:

-- Create a login to run the assessment
USE master;
GO

CREATE LOGIN [assessment] WITH PASSWORD = '<STRONG PASSWORD>';

-- Create user in every database other than TempDB and model and provide minimal read-only permissions
EXECUTE sp_MSforeachdb '
   USE [?];
   IF (''?'' NOT IN (''TempDB'',''model''))  
   BEGIN TRY
      CREATE USER [assessment] FOR LOGIN [assessment]
   END TRY
   BEGIN CATCH
      PRINT ERROR_MESSAGE()
   END CATCH'
   
EXECUTE sp_MSforeachdb '
   USE [?];
   IF (''?'' NOT IN (''tempdb'',''model''))  
   BEGIN TRY
      GRANT SELECT ON sys.sql_expression_dependencies TO [assessment]
   END TRY
   BEGIN CATCH
      PRINT ERROR_MESSAGE()
   END CATCH'
   
EXECUTE sp_MSforeachdb '
   USE [?];
   IF (''?'' NOT IN (''tempdb'',''model''))  
   BEGIN TRY
      GRANT VIEW DATABASE STATE TO [assessment]
   END TRY
   BEGIN CATCH
      PRINT ERROR_MESSAGE()
   END CATCH'

-- Provide server level read-only permissions
GRANT SELECT ON sys.sql_expression_dependencies TO [assessment];
GRANT SELECT ON sys.sql_expression_dependencies TO [assessment];
GRANT EXECUTE ON OBJECT::sys.xp_regenumkeys TO [assessment];
GRANT VIEW DATABASE STATE TO assessment;
GRANT VIEW SERVER STATE TO assessment;
GRANT VIEW ANY DEFINITION TO assessment;

-- Provide msdb specific permissions
USE msdb;
GO

GRANT EXECUTE ON [msdb].[dbo].[agent_datetime] TO [assessment];
GRANT SELECT ON [msdb].[dbo].[sysjobsteps] TO [assessment];
GRANT SELECT ON [msdb].[dbo].[syssubsystems] TO [assessment];
GRANT SELECT ON [msdb].[dbo].[sysjobhistory] TO [assessment];
GRANT SELECT ON [msdb].[dbo].[syscategories] TO [assessment];
GRANT SELECT ON [msdb].[dbo].[sysjobs] TO [assessment];
GRANT SELECT ON [msdb].[dbo].[sysmaintplan_plans] TO [assessment];
GRANT SELECT ON [msdb].[dbo].[syscollector_collection_sets] TO [assessment];
GRANT SELECT ON [msdb].[dbo].[sysmail_profile] TO [assessment];
GRANT SELECT ON [msdb].[dbo].[sysmail_profileaccount] TO [assessment];
GRANT SELECT ON [msdb].[dbo].[sysmail_account] TO [assessment];

-- USE master;
-- GO
-- EXECUTE sp_MSforeachdb 'USE [?]; BEGIN TRY DROP USER [assessment] END TRY BEGIN CATCH SELECT ERROR_MESSAGE() END CATCH';
-- DROP LOGIN [assessment];

Nem támogatott forgatókönyvek és korlátozások

  • Az Azure-javaslatok nem tartalmaznak árbecsléseket, mivel ez a helyzet a régiótól, a pénznemtől és az olyan kedvezményektől függően változhat, mint a Azure Hybrid Benefit. Az árbecslések lekéréséhez használja az Azure díjkalkulátorát, vagy hozzon létre egy SQL-értékelést az Azure Migrate-ben.
  • A DTU-alapú vásárlási modellel rendelkező Azure SQL-adatbázisra vonatkozó javaslatok nem támogatottak.
  • Az Azure-javaslatok jelenleg nem támogatottak Azure SQL adatbázis kiszolgáló nélküli számítási rétegéhez és rugalmas készleteihez.
  • Jelenleg a Prémium SSD v2-t használó Azure-beli virtuális gépeken SQL Server azure-beli javaslatok nem támogatottak.

Hibaelhárítás

  • Nincsenek létrehozott javaslatok
    • Ha nem jönnek létre javaslatok, ez a helyzet azt jelentheti, hogy nem azonosítottak olyan konfigurációkat, amelyek teljes mértékben megfelelnek a forráspéldány teljesítménykövetelményeinek. Annak érdekében, hogy láthassa, miért lett kizárva egy adott méret, szolgáltatási szint vagy hardvercsalád:
      • Nyissa meg a naplókat az Azure Data Studióból a Súgó Az összes parancs > megnyitása bővítménynaplók mappájának megjelenítéséhez > című témakörben.
      • Nyissa meg a Microsoft.mssql > SqlAssessmentLogs > lapot, és nyissa meg a SkuRecommendationEvent.log fájlt.
      • A napló tartalmazza az összes értékelt lehetséges konfiguráció nyomkövetését, valamint annak okát, hogy miért nem tekinthető megfelelő konfigurációnak: Képernyőkép a termékváltozat-javaslatok naplójáról.
    • Próbálja meg újragenerálni a javaslatot, ha engedélyezve van a rugalmas javaslat . Ez a lehetőség egy alternatív javaslatmodellt használ, amely személyre szabott ár-teljesítmény profilkészítést használ a meglévő felhőbeli ügyfelekhez.

Következő lépések