SQL Server Express LocalDB (helyi adatbáziskezelő szoftver)

A következőkre vonatkozik:SQL Server

A Microsoft SQL Server Express LocalDB az SQL Server Express fejlesztőknek megcélzott funkciója. Az SQL Server 2025 (17.x) és újabb verzióiban a LocalDB az SQL Server Express kiadás részét képezi. Az SQL Server 2022 (16.x) és korábbi verzióiban a LocalDB az Advanced Servicest használó SQL Server Express kiadásban érhető el.

A LocalDB telepítése az SQL Server adatbázismotor elindításához szükséges minimális fájlkészletet másolja. A LocalDB telepítése után egy speciális kapcsolati sztring használatával kezdeményezhet kapcsolatot. Csatlakozáskor a rendszer automatikusan létrehozza és elindítja a szükséges SQL Server-infrastruktúrát, így az alkalmazás összetett konfigurációs feladatok nélkül használhatja az adatbázist. A fejlesztői eszközök olyan SQL Server-adatbázismotort biztosíthatnak a fejlesztőknek, amely lehetővé teszi Transact-SQL kód írását és tesztelését anélkül, hogy az SQL Server teljes kiszolgálópéldányát kellene kezelniük.

Telepítési adathordozó

A LocalDB egy olyan funkció, amelyet az SQL Server Express telepítése során választ ki, és az adathordozó letöltésekor érhető el. Az SQL Server 2025 (17.x) és újabb verziói esetében a LocalDB az Express kiadás letöltési része. Az SQL Server 2022 (16.x) és a korábbi verziók esetében a kiadás neve Express Advanced, és letöltéskor ezt vagy az önálló LocalDB-csomagot választhatja.

A LocalDB telepítő SqlLocalDB.msi az Express Core kivételével minden kiadáshoz elérhető a telepítési adathordozón. A mappában <installation_media_root>\<LCID>_ENU_LP\x64\Setup\x64 található. Az LCID egy területi azonosító vagy nyelvi kód. Az 1033-ás LCID-érték például a en-US területi beállításra hivatkozik.

Másik lehetőségként telepítheti a LocalDB-t a Visual Studio Installeren keresztül, az adattárolási és feldolgozási számítási feladat, a ASP.NET és a webfejlesztési számítási feladat részeként, vagy önálló összetevőként.

A LocalDB telepítése

Telepítse a LocalDB-t a telepítővarázslón vagy a SqlLocalDB.msi program használatával. A LocalDB egy lehetőség az SQL Server Express LocalDB telepítésekor.

A telepítés során válassza a LocalDB lehetőséget a Szolgáltatás kiválasztása/Megosztott szolgáltatások lapon. A LocalDB bináris fájljainak csak egy telepítése lehet az SQL Server-adatbázismotor egyes fő verzióihoz. Több adatbázismotor-folyamat is elindítható, és mindegyik ugyanazokat a bináris fájlokat használja. Az SQL Server adatbázismotor egy példánya úgy indult el, hogy a LocalDB ugyanazokkal a korlátozásokkal rendelkezik, mint az SQL Server Express.

Az SQL Server Express LocalDB egy példányát a SqlLocalDB.exe segédprogrammal felügyeli. Az SQL Server Express LocalDB-t az elavult SQL Server Express felhasználói példány funkció helyett kell használni.

Leírás

A LocalDB telepítőprogram a SqlLocalDB.msi program használatával telepíti a szükséges fájlokat a számítógépre. A telepítés után a LocalDB az SQL Server Express egy példánya, amely SQL Server-adatbázisokat hozhat létre és nyithat meg. Az adatbázis rendszeradatbázis-fájljai a helyi AppData elérési úton vannak tárolva, amely általában rejtett. Például: %LOCALAPPDATA%\Microsoft\Microsoft SQL Server Local DB\Instances\LocalDBApp1\. A felhasználói adatbázis fájljait a rendszer a felhasználó által kijelölt helyen tárolja, általában valahol a %LOCALAPPDATA%\Microsoft\Microsoft SQL Server Local DB\Instances\<InstanceName> mappában.

További információ a LocalDB alkalmazásba való felvételéről: Visual Studio Local Data Overview, Create a database and add tables in Visual Studio.

A LocalDB API-val kapcsolatos további információkért lásd az SQL Server Express LocalDB-referenciát.

