Jegyzet
Az oldalhoz való hozzáférés engedélyezést igényel. Próbálhatod be jelentkezni vagy könyvtárat váltani.
Az oldalhoz való hozzáférés engedélyezést igényel. Megpróbálhatod a könyvtár váltását.
A következőkre vonatkozik: SQL Server 2019 (15.x) és újabb verziók
Megtudhatja, hogyan telepítheti a .NET Language Extension összetevőt (amelyet a C#használ) az SQL Serverhez Windows rendszeren. A .NET nyelvi bővítmény az SQL Server nyelvi bővítményeinek része.
Megjegyzés:
Ez a cikk az SQL Server .NET nyelvi bővítményének windowsos telepítéséről szól. A Linux nem támogatott.
Előfeltételek
Megjegyzés:
A funkciók képességei és a telepítési lehetőségek az SQL Server különböző verzióiban eltérőek. Az SQL Server megfelelő verziójának kiválasztásához használja a verzióválasztó legördülő listát.
Az SQL Server telepítése szükséges, ha telepíteni szeretné a .NET nyelvi bővítmény támogatását.
A .NET nyelvi bővítmény támogatja a .NET 6 és újabb futtatókörnyezeteket, és csak Windows rendszeren támogatott.
Adatbázismotor-példányra van szükség. Nem telepítheti csak a .NET nyelvi bővítmény funkcióit, bár növekményesen hozzáadhatja őket egy meglévő példányhoz.
Az üzletmenet folytonossága érdekében az Always On rendelkezésre állási csoportok támogatottak a nyelvi bővítmények esetében. Minden csomóponton telepítenie kell a nyelvi bővítményeket, és konfigurálnia kell a csomagokat. A .NET nyelvi bővítmény telepítése az SQL Server feladatátvevő fürtpéldányán is támogatott.
Ne telepítse az SQL Server nyelvi bővítményeit vagy a .NET nyelvi bővítményt tartományvezérlőre. A Nyelvi bővítmények beállítási része sikertelen.
A Language Extensions és a Machine Learning Services alapértelmezés szerint telepítve van az SQL Server Big Data-fürtökön. Big Data-fürtök használata esetén nem kell követnie a cikkben leírt lépéseket. További információ: Python- és R-szkriptek futtatása Machine Learning Services használatával SQL Server 2019 Big Data-fürtökön.
Fontos
A telepítés befejezése után mindenképpen végezze el a cikkben ismertetett konfiguráció utáni lépéseket. Ezek a lépések közé tartozik, hogy az SQL Server külső kódot használjon, és olyan fiókokat adjon hozzá, amelyek szükségesek ahhoz, hogy az SQL Server C#-kódot futtasson az Ön nevében. A konfigurációs módosítások általában a példány újraindítását vagy a Launchpad szolgáltatás újraindítását igénylik.
.NET-futtatókörnyezet
A .NET 6 hosszú távú támogatása (LTS) a legkorábbi támogatott futtatókörnyezet. A Windows .NET-futtatókörnyezetét letöltheti . A Linux nem támogatott.
Ha a .NET-futtatókörnyezet legújabb LTS-kiadását szeretné használni, újra kell lefordítania a .NET nyelvi bővítményt.
A telepítési adathordozó lekérése
Az SQL Server letöltési helye a kiadástól függ:
SQL Server Enterprise, Standard és Express kiadások. Ezek a kiadások éles használatra vannak licencelve. Az Enterprise és Standard kiadások esetén forduljon a szoftver gyártójához a telepítési adathordozóhoz. A vásárlási információkat és a Microsoft-partnerek címtárát a Microsoft vásárlási webhelyén találja.
A telepítő futtatása
Helyi telepítések esetén rendszergazdaként kell futtatnia a telepítőt. Ha távoli megosztásból telepíti az SQL Servert, olyan tartományi fiókot kell használnia, amely olvasási és végrehajtási engedélyekkel rendelkezik a távoli megosztáson.
Indítsa el az SQL Server telepítővarázslót.
A Telepítés lapon válassza az Új SQL Server önálló telepítését, vagy adjon hozzá funkciókat egy meglévő telepítéshez.
A Funkciókijelölés lapon válassza az alábbi beállításokat:
Adatbázismotor-szolgáltatások: Ha nyelvi bővítményeket szeretne használni az SQL Serverrel, telepítenie kell az adatbázismotor egy példányát. Használhat alapértelmezett vagy elnevezett példányt is.
Machine Learning Services és nyelvi bővítmények: Ez a beállítás telepíti a C# kódvégrehajtást támogató Language Extensions összetevőt.
A Telepítésre kész lapon ellenőrizze, hogy ezek a beállítások szerepelnek-e, majd válassza a Telepítés lehetőséget.
- Adatbázismotor-szolgáltatások
- Machine Learning Services és nyelvi bővítmények
Jegyezze fel a mappa helyét a konfigurációs fájlok tárolási útvonala
..\Setup Bootstrap\Logalatt. Ha a telepítés befejeződött, áttekintheti a telepített összetevőket az Összegző fájlban.A telepítés befejezése után, ha a rendszer arra utasítja, hogy indítsa újra a számítógépet, tegye meg most. Fontos, hogy a telepítő befejezésekor olvassa el a telepítővarázsló üzenetét. További információt az SQL Server telepítő naplófájljainak megtekintése és olvasása című témakörben talál.
A nyelvi bővítmény regisztrálása
Az alábbi lépéseket követve töltse le és regisztrálja a C# kód futtatásához használt .NET nyelvi bővítményt.
Töltse le a fájlt az
dotnet-core-CSharp-lang-extension-windows-release.zipSQL Server GitHub-adattár .NET nyelvi bővítményéből. Töltse le a legújabb Windows-fájltdotnet-core-CSharp-lang-extension-windows-release.zip. Ha egy újabb .NET-futtatókörnyezetet szeretne használni, a GitHub forráskódjából kell lefordítaniadotnet-core-CSharp-lang-extension.Az SQL Server Management Studio (SSMS) használatával csatlakozzon az SQL Server-példányhoz, és futtassa a következő Transact-SQL (T-SQL) parancsot a .NET nyelvi bővítmény regisztrálásához a CREATE EXTERNAL LANGUAGE használatával.
Módosítsa az ebben az utasításban szereplő elérési utat a letöltött nyelvbővítmény zip-fájljának (
dotnet-core-CSharp-lang-extension-windows-release.zip) helyének megfelelően.
CREATE EXTERNAL LANGUAGE [dotnet] FROM (CONTENT = N'C:\path\to\dotnet-core-CSharp-lang-extension-windows-release.zip', FILE_NAME = 'dotnetextension.dll'); GOIndítsa újra a Launchpadet.
Nyissa meg SQL Server Configuration Manager.
Az SQL Server Services területen kattintson a jobb gombbal az SQL Server Launchpadre, és válassza az Újraindítás lehetőséget.
A szolgáltatás újraindítása
Ha a telepítés befejeződött, indítsa újra az adatbázismotort, mielőtt továbblép a következő lépésre, és engedélyezi a szkript végrehajtását.
A szolgáltatás újraindítása automatikusan újraindítja a kapcsolódó SQL Server Launchpad szolgáltatást is.
A szolgáltatás újraindításához kattintson a jobb gombbal az SSMS-példány Újraindítás parancsára, a Vezérlőpult Szolgáltatások paneljén vagy az SQL Server Configuration Manager használatával.
Szkript végrehajtásának engedélyezése
Nyissa meg az SQL Server Management Studiót. Csatlakozzon ahhoz a példányhoz, ahol telepítette a Nyelvi bővítményeket, válassza az Új lekérdezés lehetőséget egy lekérdezési ablak megnyitásához, és futtassa a következő parancsot:
EXECUTE sp_configure;A funkció alapértelmezés szerint ki van kapcsolva (
valuevan0), és a C#-kód futtatása előtt a rendszergazdának explicit módon engedélyeznie kell.A külső szkriptelési funkció engedélyezéséhez futtassa a következő utasítást:
EXECUTE sp_configure 'external scripts enabled', 1; GO RECONFIGURE WITH OVERRIDE; GOHa már engedélyezte a Machine Learning Services szolgáltatását, ne futtassa újra a nyelvi bővítmények újrakonfigurálását. A mögöttes bővíthetőségi platform mindkettőt támogatja.
Külső nyelv regisztrálása
Minden olyan adatbázishoz, amelyben nyelvi bővítményeket szeretne használni, regisztrálnia kell a külső nyelvet a CREATE EXTERNAL LANGUAGE használatával.
Az alábbi példa egy külső nyelvet ad dotnet hozzá egy windowsos SQL Serveren futó adatbázishoz.
CREATE EXTERNAL LANGUAGE [dotnet]
FROM (CONTENT = N'<path-to-zip>', FILE_NAME = 'dotnetextension.dll');
GO
További információ: CREATE EXTERNAL LANGUAGE.
Telepítés ellenőrzése
Ellenőrizze a példány telepítési állapotát a telepítési naplókban.
Az alábbi lépésekkel ellenőrizheti, hogy a külső szkript indításához használt összes összetevő fut-e.
Az SQL Server Management Studióban vagy az Azure Data Studióban nyisson meg egy új lekérdezési ablakot, és futtassa a következő utasítást:
EXECUTE sp_configure 'external scripts enabled';A
run_valuebeállítás ekkor a következőre van1állítva: .Nyissa meg a Szolgáltatások panelt vagy az SQL Server Configuration Managert, és ellenőrizze, hogy fut-e az SQL Server Launchpad szolgáltatás . Minden olyan adatbázismotor-példányhoz rendelkeznie kell egy szolgáltatással, amely rendelkezik telepített nyelvi bővítményekkel. A szolgáltatással kapcsolatos további információkért lásd: Bővíthetőségi architektúra az SQL Server Language Extensionsben.
További konfiguráció
Ha az ellenőrzési lépés sikeres volt, futtathat C#-kódot az SQL Server Management Studióból, az Azure Data Studióból, a Visual Studio Code-ból vagy bármely más ügyfélből, amely T-SQL-utasításokat küldhet a kiszolgálónak.
Ha a parancs futtatásakor hibaüzenetet kapott, tekintse át a jelen szakaszban található további konfigurációs lépéseket. Előfordulhat, hogy további megfelelő konfigurációkat kell létrehoznia a szolgáltatáshoz vagy az adatbázishoz.
A példány szintjén további konfigurációk lehetnek a következők:
- Az SQL Server Machine Learning Services tűzfalkonfigurációja
- Kiszolgálói hálózati protokoll engedélyezése vagy letiltása
- kiszolgáló konfigurálása: távoli hozzáférés
- Bejelentkezés létrehozása az SQLRUserGroup szolgáltatáshoz
Az adatbázisban a következő konfigurációs frissítésekre lehet szükség:
- Python- és R-szkriptek SQL Server Machine Learning Services használatával történő végrehajtásához az adatbázis felhasználóinak engedélyt ad
- Adott nyelv végrehajtásának engedélyezése a felhasználóknak
Megjegyzés:
Az, hogy további konfigurációra van-e szükség, a biztonsági sémától, az SQL Server telepítésének módjától, valamint attól függ, hogy a felhasználók hogyan csatlakozhatnak az adatbázishoz, és hogyan futtathatnak külső szkripteket.
Javasolt optimalizálások
Most, hogy minden működik, érdemes lehet optimalizálni a kiszolgálót a .NET language extension támogatásához.
A kiszolgáló optimalizálása .NET nyelvi bővítményhez
Az SQL Server beállításának alapértelmezett beállításai arra szolgálnak, hogy optimalizálják a kiszolgáló egyensúlyát az adatbázismotor által támogatott különféle szolgáltatásokhoz, amelyek lehetnek például az SQL Server-adatokat használó folyamatok kinyerése, átalakítása és betöltése (ETL), jelentéskészítés, naplózás és alkalmazások. Ezért az alapértelmezett beállítások között előfordulhat, hogy a nyelvi bővítmények erőforrásai néha korlátozottak vagy szabályozva vannak, különösen a memóriaigényes műveletek esetében.
Annak érdekében, hogy a nyelvi bővítmények feladatai rangsorolása és erőforrás-erőforrás-beállítása megfelelő legyen, javasoljuk, hogy az SQL Server Resource Governor használatával konfiguráljon egy külső erőforráskészletet. Érdemes lehet módosítani az adatbázismotor számára lefoglalt memória mennyiségét, vagy növelni az SQL Server Launchpad szolgáltatásban futó fiókok számát.
Ha külső erőforrások kezelésére szeretne erőforráskészletet konfigurálni, olvassa el a CREATE EXTERNAL RESOURCE POOL (Transact-SQL) című témakört.
Az adatbázis számára fenntartott memória mennyiségének módosításához tekintse meg a kiszolgáló memóriakonfigurációs beállításait.
Ha Standard kiadást használ, és nem rendelkezik erőforrás-kormányzóval, dinamikus felügyeleti nézeteket (DMV-ket) és bővített eseményeket, valamint Windows-eseményfigyelést használhat a kiszolgáló erőforrásainak kezeléséhez.
Következő lépés
A C#-fejlesztők megismerkedhetnek néhány egyszerű példával, és megismerkedhetnek a C# SQL Serverrel való működésének alapjaival. A következő lépéshez tekintse meg a következő hivatkozást: