Wie deinstalliere ich SQL Server 2014 Standard Edition ohne Installationsmedien?

9

Ich habe einige Jahre lang eine Kopie von SQL Server 2014 Standard auf meiner Entwicklungsbox als Standardinstanz installiert. Ich habe Standard auf meinem Computer installiert, weil ich eine kostenlose Lizenz hatte, die ich über mein MSDN-Abonnement verwenden konnte. Jetzt möchte ich SQL Server 2014 deinstallieren und SQL Server 2017 Developer Edition zu meiner Standardinstanz machen. Ich habe versucht, SQL Server 2014 über den Standardworkflow "Software" zu deinstallieren. Nachdem ich gefragt wurde, welche Funktionen ich deinstallieren möchte, werde ich aufgefordert, das Verzeichnis mit dem Deinstallationsmedium anzugeben. Leider habe ich das von MSDN erhaltene SQL Server 2014-Downloadpaket nicht gespeichert und habe keinen Zugriff mehr auf MSDN. Ich habe auch My Visual Studio überprüft, aber es geht nur auf SQL Server 2016 zurück. Wie kann ich SQL Server 2014 Standard ohne das Installationsmedium deinstallieren?


Weiterer Hintergrund:

Der ganze Grund, warum ich SQL Server 2014 deinstallieren möchte, ist, dass ich die STRING_AGGFunktion verwenden möchte, die für Azure SQL-Datenbanken und SQL Server 2017 neu ist. Um das Einrichten von Entwicklungsumgebungen zu vereinfachen, verwenden wir beispielsweise die Punktnotation für unsere Verbindungszeichenfolgen für die Entwicklung lokaler Umgebungen Unsere Verbindungszeichenfolge lautet:

Data Source=.;Initial Catalog=<Database Name>;Trusted_Connection=True;Connection Timeout=30; 

Die Punktnotation stellt eine Verbindung zur Standarddatenbank her. Meines Wissens kann ich SQL Server 2017 nicht zur Standarddatenbank machen, ohne zuvor SQL Server 2014 zu deinstallieren. Wenn ich die Verbindungszeichenfolge für die Punktnotation verwenden kann, um eine Verbindung zu SQL Server 2017 herzustellen, ohne SQL Server 2014 zu deinstallieren, bin ich auch für diese Lösung offen.

Erik
quelle

Antworten:

10

Ich konnte meine SQL Server 2014-Instanz durch Herunterladen der SQL Server 2014-Evaluierungsversion * deinstallieren . Um die Evaluierungsversion herunterzuladen, musste ich Microsoft einige Kontaktdaten geben und dann zwei Dateien herunterladen. Eine Datei hatte eine .boxErweiterung und die andere eine .exeErweiterung. Die ausführbare Datei schien nur die Box-Datei zu entpacken. Nachdem die Box-Datei entpackt wurde, habe ich den SQL Server 2014-Deinstallationsprozess über den Standard-Workflow zum Hinzufügen / Entfernen von Programmen erneut gestartet. Beachten Sie, dass ich nie versucht habe, die Evaluierungsversion zu installieren. Ich habe gerade die entpackten Dateien verwendet, um meine vorhandene SQL Server 2014-Instanz zu deinstallieren.

Ich habe mich entschieden, die Datenbankkomponenten zu deinstallieren, aber die freigegebenen Komponenten zu belassen. Sobald der Deinstallationsprozess begann, das Installationsmedium anzufordern, wurden verschiedene .msiDateien abgefragt. Meistens wurde nach einer MSI-Datei mit "loc" im Dateinamen gefragt, gefolgt von einer MSI-Datei ohne "loc" im Dateinamen. In dem Ordner, in dem ich die Box-Datei entpackt habe, befand sich die "loc" -Version der MSI-Dateien:

\1033_ENU_LP\x64\Setup\

und die Dateien ohne "loc" im Dateinamen wurden gefunden:

\x64\Setup\

Nach Abschluss des Deinstallationsvorgangs habe ich meinen Computer neu gestartet und konnte SQL Server 2017 Developer Edition als Standardinstanz installieren. Interessanterweise wurde ich während des SQL Server 2017-Installationsprozesses aufgefordert, das Installationsmedium für 2 SQL Server 2014-Dateien einzugeben, von denen eines war SQLWRITER.MSI. Ich weiß nicht, ob dies daran liegt, dass ich die freigegebenen Komponenten für SQL Server 2014 nicht deinstalliert habe. Wenn dies aufgrund der zeitlichen Begrenzung der SQL Server 2014-Evaluierungsversion, mit der ich mein altes SQL deinstalliert habe, zu Problemen in der Zukunft führt Server 2014 Standard Edition Ich werde diese Antwort aktualisieren.


Alternative Ansätze, die in Kommentaren erwähnt wurden, die ich nicht ausprobiert habe, die aber als gute Rückfallmaßnahmen erscheinen.

  1. Der ganze Grund, warum ich SQL Server 2014 deinstallieren wollte, war, dass ich die Punktnotation verwenden konnte, um eine Verbindung zu SQL Server 2017 herzustellen . Scott Hodgin empfahl, eine Technik zu untersuchen, mit der eine benannte Instanz wie eine Standardinstanz angezeigt wird . Ich habe diese Technik nicht ausprobiert, aber nach den Stimmen, die sie auf StackOverflow gesammelt hat, hat sie sicherlich die Probleme einiger Leute gelöst.

  2. Aaron Bertrand war anscheinend in einer ähnlichen Situation wie ich in der Vergangenheit und schrieb zwei verschiedene Blog-Beiträge ( erster , zweiter ) über Möglichkeiten, das Entfernen ohne Installations- / Deinstallationsmedien zu erzwingen. Beide Blog-Beiträge verwendeten im Wesentlichen dieselbe Technik zum Erstellen einer Batch-Datei, um den msiexecBefehl auszuführen, der eine Deinstallation basierend auf der in der Registrierung gefundenen GUID erzwingt. Wenn Sie nur einen der Blog-Beiträge lesen, würde ich den zweiten empfehlen. Es verwendet ein kleines PowerShell-Skript, um die Batchdatei zu erstellen. Obwohl ich diesen Ansatz nicht persönlich anwenden musste, war dies meine nächste Option. Außerdem möchte ich Aaron eine Hutspitze geben, um einen Schmerzpunkt zu überwinden, bevor ein gewöhnlicher Mann wie ich auf das Problem gestoßen ist, und um eine gute Lösung für das Problem für die Nachwelt zu dokumentieren.


*: Vielen Dank an Ali Razeghi , der diesen Ansatz in den Kommentaren vorgeschlagen hat.

Erik
quelle