A SqlLocalDB segédprogram létrehozhatja a LocalDB új példányait, elindíthatja és leállíthatja a LocalDB egy példányát, és olyan beállításokat is tartalmaz, amelyekkel kezelheti a LocalDB-t. A segédprogrammal kapcsolatos további információkért tekintse meg az SqlLocalDBSqlLocalDB segédprogramot.

A LocalDB példány összeállítás SQL_Latin1_General_CP1_CI_AS értékre van állítva, és nem módosítható. Az adatbázisszintű, az oszlopszintű és a kifejezésszintű rendezések általában támogatottak. A tartalmazott adatbázisok a metaadatokra és a tempdb rendezési szabályokra vonatkozóan a tartalmazott adatbázis-rendezések által meghatározott szabályokat követik.

Korlátozások

  • A LocalDB nem felügyelhető távolról az SQL Server Management Studióval.

  • A LocalDB nem lehet egyesítési replikáció előfizetője.

  • A LocalDB nem támogatja a FILESTREAM-et.

  • A LocalDB csak helyi üzenetsorokat engedélyez a Service Broker számára.

  • A beépített fiókok tulajdonában lévő LocalDB-példányok, például NT AUTHORITY\SYSTEM a Windows fájlrendszer átirányítása miatt kezelhetőségi problémákat okozhatnak. Ehelyett használjon egy normál Windows-fiókot tulajdonosként.

Automatikus és elnevezett példányok

A LocalDB kétféle példányt támogat: az automatikus példányokat és az elnevezett példányokat. A számítógép különböző felhasználói azonos nevű példányokkal rendelkezhetnek. Minden példány a megfelelő felhasználóként fut a saját folyamatában.

Automatikus példányok

A LocalDB automatikus példányai nyilvánosak. A rendszer automatikusan létrehozza és kezeli őket a felhasználó számára, és bármely alkalmazás használhatja őket. A LocalDB egy automatikus példánya létezik a felhasználó számítógépén telepített LocalDB minden verziójához. A LocalDB automatikus példányai zökkenőmentes példánykezelést biztosítanak. Nincs szükség a példány létrehozására; ez csak működik. Ez a funkció lehetővé teszi az alkalmazások egyszerű telepítését és áttelepítését egy másik számítógépre. Ha a célszámítógépen telepítve van a LocalDB megadott verziója, akkor az adott verzióhoz tartozó LocalDB automatikus példánya is elérhető a célgépen. A LocalDB automatikus példányai speciális névképzési mintázattal rendelkeznek, amely a fenntartott névtartományhoz tartozik. Az automatikus példányok megakadályozzák a névütközéseket a LocalDB elnevezett példányaival. Az automatikus példány neve MSSQLLocalDB.

Elnevezett példányok

A LocalDB nevesített példányai privátak. Egyetlen alkalmazás tulajdonában vannak, amely a példány létrehozásáért és kezeléséért felelős. Az elnevezett példányok elkülönítést biztosítanak más példányoktól, és a többi adatbázis-felhasználóval való erőforrás-versengés csökkentésével javíthatják a teljesítményt. Kifejezetten a LocalDB felügyeleti API-n keresztül, vagy a app.config fájl használatával kell nevesített példányokat létrehoznia egy felügyelt alkalmazás esetén (bár szükség esetén a felügyelt alkalmazás az API-t is használhatja). A LocalDB minden elnevezett példánya rendelkezik egy localDB-verzióval, amely a LocalDB bináris fájljainak megfelelő készletére mutat. A LocalDB példányneve a sysname adattípus, amely legfeljebb 128 karakter hosszúságú lehet. (Ez a példánynév különbözik az SQL Server normál nevesített példányaitól, amely a neveket 15 ASCII-karakterből álló normál NetBIOS-nevekre korlátozza.) A LocalDB-példány neve bármilyen Unicode-karaktert tartalmazhat, amely egy fájlnéven belül legális. Az elnevezett példány, amely automatikus példánynevet használ, automatikus példánnyá válik.

A LocalDB megosztott példányai

Az olyan forgatókönyvek támogatásához, ahol a számítógép több felhasználójának csatlakoznia kell a LocalDB egyetlen példányához, a LocalDB támogatja a példánymegosztást. A példány tulajdonosa dönthet úgy, hogy engedélyezi a számítógép többi felhasználójának a példány csatlakoztatását. A LocalDB automatikus és elnevezett példányai is megoszthatók. A LocalDB egy példányának megosztásához a felhasználó kiválaszt egy megosztott nevet (aliast). Mivel a megosztott név a számítógép összes felhasználója számára látható, ennek a megosztott névnek egyedinek kell lennie a számítógépen. A LocalDB egy példányának megosztott neve ugyanazzal a formátummal rendelkezik, mint a LocalDB elnevezett példánya.

