SQLShack

ez a cikk az Azure SQL Database Egybevetési konfigurációját, valamint az adatbázis BACPAC-fájlból történő importálása közben történő módosítását ismerteti.

Bevezetés

az összevetés olyan konfigurációra utal, amely meghatározza az adatbázismotor viselkedését a karakteradatkészlethez kiszolgáló, adatbázis vagy oszlop szintjén. Az SQL Server széles választékkal rendelkezik a nyelvi különbségek kezelésére a világ különböző részein. Rendezési szabályokat, kis-és nagybetűérzékenységet biztosít Unicode adattípusokhoz (nchar, Nvarchar vagy ntext) és nem Unicode-okhoz (char, varchar, nvarchar).

az SQL Server a következő összehasonlításokat támogatja.

  • Windows
  • bináris: a bináris leválogatás mindig _BIN vagy _BIN2
  • SQL Server: ezek az összeválogatási nevek mindig sql_

hagyományos (helyszíni) SQL Server esetén az operációs rendszer területi beállításai határozzák meg az alapértelmezett leválogatást. Az SQL Server telepítése vagy az operációs rendszer területi beállításainak módosítása során azonban módosíthatja a kiszolgálószintű egyeztetést. Az alapértelmezett SQL Server leválogatás sql_latin1_general_cp1_ci_as. Ezeket az összevetéseket részletesen megértheti az összevetés és az Unicode támogatás hivatkozásával.

követelmények

ez a cikk feltételezi, hogy alapvető ismeretekkel rendelkezik az Azure SQL adatbázisokról. Ha Ön kezdő, akkor olvassa el a meglévő cikkek SQL Azure sqlshack. A Microsoft Azure ingyenes jóváírását az alábbi URL-címen regisztrálhatja: https://azure.microsoft.com/en-us/free/

Azure SQL Database Collation

Azure SQL DB egy felügyelt PaaS-szolgáltatás az SQL Server számára, bizonyos korlátozásokkal és bizonyos feladatok végrehajtására vonatkozó korlátozásokkal. A helyszíni SQL Server kiszolgálóhoz hasonlóan az Azure DB is támogatja a különféle összevonásokat. Az Azure SQL DB támogatott összevetéseinek listájához lekérdezhetjük a sys-t.fn_helpcollations () függvény. 5508 egyezés listáját adja vissza. Az alábbi ábra bepillantást enged az összeállításba és a leírásokba.

 támogatott leválogatási lista

támogatott összevonási lista

Azure SQL DB esetén az SQL adatbázis létrehozása kiegészítő Beállítások lapján kiválaszthatja az adatbázis-összevonást. Amint az alább látható, az alapértelmezett egybevetés sql_latin1_general_cp1_ci_as néven jelenik meg.

ezt az összeállítást lebonthatjuk annak megértése érdekében.

  • SQL-arra utal, hogy ez egy SQL Server leválogatás
  • Latin1_General-ez a rész határozza meg a karakter rendezési szabály
  • CI-arra utal, hogy a kis-és nagybetűérzékeny
  • AS-ez határozza ékezetes érzékenység

az adatbázis létrehozása közben adja meg az összevonást

adatbázis létrehozása közben adja meg az egyezés keresése lehetőséget, és keresse meg az Azure DB-hez konfigurálni kívánt konkrét egyezést.

telepíthet egy Azure adatbázist egy meglévő Azure logikai kiszolgálón. Ezért, ha új Azure-adatbázist hoz létre SSMS használatával, a Beállítások oldalon megadhat egy adott összevetést.

ellenőrzés az SSMS-ben

ha T-SQL használatával hoz létre Azure SQL DB-t, akkor a leválogatás kulcsszóval megadhatja a szükséges DB-összevonást.

1
2
3

adatbázis létrehozása MyDemoSQLDB
LATIN1_GENERAL_100_CS_AS_SC leválogatása;
megy

