LuckyLindy - Ich möchte Sie dazu ermutigen, eine kurze Pause einzulegen und sicherzustellen, dass Sie den SQL-Agenten nicht benötigen. Sie schrieben:
Wir sind dabei, eine duale Web- / interne Transaktionsanwendung einzuführen, bei der jeder Kunde über eine eigene Datenbank verfügt. Jede Datenbank ist sehr klein - jeweils weniger als 50 MB. Daher haben wir uns gefragt, ob es sinnvoll ist, SQL Express 2008 anstelle des vollständigen SQL Servers zu verwenden.
Was ist Ihr Plan für Backups? Sie müssen den SQL-Agenten nicht verwenden, er erleichtert jedoch das Leben eines DBAs. Sie können T-SQL / SMO / PowerShell / beliebige Skripts schreiben, die Ihre Sicherungen ausführen, und dann über sqlcmd oder PowerShell mit einer geplanten Task ausführen.
Was ist Ihr Plan für die Datenbankwartung? Im Laufe der Zeit müssen diese Datenbanken defragmentiert und auf Konsistenz überprüft werden. Die Standard Edition bietet alle Arten von Extras, um dies zu vereinfachen, während Sie in Express arbeiten müssen (erneut mit Skripten und geplanten Aufgaben).
Wie werden Sie über Probleme auf dem Server informiert? Der Agent hilft hier mit Alerts, um Sie zu benachrichtigen, wenn ein Protokoll voll ist, ein Datenträger voll ist usw.
Hierbei handelt es sich um wichtige Aufgaben vom Typ SQL Server DBA. Es ist eine Sache, Express für eine Inhouse-App auszuführen, aber wenn Sie uns sagen, dass Sie diese für Kunden hosten, mache ich mir Sorgen :)
In Teil 2 werden Sie gefragt, wie viele Kunden Sie dabei unterstützen möchten - sowohl beim Start als auch nach einem Jahr? Wenn Sie "100 Clients" sagen, reichen 100 50-MB-Datenbanken in Express nicht aus - Sie haben einfach nicht genug Speicher. Verdammt - je nachdem, wie viel Delta Sie haben, könnten Sie bei 15 DBs maximal sein, ich weiß es nicht.
Wir werden nie mehr als ~ 200 Benutzer gleichzeitig haben und die meisten Vorgänge werden transaktionaler sein (was viele Hochgeschwindigkeits-Festplatten gegenüber starkem RAM / CPU zu bevorzugen scheint, oder?)
Transaktionsvorgänge wie INSERTs werden weiterhin in den Speicher geschrieben. Erwarten Sie daher nicht, dass Sie weniger Speicherunterstützung benötigen. Abhängig von der Anzahl der INSERTs, die Sie ausführen, ist der Speicherbedarf bei dieser Anzahl von Benutzern möglicherweise größer als bei den meisten anderen. Wenn Sie viele Daten laden, die von anderen nicht wirklich verwendet werden, belegt sie immer noch Speicherplatz. Es kann zu Konflikten zwischen "Daten, die Benutzer häufig abfragen" und "Daten, die Benutzer laden und die für eine Weile von niemandem abgefragt werden" kommen. SQL schützt uns, indem es sicherstellt, dass die Daten, die im Arbeitsspeicher häufiger abgefragt werden, länger bestehen, Sie jedoch weiterhin Konflikte haben.
An diesem Punkt wandere ich lol. Und 200 gleichzeitige Benutzer sind auch nicht für Express bei mir. Angenommen, 64 KB sind die durchschnittlichen Anforderungen an den Verbindungsspeicher. Wie viele Verbindungen stellen Ihre Apps her? Verwenden Sie das Verbindungspooling?
Alles in allem sagt mein Bauchgefühl beim Lesen Ihrer Beschreibung: "No - Express Edition ist einfach nicht mächtig genug." Und ich hasse die Workgroup Edition - denke, es ist ein schlechtes Geschäft -, also scheint mir Standard richtig zu sein.