A LocalDB megosztott példányát csak a számítógépen lévő rendszergazda hozhatja létre. A LocalDB megosztott példányait a rendszergazda vagy a LocalDB megosztott példányának tulajdonosa megszüntetheti. A LocalDB egy példányának megosztásához vagy megosztásának megszüntetéséhez használja a LocalDB API LocalDBShareInstance és LocalDBUnShareInstance metódusait, vagy a SqlLocalDB segédprogram megosztás vagy megszüntetés opcióit.

Indítsa el a LocalDB-t, és csatlakozzon a LocalDB-hez

Ez a szakasz azt ismerteti, hogyan csatlakozhat automatikus példányhoz, elnevezett példányhoz vagy megosztott példányhoz.

Csatlakozás az automatikus instance-hez

A LocalDB használatának legegyszerűbb módja, ha a kapcsolati sztring Server=(localdb)\MSSQLLocalDB;Integrated Security=truehasználatával csatlakozik az aktuális felhasználó tulajdonában lévő automatikus példányhoz. Ha egy adott adatbázishoz a fájlnév használatával szeretne csatlakozni, a következőhöz hasonló kapcsolati sztring használatával csatlakozhat.Server=(LocalDB)\MSSQLLocalDB;Integrated Security=true;AttachDbFileName=D:\Data\MyDB1.mdf

Megjegyzés:

Amikor egy számítógép felhasználója először próbál csatlakozni a LocalDB-hez, az automatikus példányt létre kell hozni és el kell indítani. A példány létrehozására fordított extra idő miatt a kapcsolati kísérlet sikertelen lehet, és időtúllépési üzenetet eredményezhet. Ha ez történik, várjon néhány másodpercet, hogy befejezze a létrehozási folyamatot, majd csatlakozzon újra.

Névvel ellátott példány létrehozása és csatlakozás

Az automatikus példány mellett a LocalDB a nevesített példányokat is támogatja. A program használatával SqlLocalDB.exe létrehozhatja, elindíthatja és leállíthatja a LocalDB nevesített példányát. További információ: SqlLocalDB.exeSqlLocalDB segédprogram.

REM Create an instance of LocalDB
"C:\Program Files\Microsoft SQL Server\160\Tools\Binn\SqlLocalDB.exe" create LocalDBApp1
REM Start the instance of LocalDB
"C:\Program Files\Microsoft SQL Server\160\Tools\Binn\SqlLocalDB.exe" start LocalDBApp1
REM Gather information about the instance of LocalDB
"C:\Program Files\Microsoft SQL Server\160\Tools\Binn\SqlLocalDB.exe" info LocalDBApp1

Az előző kódminta utolsó sora az alábbi táblázathoz hasonló adatokat ad vissza.

Kategória Érték
Név LocalDBApp1
verzió <Current version>
Megosztott név ""
Tulajdonos <Your Windows user>
Automatikus létrehozás No
State Running
Utolsó kezdési időpont <Date and time>
Példány csatorna neve np:\\.\pipe\LOCALDB#F365A78E\tsql\query

Megjegyzés:

Ha az alkalmazás a .NET-keretrendszer 4.0.2 előtti verzióját használja, közvetlenül a LocalDB nevesített csőjéhez kell csatlakoznia. A Példány csőnév értéke az a névvel ellátott cső, amelyet a LocalDB-példány figyel. A Példány csőnév LOCALDB# utáni része minden alkalommal megváltozik, amikor a LocalDB-példány elindul. Ha az SQL Server Management Studio használatával szeretne csatlakozni a LocalDB-példányhoz, írja be a példány csőnevét a Csatlakozás adatbázismotorhoz párbeszédpanel Kiszolgálónév mezőjébe. Az egyéni programból kapcsolatot létesíthet a LocalDB-példányhoz a következőhöz hasonló kapcsolati sztring használatával: SqlConnection conn = new SqlConnection(@"Server=np:\\.\pipe\LOCALDB#F365A78E\tsql\query");

Csatlakozás a LocalDB megosztott példányához

