Finanzkasper.de » Board

MS SQL Server Express - Versionen und Instanzen

[u]MS SQL Server Express - Versionen und Instanzen[/u]

- Die komplizierte Welt der Datenbanken... -

Öfter gibt es bei der Installation oder Nutzung von QC Probleme im Zusammenspiel mit der Datenbank Software MS SQL Server Express.
Deshalb mal ein paar Hintergrunderläuterungen dazu.

QC funktioniert mit den beiden Datenbankversionen (einschließlich der zugehörigen Service Pack Versionen):
? SQL Server 2005 Express
? SQL Server 2008 Express

SQL Server 2005 Express und SQL Server 2008 Express
Man kann auf einem Rechner mehrere Installationen von SQL Server laufen lassen, also auch parallel SQL Server 2005 Express und SQL Server 2008 Express.
Während der Installation von SQL Server 2008 Express wird geprüft, ob eine frühere Version (z.B. SQL Server 2005 Express) vorhanden ist.
Ist das der Fall, wird man gefragt, ob man diese upgraden will (also auf die vorhanden Instanz installieren will) oder ob man SQL Server 2008 Express parallel installieren will (also eine neue Instanz einrichten will).

Datenbank Instanzen
Bei der ersten Installation einer der SQL Server Express Versionen richtet die Software eine Standard Datenbank Instanz unter dem Namen ".\SQLEXPRESS" ein.
Beim Upgrade von SQL Server 2005 Express auf SQL Server 2008 Express bleibt die Instanz und auch deren Name erhalten.
Bei der Parallel-Installation einer zweiten Version von SQL Server Express (also beispielsweise zusätzlich zu SQL Server 2005 Express auch SQL Server 2008 Express) wird eine weitere Instanz unter dem Namen ".\MSSQLSERVER" für die zweite Installation eingerichtet. Da dies die Standardbezeichnung von SQL Server ist, wird diese mit dem Namen "." angesprochen (technisches Detail).

QC bis zur Version 1.0.2.6 arbeitet nur mit SQL Server Express Instanzen, die den Namen ".\SQLEXPRESS" haben.
Ab Version QC 1.0.3.0 werden auch beliebige andere Instanznamen unterstützt.
Wer also einen anderen Instanznamen installiert hat, kann QC entsprechend konfigurieren, dass diese andere Instanz genutzt wird.
Hat man mehrere Versionen von SQL Server Express installiert, so müssen diese unterschiedliche Instanznamen haben und können so von QC wahlweise genutzt werden.
Doch Achtung: Eine QC Datenbank, die einmal mit SQL Server 2008 Express gelaufen ist, kann nie mehr unter SQL Server 2005 Express laufen. Ein Downgrade geht dann also nicht mehr.

Konfiguration von QC für die Nutzung anderer Instanzen als "SQLEXPRESS" (QC >= Version 1.0.3.0)
Zur Konfiguration der genutzten SQL Server Express Instanz gibt es ab der Version 1.0.3.0 eine Datei Namens QC.instance, die sich unter folgendem Ordner befindet:
Ort XP: \Dokumente und Einstellungen\[Nutzername]\Lokale Einstellungen\Anwendungen
Ort Vista: \Users\[Nutzername]\AppData\Local

Diese Datei wird beim ersten Aufruf von QC generiert und erhält den Namen der genutzten Datenbank Instanz, also normalerweise ".\SQLEXPRESS".
Man kann nun einen anderen existierenden Instanznamen dort eingeben, um diese andere Instanz zu nutzen. Das gilt dann ab dem nächsten Start von QC.
(Es gelten auch hier die oben genannten Besonderheiten: niemals von 2008 auf 2005 downgraden und die Standardinstanz ".\MSSQLSERVER" wird nur durch "." angesprochen.)

Erstinstallation bis Version 1.0.2.6
Wenn man QC das erste Mal von der Webseite finanzkasper.de installiert, prüft QC, ob SQL Server 2005 Express auf dem Rechner vorhanden ist.
Wenn ja, wird QC einfach installiert.
Wenn nein, veranlasst QC bei der Installation, dass auch SQL Server 2005 Express installiert wird.

