Comment désinstaller SQL Server 2014 Standard Edition sans installer de support?

9

J'ai une copie de SQL Server 2014 Standard installée sur ma boîte de développement comme instance par défaut depuis quelques années. J'ai installé le standard sur ma machine car j'avais une licence gratuite que je pouvais utiliser via mon abonnement MSDN. Maintenant, je veux désinstaller SQL Server 2014 et faire de SQL Server 2017 Developer Edition mon instance par défaut. J'ai essayé de désinstaller SQL Server 2014 via le flux de travail standard Ajout / Suppression de programmes, mais après m'avoir demandé quelles fonctionnalités je souhaite désinstaller, il me demande le répertoire contenant le support de désinstallation. Malheureusement, je n'ai pas enregistré le package de téléchargement SQL Server 2014 que j'ai obtenu de MSDN et je n'ai plus accès à MSDN. J'ai également vérifié Mon Visual Studio, mais il ne remonte qu'à SQL Server 2016. Comment puis-je désinstaller SQL Server 2014 Standard sans le support d'installation?


Contexte supplémentaire:

La raison pour laquelle je souhaite désinstaller SQL Server 2014 est que je souhaite utiliser la STRING_AGGfonction qui est nouvelle dans les bases de données SQL Azure et SQL Server 2017. Pour faciliter la configuration des environnements de développement, nous utilisons la notation par points pour nos chaînes de connexion de développement d'environnement local, par exemple notre chaîne de connexion est:

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

La notation par points se connecte à la base de données par défaut et, à ma connaissance, je ne peux pas faire de SQL Server 2017 la base de données par défaut sans désinstaller SQL Server 2014 au préalable. Si je peux utiliser la chaîne de connexion à notation par points pour me connecter à SQL Server 2017 sans désinstaller SQL Server 2014, je serais également ouvert à cette solution.

Erik
la source

Réponses:

10

J'ai pu désinstaller mon instance SQL Server 2014 en téléchargeant la version d'évaluation de SQL Server 2014 *. Afin de télécharger la version d'évaluation, j'ai dû donner à Microsoft quelques coordonnées, puis télécharger deux fichiers. Un fichier avait une .boxextension et l'autre avait une .exeextension. L'exécutable semblait simplement décompresser le fichier de boîte. Une fois le fichier de boîte décompressé, j'ai relancé le processus de désinstallation de SQL Server 2014 via le flux de travail standard Ajout / Suppression de programmes. Notez que je n'ai jamais essayé d'installer la version d'évaluation. Je viens d'utiliser les fichiers décompressés pour désinstaller mon instance SQL Server 2014 existante.

J'ai choisi de désinstaller les composants de la base de données mais de laisser les composants partagés. Une fois que le processus de désinstallation a commencé à demander le support d'installation, j'ai constaté qu'il demanderait divers .msifichiers. La plupart du temps, il demandait un fichier msi avec "loc" dans le nom de fichier suivi d'un fichier msi sans "loc" dans le nom de fichier. Dans le dossier que j'ai décompressé le fichier de boîte, la version "loc" des fichiers msi se trouvait:

\1033_ENU_LP\x64\Setup\

et les fichiers sans "loc" dans le nom de fichier se trouvaient:

\x64\Setup\

Une fois le processus de désinstallation terminé, j'ai redémarré mon ordinateur et j'ai pu installer SQL Server 2017 Developer Edition en tant qu'instance par défaut. Fait intéressant, lors du processus d'installation de SQL Server 2017, j'ai été invité à fournir le support d'installation pour 2 fichiers SQL Server 2014, dont l'un était SQLWRITER.MSI. Je ne sais pas si c'est parce que je n'ai pas désinstallé les composants partagés pour SQL Server 2014. Si cela me pose des problèmes à l'avenir en raison de la nature limitée dans le temps de la version d'évaluation de SQL Server 2014, j'ai utilisé pour désinstaller mon ancien SQL Server 2014 Standard Edition Je mettrai à jour cette réponse.


Approches alternatives qui ont été mentionnées dans des commentaires que je n'ai pas essayés, mais qui semblent être de bonnes mesures de secours.

  1. Toute la raison pour laquelle je voulais désinstaller SQL Server 2014 était pour pouvoir utiliser la notation par points pour me connecter à SQL Server 2017. Scott Hodgin m'a recommandé d'étudier une technique pour faire apparaître une instance nommée comme une instance par défaut . Je n'ai pas essayé cette technique mais à en juger par les votes recueillis sur StackOverflow, il a sûrement résolu les problèmes de certaines personnes.

  2. Aaron Bertrand semble avoir été dans une situation similaire à moi dans le passé et a écrit deux articles de blog différents ( premier , deuxième ) sur les moyens de forcer la suppression sans aucun média d'installation / désinstallation. Les deux articles de blog ont utilisé essentiellement la même technique de création d'un fichier de msiexeccommandes pour exécuter la commande qui force une désinstallation basée sur le GUID trouvé dans le registre. Si vous ne lisez qu'un des articles du blog, je recommanderais le second. Il utilise un petit script PowerShell pour créer le fichier de commandes. Même si je n'avais pas personnellement besoin d'utiliser cette approche, c'était ma prochaine option. Je voudrais également donner à Aaron une astuce pour lutter contre un point douloureux avant qu'un homme ordinaire comme moi ne rencontre le problème et pour avoir documenté une bonne solution au problème de la postérité.


*: Merci à Ali Razeghi d' avoir proposé cette approche dans les commentaires.

Erik
la source