Einschränkungen von SQL Server Express

135

Mein Hosting-Anbieter (Rackspace) bietet einen vollständig verwalteten dedizierten Server mit installierter SQL Server-Webversion () an. Mein Unternehmen kümmert sich um die Webentwicklung und hat über 20 Clients, die ASP.Net + SQL Server 2005 verwenden.

Ich denke darüber nach, die Kosten zu senken, indem ich stattdessen den kostenlosen SQL Server 2008 Express installiere. Ich bin mir der Einschränkungen von 1 GB RAM und 4 GB / Datenbank (ist das richtig?) Bekannt. Was ich gerne wissen würde ist:

  1. Gibt es eine Begrenzung für die Anzahl der Datenbanken, die ich mit der Express Edition installieren kann?
  2. Gibt es andere Einschränkungen, vor denen ich vorsichtig sein sollte? Ich bin etwas besorgt darüber, dass ich die Datenbanksicherung einrichten muss - mit der Express Edition könnte es viel schwieriger sein.
  3. Irgendwelche anderen Ratschläge?
Vertexwahn
quelle
Gibt es eine Beschränkung für die Anzahl der Verbindungen?
Codeulike
5
@codeulike: Nein, die Anzahl der Verbindungen in MSDE / SQL Express war nie begrenzt, und der "Workload Governor", der die Anzahl der ACTIVE-Verbindungen in MSDE
Tao

Antworten:

147

Es gibt eine Reihe von Einschränkungen, insbesondere:

  • Beschränkt auf eine einzelne CPU (2012 wurde diese Einschränkung in "Der kleinere von einem Sockel oder vier Kernen" geändert, sodass Multithreading möglich ist).
  • 1 GB RAM (wie 2008/2012)
  • 4 GB Datenbankgröße (in SQL 2008 R2 und SQL 2012 auf 10 GB erhöht) pro Datenbank

http://www.dotnetspider.com/tutorials/SqlServer-Tutorial-158.aspx http://www.microsoft.com/sqlserver/2008/en/us/editions.aspx

In Bezug auf die Anzahl der Datenbanken gibt dieser MSDN-Artikel an, dass es keine Begrenzung gibt:

Die Beschränkung der Datenbankgröße auf 4 GB gilt nur für Datendateien und nicht für Protokolldateien. Die Anzahl der Datenbanken, die an den Server angeschlossen werden können, ist jedoch unbegrenzt.

Wie in den Kommentaren und oben erwähnt, wurde das Datenbankgrößenlimit in den Jahren 2008 R2 und 2012 auf 10 GB angehoben. Dieses Limit von 10 GB gilt auch nur für relationale Daten, und Filestream-Daten zählen nicht für dieses Limit ( http: // msdn) .microsoft.com / de-de / library / bb895334.aspx ).

SqlRyan
quelle
Hallo, wie oben erwähnt, bin ich mit diesen Einschränkungen einverstanden - ich mache mir nur Sorgen um das tatsächliche Nein. von Datenbanken - eine Idee dazu?
4
@ David Brunelle: Die Beschränkung auf 4 GB gilt nach meinem Verständnis pro Datenbank. Im MSDN-Artikel heißt es: "Datenbanken haben eine maximale Größe von 4 GB". Siehe auch diese Frage: stackoverflow.com/questions/955926/sql-server-express-4gb-limit
Sub-Star
6
Diese Antwort könnte aktualisiert werden. SQL Server 2008 R2 erlaubt bis zu 10 GB pro Datenbank.
Tao
3
@RudolfDvoracek Laut msdn.microsoft.com/en-us/library/bb895334.aspx zählt Filestream nicht auf dieses Limit: "SQL Server Express unterstützt FILESTREAM. Das 10-GB-Datenbankgrößenlimit enthält nicht den FILESTREAM-Datencontainer . "
SqlRyan
1
Die CPU- und RAM-Grenzwerte gelten pro Instanz, während Express 50 Instanzen pro Server unterstützt.
Hans Malherbe
14

Eine weitere zu berücksichtigende Einschränkung besteht darin, dass SQL Server Express-Editionen nach einer gewissen Zeit der Nichtbenutzung in den Leerlaufmodus wechseln.

Grundlegendes zum SQL Express-Verhalten: Ressourcennutzung im Leerlauf, AUTO_CLOSE und Benutzerinstanzen :

Wenn SQL Express ist müßig es trimmt aggressiv den Arbeitsspeicher Satz zurück durch die im Cache gespeicherten Daten auf die Platte geschrieben Sichern und Wiederherstellen der Speicher freigibt .

Dies lässt sich jedoch leicht umgehen : Gibt es eine Möglichkeit, den Leerlauf von SQL Express 2008 zu verhindern?

agentnega
quelle
12

Sie können Benutzerinstanzen erstellen und jede App mit ihrem eigenen SQL Express kommunizieren lassen.

Die Anzahl der Datenbanken ist unbegrenzt.

Remus Rusanu
quelle
Wie in können wir 100 Datenbanken erstellen, solange die Gesamtgröße 4 GB nicht überschreitet, oder wir können 100 Datenbanken mit jeweils bis zu 4 GB erstellen?
PRINZESSIN FLUFF
7
Jede einzelne Datenbank muss unter 4 GB sein.
Remus Rusanu
Gute Idee, wie bei separaten Instanzen, sollte jede Instanz in der Lage sein, ihren eigenen 1 GByte Speicher und 1 CPU zu verwenden.
Treaschf
Wenn zwei Benutzerinstanzen mit derselben MDF-Datei verbunden sind, verursacht dies dann keine Probleme?
ingredient_15939
Ermöglicht SQL Express die Installation mehrerer Instanzen? Wird es nicht von den Ressourcenlimits getroffen? Dh alle 5 SQL-Instanzen zusammen dürfen immer noch nur 1 GB RAM verwenden?
Zapnologica
4

Wenn Sie von Web zu Express wechseln, können Sie den SQL Server-Agent-Dienst nicht mehr verwenden, sodass Sie einen anderen Scheduler für Wartung und Sicherungen einrichten müssen.

Jason Cumberland
quelle
4

Sie können Integration Services nicht damit installieren. Express unterstützt keine Integration Services. Wenn Sie also beispielsweise SSIS-Pakete erstellen möchten, benötigen Sie mindestens die Standard Edition.

Sehen Sie hier mehr .

niklasolsn
quelle