A LocalDB megosztott példányához való csatlakozáshoz adja hozzá a kapcsolati lánchoz a \.\ (fordított perjel + pont + fordított perjel) karakterláncot, hogy a megosztott példányok számára fenntartott névtérre hivatkozhasson. Ha például egy AppData nevű LocalDB megosztott példányhoz szeretne csatlakozni, használjon olyan kapcsolati karakterláncot, mint (localdb)\.\AppData. A nem a tulajdonában lévő LocalDB megosztott példányához csatlakozó felhasználóknak Windows-hitelesítéssel vagy SQL Server-hitelesítéssel kell rendelkezniük.

Hibaelhárítás

A LocalDB egyszerűsített példányként fut az aktuális felhasználó környezetében, ami azt jelenti, hogy a legtöbb probléma a kiszolgálószintű konfiguráció helyett a példány állapotával, a fájlengedélyekkel vagy a verzióeltérésekkel kapcsolatos. Az alábbi lépések segíthetnek a LocalDB leggyakoribb problémáinak diagnosztizálásában és megoldásában.

Frissítés a legújabb verzióra

Számos gyakori LocalDB-probléma megoldásához frissítsen az SQL Server Express legújabb verziójára. Töltse le a legújabb verziót a telepítési adathordozóról , és telepítse a LocalDB-t. Az újabb verzió lecseréli a meglévő LocalDB bináris fájlokat, és tartalmazza az ismert stabilitási és kompatibilitási problémák javítását.

A frissítés után törölje és hozza létre újra a példányokat a frissített bináris fájlok használatához:

sqllocaldb stop MSSQLLocalDB
sqllocaldb delete MSSQLLocalDB
sqllocaldb create MSSQLLocalDB
sqllocaldb start MSSQLLocalDB

Figyelmeztetés

A példány törlése eltávolítja az adott példányhoz társított összes adatbázist. A törlés előtt biztonsági másolatot készít a fontos adatokról.

A telepítés és a példány állapotának ellenőrzése

Futtassa a következő parancsokat a LocalDB telepítésének megerősítéséhez és a példány állapotának ellenőrzéséhez:

sqllocaldb info
sqllocaldb info MSSQLLocalDB

Az első parancs felsorolja az összes példányt. A második parancs egy adott példány verzióját, tulajdonosát és állapotát (Futtatás vagy Leállítva) jeleníti meg. Ha sqllocaldb a rendszer nem ismeri fel, előfordulhat, hogy a LocalDB nincs telepítve, vagy a telepítési útvonal nem szerepel a rendszerváltozóban PATH .

Nem futó példány indítása:

sqllocaldb start MSSQLLocalDB

Hibanaplók áttekintése

A LocalDB hibanaplókat ír a felhasználó mappájába AppData :

%LOCALAPPDATA%\Microsoft\Microsoft SQL Server Local DB\Instances\MSSQLLocalDB\error.log

Nyissa meg ezt a fájlt egy szövegszerkesztőben, és ellenőrizze, hogy vannak-e bizonyos hibaüzenetek, indítási hibák vagy konfigurációs problémák.

Engedélyek

Az SQL Server Express LocalDB példánya egy felhasználó által a használatukhoz létrehozott példány. A számítógép bármely felhasználója létrehozhat egy adatbázist a LocalDB egy példányával, tárolhat fájlokat a felhasználói profilja alatt, és futtathatja a folyamatot a hitelesítő adataik alatt. Alapértelmezés szerint a LocalDB-példányhoz való hozzáférés a tulajdonosára korlátozódik. A LocalDB-ben tárolt adatokat a fájlrendszer az adatbázisfájlokhoz való hozzáférése védi. Ha a felhasználói adatbázis fájljai megosztott helyen vannak tárolva, az adatbázist bárki megnyithatja, aki fájlrendszerbeli hozzáféréssel rendelkezik ehhez a helyhez, a tulajdonában lévő LocalDB-példány használatával. Ha az adatbázisfájlok védett helyen vannak, például a felhasználók adatmappájában, csak az adott felhasználó és a mappához hozzáféréssel rendelkező rendszergazdák nyithatják meg az adatbázist. A LocalDB-fájlokat egyszerre csak a LocalDB egy példánya nyithatja meg.

A LocalDB mindig a felhasználó biztonsági környezetében fut. A LocalDB soha nem fut a helyi Rendszergazdák csoport hitelesítő adataival. Ez azt jelenti, hogy a LocalDB-példányok által használt összes adatbázisfájlnak elérhetőnek kell lennie a tulajdonos felhasználó Windows-fiókjával anélkül, hogy figyelembe kellene vennie a helyi Rendszergazdák csoport tagságát.