Ist es normal, LocalDb in der Produktion zu verwenden?

Ist es normal, LocalDb in der Produktion zu verwenden?

LocalDB wird in der Produktion uneingeschränkt unterstützt. Aus Leistungssicht ist es identisch mit SQL Server Express, da sie die gleiche Datenbank-Engine verwenden.

Nun, für eine Website, die in vollem IIS ausgeführt wird, würde ich die Verwendung einer dienstbasierten Instanz von SQL Server Express empfehlen. Da IIS als Dienst ausgeführt wird, ist es am besten, auch eine vom Dienst gehostete Datenbank zu haben. Das heißt, Sie sollten nicht verwende User Instance=true oder AttachDbFileName=... in Ihrer Verbindungszeichenfolge.

Wenn Sie mehr erfahren möchten, empfehle ich diesen Beitrag zur Verwendung von LocalDB aus dem vollständigen IIS, Teil 1, und dessen Nachfolge, Teil 2. Sie gehen auf weitere Details ein.


"Normal" - schwer zu sagen, das ist ein relativer Begriff.

Zulässig – ja. Hier ist ein Zitat aus dem Microsoft SQL Server Express-Blog, in dem LocalDB vorgestellt wurde:

"...wenn die Einfachheit (und Einschränkungen) von LocalDB zu den Anforderungen der Zielanwendungsumgebung passen, können Entwickler es in der Produktion weiter verwenden, da LocalDB auch eine ziemlich gute eingebettete Datenbank darstellt. "

UPDATE (März 2019)

Nachdem ich LocalDB jetzt zwei solide Jahre lang an Dutzenden von Produktionsstandorten verwendet habe, kann ich bestätigen, dass es funktioniert. Allerdings wenn Sie eine kostenlose Multi-User-Version benötigen ("gemeinsam" in der LocalDB-Terminologie) DB, verwenden Sie stattdessen SQL Server Express . LocalDB ist keine gute Mehrbenutzerlösung. Es gibt VIELE Hindernisse zu überwinden. Ich habe jetzt keine Zeit, aber wenn Sie Details zu diesen Hindernissen und entsprechenden Problemumgehungen wünschen, hinterlassen Sie einen Kommentar, und ich werde sie hier oder in einer anderen Frage dokumentieren.


Ich glaube nicht,

Auch wenn LocalDb und SQLExpress in Bezug auf die Leistung möglicherweise gleich sind, fährt der Prozess von LocalDb sich selbst herunter, wenn er eine Zeit lang keine Anfrage hat. Und normalerweise dauert es zu lange, bis die nächste Anfrage beantwortet wird (oder noch schlimmer, es kommt zu einer Zeitüberschreitung).

Ich würde empfehlen, dass Sie Ihre eigene Instanz von SQLEXPRESS installieren.