az adatbázist a megfelelő összeállításban kell létrehoznia. Előfordulhat, hogy az SQL-lekérdezések nem működnek megfelelően az összevetés eltérése miatt. Ha azonban az Azure SQL adatbázis létrehozása után módosítania kell, ez nem egyszerű. Az Azure SQL DB nem támogatja az Alter adatbázis-leválogatás használatával történő leváltást. A következő hibaüzenet jelenik meg, ha megpróbálja megváltoztatni.

1
2
3
4

Use master
go
ALTER adatbázis Azuredemodatabase
SQL_LATIN1_GENERAL_CP1250_CI_AS leválogatása

módosítsa az összevonást a leválogatás funkcióval

  • Megjegyzés: ne módosítson vagy állítson be egy adott összevetést, amíg nem rendelkezik konkrét követelményekkel. Soha ne tegye közvetlenül a termelési adatbázisban. Alaposan tesztelje alacsonyabb DB-környezetben, majd tervezze meg a gyártási leválogatás folytatását

tegyük fel, hogy Azure SQL-adatbázist telepít a helyszíni BACPAC-fájlból. Más összevetést szeretne a céladatbázisban.

  • Megjegyzés: feltételezem, hogy aktív Azure SQL DB-vel rendelkezik. Ha nem, akkor ingyenes tier-fiókot használhat a tesztadatbázis telepítéséhez
  • ehhez a cikkbemutatóhoz a következő feladatokat hajtjuk végre:

    • exportálja az Azure SQL adatbázist BACPAC formátumban
    • telepítse a Microsoft SQL Server Data-Tier Application Framework alkalmazást (18.1)
    • modell módosítása.xml fájlkonfiguráció
    • használja az sqlpackage alkalmazást.exe az Azure database üzembe helyezése frissített összevonással
    • ellenőrizze az adatbázis-összevonást

    1.lépés: az Azure SQL adatbázis exportálása BACPAC formátumban

    ebben a lépésben az Azure SQL DB-t BACPAC formátumban exportáljuk. Ellenőrizhetjük, hogy a meglévő egyezés sql_latin1_general_cp1_ci_as.

     meglévő leválogatás ellenőrzése

    exportáláshoz kattintson a jobb gombbal az Azure database-re, és válassza az Adatok exportálása-tier alkalmazás lehetőséget…

    exportálja az Azure SQL adatbázist BACPAC formátumban

    exportálja az Azure SQL adatbázist BACPAC formátumban

    adja meg a könyvtárat a Mentés a helyi lemezre.

    Mentés helyi lemezre

    ellenőrizze, exportálja és figyelemmel kíséri az adatszintű alkalmazás előrehaladását BACPAC formátumban.

     állapot megtekintése

    állapot megtekintése

    2. lépés: Microsoft SQL Server Data-Tier Application Framework letöltése (18.1)

    le kell töltenie és telepítenie kell az SSDT legújabb verzióját. Keresse meg a https://www.microsoft.com/en-us/download/details.aspx?id=57784 URL-t, majd kattintson a Letöltés gombra.

     töltse le a Microsoft SQL Server Data-Tier Application Framework alkalmazást

    Microsoft SQL Server Data-Tier Application Framework letöltése

    válassza ki a kívánt MSI fájlverziót, majd töltse le. Ez egy könnyű csomagfájl.

     válasszon MSI-t

    válassza az MSI

    lehetőséget a Microsoft SQL Server Data-tier application framework beállításához kövesse a telepítővarázslót.

     telepítési folyamat

    telepítési folyamat

    telepítési folyamat üzenet

    telepítési folyamat üzenet

    a telepítés befejeződött

    telepítés befejeződött

    Lépés 3: nevezze át a. BACPAC fájl .ZIP

    ebben a lépésben átnevezzük az exportált BACPAC csomagfájlt ZIP formátumra. Ehhez kattintson a jobb gombbal az importált BACPAC-ra, és módosítsa a kiterjesztést ZIP-re. A Fájltípus tömörítve (tömörítve) van a kiterjesztés megváltoztatása után, amint az az alábbi ábrán látható.

     nevezze át a .BACPAC fájl .ZIP

    nevezze át a .BACPAC fájl .ZIP

    kérjük, kattintson a jobb gombbal a tömörített fájlra, és bontsa ki. A kibontott mappában talál egy modellt.xml, másolja a modellt.xml egy másik könyvtárba, például a C:\Temp mappa.

     modell, xml fájl

    modell, xml fájl

    nyissa meg a modellt.xml-től C:\Temp\Model.xml-t, és módosítsa a DB-összevonást. Az alábbi ábra az Azure SQL Database régi és új összevetéseit mutatja. Itt használjuk SQL leválogatás nagybetűérzékenység.

     az összevetés módosítása a modellben.xml

    módosítsa az összeállítást a modellben.xml

    4.lépés: az Azure Database telepítése az sqlpackage használatával.exe

    itt keresse meg a könyvtárat C:\Program fájlok \ Microsoft SQL Server \ 150 \ DAC \ bin parancssorban. Az sqlpackage-t használjuk.exe a BACPAC importálása a /ModelFilePath paraméterrel. Felülbírálja a BACPAC modell fájlkonfigurációját az ebben a paraméterben szereplő adott fájllal.

    szükséges paraméterek:

    • /tsn: adja meg azt az Azure SQL Server FQDN-t, amelybe importálni szeretnénk ezt a BACPAC fájlt. Az én esetemben ez azuredemosqldemo.database.windows.net
    • /tdn: ez az Azure SQL Database új neve. A BACPAC nem importálható meglévő adatbázisba
    • /tu: adja meg az adminisztrátori Felhasználónevet az Azure SQL Server használatához, és telepítse az adatbázist
    • / tp: Adja meg az admin felhasználó jelszavát
    • /sf: adja meg a BACPAC fájl helyét
    • /ModelFilePath: adja meg a frissített modellt.XML fájl elérési útja

    korábban megváltoztattuk a BACPAC fájl kiterjesztését ZIP-re. Vissza kell változtatnunk BACPAC-ra az sqlpackage futtatásához.exe parancs.

    a BACPAC-ban a leválogatás módosításához hajtsa végre a következő parancsot a parancssorban.

    sqlpackage.exe / Action: Importálás /tsn:azuredemosqldemo.database.windows.net /tdn:azuredemodatabasenew /tu: sqladmin /tp:******* /sf: C:\Temp\Azuredemodatabase.BACPAC / ModelFilePath: C: \ Temp \ modell.xml

    figyelmeztető üzenetet kap:

    “felülbíráló modell.xml fájl használata ‘ C:\Temp\model.xml’. Ennek a beállításnak a használata telepítési hibát és/vagy nem szándékos adatvesztést okozhat. Ez a beállítás csak akkor használható, ha a közzététel, importálás vagy szkriptgenerálás hibaelhárítása ”

    elindítja az adatok importálását, a táblák feldolgozását és az adatbázis telepítését. Az adatbázis telepítési ideje a táblák számától, az adatok méretétől, az indexektől függ.

     adatbázis telepítése az sqlpackage használatával.exe

    a végén megkapja az üzenetet – sikeresen importált adatbázis.

    sikeres importált adatbázis

    5.lépés: ellenőrzés

    most csatlakozzon az Azure Database-hez SSMS használatával, és ellenőrizze az adatbázis-összevetést a következő parancsfájl segítségével.

    1
    válassza a konvertálás lehetőséget (varchar(256), DATABASEPROPERTYEX(‘azuredemodatabasenew’,’leválogatás’));

    amint az alább látható, az újonnan telepített adatbázis az sql_latin1_general_cp1_cs_as összevonást használja.

    ellenőrizze az összevetést a telepített Azure SQL Database-ben

    Most jelentkezzen be az Azure portálra, és tekintse meg az adatbázis tulajdonságait. Ez az adatbázis általános célú Gen5, 2vcores árazási szinttel rendelkezik. Az adatbázis telepítése során nem adtunk meg árazási szintet. Ezért az Azure SQL adatbázis az alapértelmezett árazási szintet veszi fel.

     árképzési szintek megtekintése

    6. lépés: Az Azure database telepítése egy adott árazási rétegben

    tegyük fel, hogy módosított összevonással és alapárazási szinttel rendelkező adatbázist szeretnénk telepíteni. Ehhez a bemutatóhoz a DB-összevonást Latin1_General_BIN-re változtatjuk. Ezért nyissa meg a modellt.xml-t, és módosítsa az összehasonlítást a korábban kiemeltek szerint.

     változtassa meg a DB leválogatást Latin1_General_BIN értékre.

    ezúttal egy új paramétert(/p) adunk meg az adatbázis kiadás beállításához. Utasítja az Azure-t, hogy telepítse az adatbázist az adott árazási szint alatt.

    sqlpackage.exe / művelet: Import / tsn: azuredemosqldemo.adatbázis.windows.net /tdn:azuredemodatabasenew /tu: sqladmin /tp:****** /p:DatabaseEdition=alap /sf: C:\Temp\Azuredemodatabase.BACPAC / ModelFilePath: C: \ Temp \ modell.xml

    üzembe helyezési csomag

    a DB telepítése után ellenőrizze az adatbázis-összeállítást. Amint az alább látható, latin1_general_bin leválogatást használ.

     DB-összevetés ellenőrzése

    DB-összevetés ellenőrzése

    csatlakozhat az Azure portálhoz, és ellenőrizheti, hogy az árazási szint alapszintű-e.

     árképzési szint ellenőrzése

    • Megjegyzés: Ne módosítsa a DB-összevonást külön követelmények nélkül. Problémát okozhat, ha önkényesen módosítja

    következtetés

    ez a cikk Az alapértelmezett Azure SQL adatbázis-leválogatást, valamint a DB BACPAC-fájlból történő importálása során a módosítás folyamatát vizsgálta. Megadhatja a kívánt leválogatást, és telepítheti az adatbázist. Soha ne változtassa meg az összevetést, hacsak nincs konkrét követelménye. A lépéseket saját Azure SQL database tesztjén is kipróbálhatja.

    • szerző
    • Legutóbbi hozzászólások
    Rajendra Gupta
    mint egy MCSA certified és a Microsoft Certified Trainer Gurgaon, India, 13 éves tapasztalattal, Rajendra dolgozik a különböző nagyvállalatok összpontosítva teljesítmény optimalizálás, monitoring, magas rendelkezésre állás, és katasztrófa-helyreállítási stratégiák és végrehajtása. Több száz hiteles cikk szerzője az SQL Server, az Azure, a MySQL, a Linux, a Power BI, a Performance tuning, az AWS/Amazon RDS, a Git és a kapcsolódó technológiák területén, amelyeket eddig több mint 10 millió olvasó nézett meg.
    az egyik legnagyobb ingyenes online cikkgyűjtemény megalkotója egyetlen témában, az SQL Server Always On Availability Groups című 50 részes sorozatával. Az SQL Server közösséghez való hozzájárulása alapján számos díjjal ismerték el, köztük a rangos “az év legjobb szerzője” 2020-ban és 2021-ben folyamatosan az SQLShack-en.
    Raj mindig érdeklődik az új kihívások iránt, így ha tanácsadói segítségre van szüksége az írásaiban szereplő bármely témában, el lehet érni rajendrában.gupta16 @ gmail.com
    Rajendra Gupta összes hozzászólásának megtekintése

    Rajendra Gupta
    Rajendra Gupta legújabb hozzászólásai (az összes megtekintése)
    • ARM sablonok használata az Azure konténerpéldányok telepítéséhez SQL Server Linux képekkel – December 21, 2021
    • Távoli asztali hozzáférés AWS RDS SQL Server számára Amazon RDS Custom-December 14, 2021
    • az SQL Server fájlok tárolása az Azure Konténerpéldányok állandó tárolójában-December 10, 2021

Vélemény, hozzászólás?

Az e-mail-címet nem tesszük közzé.