Erstinstallation ab Version 1.0.3.0
Wenn man QC das erste Mal von der Webseite finanzkasper.de installiert, prüft QC, ob SQL Server 2008 Express auf dem Rechner vorhanden ist.
Wenn ja, wird QC einfach installiert.
Wenn nein, veranlasst QC bei der Installation, dass auch SQL Server 2008 Express installiert wird.

Upgrade von SQL Server 2005 Express auf SQL Server 2008 Express
Dieser Upgrade kann auf dem Rechner, auf dem schon QC läuft, jederzeit ausgeführt werden. Wenn es ein echter Upgrade ist, also danach nur noch SQL Server 2008 Express läuft, nutzt QC die neue SQL Version.
Zur Beachtung: Eine QC Datenbank, die einmal mit SQL Server 2008 Express gelaufen ist, kann nie mehr unter SQL Server 2005 Express laufen. Ein Downgrade geht dann also nicht mehr.

Wahrscheinlich ist bei dem werten Leser die Verwirrung nun komplett, aber vielleicht hilft ja auch jemandem diese Information.
Ansonsten beantworte ich auch gern Rückfragen dazu.

Dieser Artikel ist auch im Handbuch zu finden.

zerus

zerus
zerus
Mitglied seit 22. 07. 2007
2020 Beiträge

Hallo Zerus,
in der Tat hätte ich einige Rückfragen zu Deinen Ausführungen:

1. Was würde der Umstieg von SQL 2005 auf SQL 2008 eigentlich an technischen Vorteilen bringen?
2. Oder anders herum: Wenn man bei SQL 2005 bleibt (was ja bei den weitaus meisten installiert sein wird) birgt dies irgendwelche Nachteile, jetzt, oder in Zukunft?
3. Vor einiger Zeit hattest Du mal davon gesprochen, Alternativen zu den "MS SQL Server Express" Varianten zu untersuchen und zu prüfen, inwieweit solche für QC geeignet sein könnten. Ist dies jetzt mit der SQL 2008-Variante als erledigt zu betrachten, oder könnte in absehbarer Zeit möglicherweise nochmals ein Datenbankumstieg kommen?
Schönen Sonntag noch...
Gruß, Mani

Mani
Mani
Mitglied seit 18. 03. 2008
111 Beiträge

Hallo Mani

[quote="Mani"]
1. Was würde der Umstieg von SQL 2005 auf SQL 2008 eigentlich an technischen Vorteilen bringen?
[/quote]
Nur geringe - bei mir nicht merkbare - Geschwindigkeitsvorteile, die durch die Optimierungen in SQL 2008 zustande kommen.
Der wesentliche Vorteil ist, dass man nicht wegen QC noch die 2005er Version auf dem Rechner haben muss, wenn andere Anwendungen die modernere 2008er Version benötigen.

[quote="Mani"]
2. Oder anders herum: Wenn man bei SQL 2005 bleibt (was ja bei den weitaus meisten installiert sein wird) birgt dies irgendwelche Nachteile, jetzt, oder in Zukunft?
[/quote]
Nein. Ich weiss allerdings nicht, wie lange SQL 2005 von MS noch unterstützt wird. Aber ein Umstieg ist ja jederzeit auch später möglich.
Also es gibt keinen Handlungsbedarf momentan, wenn jemand mit SQL 2005 zufrieden arbeitet.

[quote="Mani"]
3. Vor einiger Zeit hattest Du mal davon gesprochen, Alternativen zu den "MS SQL Server Express" Varianten zu untersuchen und zu prüfen, inwieweit solche für QC geeignet sein könnten. Ist dies jetzt mit der SQL 2008-Variante als erledigt zu betrachten, oder könnte in absehbarer Zeit möglicherweise nochmals ein Datenbankumstieg kommen?
[/quote]
Ich hatte damals einige Datenbanksysteme betrachtet, aber nichts vergleichbares gefunden. Es gab immer irgendwelche Nachteile entweder in Funktionalität, Support oder Geschwindigkeit.
Momentan gibt es keine Pläne eines Datenbank-Umstiegs.

Gruss
zerus

zerus
zerus
Mitglied seit 22. 07. 2007
2020 Beiträge

Hallo Zerus,
danke für Deine Infos. Obwohl nicht notwendig, hat es mich doch gereizt, auf SQL 2008 umzusteigen. Hat auch, nach entsprechenden Sicherungs.- und Vorbereitungsmaßnahmen ganz gut geklappt, einschließlich der anschließenden Deinstallation von SQL 2005. So weit, so gut.

Jetzt bekomme ich aber von "Windows Update" ein optionales Service Pack 2 für "SQL Server 2008 Express" (ca 300 MB) angeboten, welches ich aber nicht so ohne weiteres installieren möchte, weil Du stets in Deinem ausführlichen Bericht "MS SQL Server Express - Versionen und Instanzen" von "SQL Server 2008 Express" (also ohne SP 2) gesprochen hast.

Also, ist wirklich nur "SQL Server 2008 Express" gemeint? Hast Du SQL 2008 mit SP 2 schon mit QC getestet?

Vielen Dank und schönes Wochenende.
Viele Grüße, Mani

Mani
Mani
Mitglied seit 18. 03. 2008
111 Beiträge

Ja, habe die Unterversionen hier weggelassen, da QC mit allen läuft, also:

SQL Server 2008 Express
SQL Server 2008 Express SP1
SQL Server 2008 Express SP2
SQL Server 2008 Express R2

Also führ das Update ruhig aus, es sind im wesentlichen Bugfixes und ein paar neue zusätzliche Features der R2 Version.

zerus

zerus
zerus
Mitglied seit 22. 07. 2007
2020 Beiträge

Auf meinem Rechner laufen verschiedene Instanzen des SQL Server. (LocalDB)\MSSQLLocalDB hat noch die Version 2016. Die wird aber von QC einfach mal so verwendet. Ich würde lieber eine meiner "richtigen" SQL Server Instanzen verwenden. Allerdings gibt es bei mir keine Datei QC.instance in C:\Users\ggoer\AppData\Local, dafür aber QC.ini, QC.log und die Dateien der Datenbank (die ich dort auch nicht haben möchte).

Wo und wie kann ich angeben, welche SQL Server Instanze von QC verwendet werden soll?

Da eine Anforderung Version 2017 gibt, wird es ja möglicherweise auch zu Problemen führen, wenn der QC mit einer Datenbank arbeitet, die eine ältere Version hat.

In QC.ini wird nur der Ort der Datenbanken angegeben, aber nicht die zu verwendende Instanz. Im Handbuch habe ich auch nichts gefunden.

germo
germo
Mitglied seit 15. 01. 2008
41 Beiträge

Ich habe jetzt erst mal die Version meiner Express-Edition erhöht. Allerdings interessiert mich die Frage weiterhin, wo die Instanz eingetragen wird, damit ich die Datenbank verschieben kann.

germo
germo
Mitglied seit 15. 01. 2008
41 Beiträge

Hi Germo,
der Post auf den Du Dich beziehst ist über 10 Jahre her. Inzwischen gibt es diese Konfigurierbarkeit nicht mehr. Es wird der Standard-Instanzname (LocalDB)\MSSQLLocalDB
verwendet.
Eine Konfigurierbarkeit ist nicht mehr vorgesehen. Auch gehe ich davon aus, dass QC nur mit LocalDB läuft und nicht auf einem Standard-SQL-Server.

Das ließe sich zwar programmieren, aber ich denke, das dies nur die wenigsten (zu denen Du gehörst) benötigen. Die meisten privaten Nutzer betreiben ja keinen eigenen SQL-Server zuhause.

Beste Grüße
zerus

zerus
zerus
Mitglied seit 22. 07. 2007
2020 Beiträge

Alles klar. Ich hab ja eine Lösung gefunden :-)

germo
germo
Mitglied seit 15. 01. 2008
41 Beiträge

0 Mitglieder Online

Keine Mitglieder Online

Letzte Änderung dieser Seite: 05.09.2020 10:18:28  --- (c) FinanzKasper.de ---     Home :: Suche :: Sitemap :: Impressum :: AGBs :: Datenschutz