So entfernen Sie Elemente mit dem Namen "Servername" aus dem Verlauf von SQL Server Management Studio

173

Wenn Sie versuchen, eine Verbindung zu einem Server in Management Studio (insbesondere 2008) herzustellen, geben Sie in einem Feld den Servernamen ein. Dieses Feld enthält auch eine Dropdown-Liste, in der der Verlauf der Server angezeigt wird, zu denen Sie versucht haben, eine Verbindung herzustellen.

Ich würde gerne wissen:

  1. So entfernen Sie ein einzelnes Element aus diesem Verlauf.
  2. So entfernen Sie ein Element aus dem Anmeldefeldverlauf für jeden Servernamen.

Vielen Dank!


quelle
3
Siehe meine Antwort für eine kleine Benutzeroberfläche, die ich dazu geschrieben habe. Ich war ein wenig zu spät zur Party, daher ist meine Antwort derzeit ganz unten.
Mark
1
Frech. Verwenden Sie beim nächsten Mal den Inkognito-Modus, wenn Sie zweifelhafte Datenbanken abfragen möchten.
Colonel Panic
Installieren Sie alles Tool, durchsuchen Sie dann die Datei mru.dat und löschen Sie sie
KhaledDev

Antworten:

137

Ab SQL Server 2012 müssen Sie die Bin-Datei nicht mehr löschen (was andere Nebenwirkungen verursacht). Sie sollten in der Lage sein, die Löschtaste in der MRU-Liste der Dropdown-Liste Servername im Dialogfeld Mit Server verbinden zu drücken. Dies ist in diesem Connect-Element und in diesem Blog-Beitrag dokumentiert .

Beachten Sie, dass Sie bei mehreren Einträgen für einen einzelnen Servernamen (z. B. einen mit Windows und einen mit SQL Auth) nicht erkennen können, welchen Sie löschen.

Aaron Bertrand
quelle
Mit SSMS 11.0.3128.0 funktioniert dies nicht. Wurde es nixed, weil das Verhalten zu schlechtem UX führte?
JoeBrockhaus
6
@ JoeBrockhaus Funktioniert mit 11.0.5058.0. Öffnen Sie einfach die Dropdown-Liste, verschieben Sie die Auswahl über den Namen, den Sie löschen möchten, und drücken Sie die Entf-Taste. Wenn Sie mehrere Einträge haben, können Sie den Eintrag auswählen, damit die ComboBox geschlossen wird. Überprüfen Sie, ob es sich um den gewünschten handelt. Klicken Sie dann auf die Schaltfläche Öffnen in der ComboBox und drücken Sie Löschen (der aktuell ausgewählte Eintrag wird gelöscht).
Trisped
5
Ernsthaft? Warum habe ich das nicht zuerst versucht? Haha. Für alle Interessierten kann ich bestätigen, dass dies in SSMS 2014 funktioniert.
Jargs
3
Funktioniert auch 2016. Danke dir! Ich hatte einen falschen zwischengespeicherten Benutzernamen und dieser hat das Problem behoben.
Charl
1
Ich bin mir nicht sicher, wie ich das "Zeigen des Cursors" zum Auswählen des Ziels der Entf-Taste finde, aber danke, es funktioniert.
Linhartr22
69

Löschen Sie für SQL 2005 die Datei:

C:\Documents and Settings\<USER>\Application Data\Microsoft\Microsoft SQL Server\90\Tools\Shell\mru.dat

Für SQL 2008 wurden Speicherort, Format und Name der Datei geändert:

C:\Documents and Settings\<USER>\Application Data\Microsoft\Microsoft SQL Server\100\Tools\Shell\SqlStudio.bin

So löschen Sie die Liste:

  1. Fahren Sie alle Instanzen von SSMS herunter
  2. Datei löschen / umbenennen
  3. Öffnen Sie SSMS

Diese Anfrage ist bei Microsoft Connect registriert

Raj Mehr
quelle
1
Ich öffne die SqlStudio.bin, die Datei ist groß, es scheint möglich, andere Informationen zu enthalten, was geht außer dem Verbindungsverlauf verloren?
Cheung
4
Die Datei enthält Benutzereinstellungen - alles, was Sie angepasst haben, geht verloren. Wenn Sie einige .Net- oder Powershell-Fähigkeiten haben, schauen Sie sich diese Antwort an stackoverflow.com/questions/6230159/…
Raj More
5
In Windows 7 befindet es sich unter C: \ Benutzer \ <BENUTZER> \ AppData \ Roaming \ Microsoft \ Microsoft SQL Server \ 100 \ Tools \ Shell
Marwan
1
Schade, dass ich nicht genau die Servergruppe löschen kann, nicht alle meine Benutzereinstellungen.
Johnny_D
2
MIT VORSICHT FORTFAHREN. Dies macht nicht das, was das OP verlangt hat, nämlich einzelne Elemente zu entfernen. Dadurch werden alle Elemente und auch andere Einstellungen weggeblasen.
Aaron Bertrand
68

Hier ist der einfachste Weg, um Elemente aus dieser Liste zu löschen.

  1. Öffnen Sie die SSMS- Version (Microsoft SQL Server Management Studio), die Sie beeinflussen möchten.
  2. Öffnen Sie das Dialogfeld Mit Server verbinden (Datei-> Objekt-Explorer verbinden, Objekt-Explorer-> Verbinden-> Datenbankmodul usw.).
  3. Klicken Sie auf den Abwärtspfeil der Dropdown-Liste im Feld Servername .
  4. Bewegen Sie den Mauszeiger über die Elemente, die Sie entfernen möchten.
  5. Drücken Sie die Entf- Taste (DEL) auf Ihrer Tastatur.

Na, bitte.

Hardik
quelle
4
Funktioniert mit SQLServer 2014
jomarmen
1
Funktioniert mit SQL Server 2016 Management Studio.
Poosh
2
BOOM! Funktioniert mit SQL Server Management Studio 17.9.1
edcincy
2
Was zum Teufel! Ich habe es gelesen und war wie WAS! Wie würde jemand dies intuitiv erraten? Ich habe es versucht und es hat funktioniert. UX ist keine Stärke von Microsoft.
DinoSaadeh
1
Heilige Mama !! super einfach. Diese Arbeit für mich mit SQL Server Management Studio 18.5
A3IOU
43

Drüben auf dieser doppelten Frage hat @arcticdev einen Code gepostet, der einzelne Einträge entfernt (im Gegensatz zu allen Einträgen, bei denen die Bin-Datei gelöscht wird). Ich habe es in eine sehr hässliche Benutzeroberfläche eingewickelt und hier abgelegt: http://ssmsmru.codeplex.com/

Kennzeichen
quelle
Funktionierte gut für mich für SSMS 2008 R2 (10.50.1777.0), aber um sicherzugehen, hatte ich die enthaltenen DLLs mit denen aus dem SSMS-Verzeichnis überschrieben. Soweit ich das beurteilen kann, blieben alle anderen Einstellungen erhalten. Vielen Dank!
Jaraics
@ Mark - Vielen Dank. Eine Randnotiz: Wenn Sie zwei Server mit demselben Namen haben, auch wenn sie unterschiedliche Anmeldeauthentifizierungstypen haben, und Sie einen löschen, werden beide gelöscht.
Keith
Ich weiß, dass dies für 2008 erstellt wurde, aber falls jemand interessiert ist, habe ich dieses Tool unter SSMS 2014 ausprobiert. Ich musste die Konfigurationsdatei ändern, um im richtigen Verzeichnis zu suchen, und es konnte die Server in der bin-Datei finden. Aber als ich auf Speichern klickte und dann SSMS öffnete, waren alle meine Server weg, anstatt nur der, den ich gelöscht hatte. Zum Glück habe ich zuerst meine Bin-Datei gesichert. :)
Jargs
Die Binärdateien für 2014 sind unterschiedlich. Ich habe noch keine Version 2012/2014 erstellt, da der Server aus SSMS gelöscht werden kann. Wenn es Interesse gab, konnte ich versuchen, etwas Zeit zum Erstellen zu finden.
Mark
@Mark Dies funktionierte perfekt für MSSQL 2008 R2 Management Studio. Ich bin froh, dass ich die Kommentare / Antworten weiter durchgelesen und diese gefunden habe.
HPWD
20

Für SQL Server 2012 Management Studio wurde diese Datei verschoben. Es befindet sich jetzt bei:

C:\Users\<username>\AppData\Roaming\Microsoft\
    SQL Server Management Studio\11.0\SqlStudio.bin
Damian Powell
quelle
6
Und für SSMS 2014 ist es jetzt so, c:\Users\<username>\AppData\Roaming\Microsoft\SQL Server Management Studio\12.0\SqlStudio.binaber ich vermute, das war irgendwie offensichtlich.
Charlie
schneller zu erreichen mit:%appdata%\Roaming\Microsoft\ SQL Server Management Studio\11.0\SqlStudio.bin
Patrick Honorez
15

Im Windows Server 2008-Standard mit SQL Express 2008 befindet sich hier die Datei "SqlStudio.bin":

%UserProfile%\Microsoft\Microsoft SQL Server\100\Tools\Shell\
Richard Marskell - Drackir
quelle
Das hilft nicht. Die Datei wird mit denselben Benutzern neu erstellt.
Nima
2
@nima Möglicherweise müssen Sie SSMS schließen, bevor Sie die Datei löschen können. Siehe auch meine Antwort für eine Möglichkeit, einzelne Elemente zu löschen.
Mark
11

Löschen Sie die Datei aus dem obigen Pfad: (Vor dem Löschen schließen Sie bitte SSMS.)

Dateispeicherortpfad für Benutzer von SQL Server 2005 ,

C:\Documents and Settings\%USERNAME%\Application Data\Microsoft\Microsoft SQL Server\90\Tools\Shell\mru.dat

Dateispeicherortpfad für Benutzer von SQL Server 2008 ,

Hinweis: Der Formatname wurde geändert.

C:\Documents and Settings\%USERNAME%\Application Data\Microsoft\Microsoft SQL Server\100\Tools\Shell\SqlStudio.bin

Dateispeicherortpfad für Benutzer von Server 2008 Standard / SQL Express 2008

C:\Documents and Settings\%USERNAME%\Microsoft\Microsoft SQL Server\100\Tools\Shell\SqlStudio.bin

Dateispeicherortpfad für Benutzer von SQL Server 2012 ,

C:\Users\%USERNAME%\AppData\Roaming\Microsoft\SQL Server Management Studio\11.0\SqlStudio.bin

Dateispeicherortpfad für Benutzer von SQL Server 2014 ,

C:\Users\%USERNAME%\AppData\Roaming\Microsoft\SQL Server Management Studio\12.0\SqlStudio.bin

Hinweis: In SSMS 2012 ( Version 10.50.1600.1 OR Above) können Sie den Servernamen entfernen, indem Sie ihn aus der Dropdown-Liste auswählen und drücken DELETE.

pedram
quelle
9

In SSMS 2012 gibt es eine dokumentierte Möglichkeit, den Servernamen im Dialogfeld "Mit Server verbinden" zu löschen. Jetzt können wir den Servernamen entfernen, indem wir ihn im Dialogfeld auswählen und LÖSCHEN drücken.

Chintak Chhapia
quelle
Mit SSMS 11.0.3128.0 überprüft, funktioniert dies nicht. Wahrscheinlich wurde nixed, weil es das native Löschverhalten trübt. (Der MSDN-Beitrag weist darauf hin, dass der vorherige Elementtext nach dem Löschen im Feld verbleibt. Dies ist eine schlechte UX-Entscheidung. Was ist, wenn ich nur den Text und nicht den gespeicherten Eintrag löschen wollte?)
JoeBrockhaus
In meinem Fall habe ich die Version 11.0.3000.0 und es funktioniert gut. Sie müssen nur auf Dropdown klicken, Server auswählen und dann auf Löschen klicken. Ja, es ist etwas verwirrend.
Chintak Chhapia
1
Wo klicken Sie auf Löschen? In meiner Benutzeroberfläche gibt es keine Schaltfläche zum Löschen. Selbst wenn Sie nur die Löschtaste drücken, wird der Text in der ComboBox gelöscht, und der Eintrag bleibt in der Dropdown-Liste.
JoeBrockhaus
Entschuldigung, mein Fehler, anstelle von "Klicken auf Löschen" hätte ich "Drücken Sie die Entf-Taste" schreiben sollen. Es gibt keine Schaltfläche zum Löschen. Sie müssen die Entf-Taste auf der Tastatur drücken.
Chintak Chhapia
6

Über die Eingabeaufforderung (Start \ Alle Programme \ Zubehör \ Eingabeaufforderung):

DEL /S SqlStudio.bin
ggponti
quelle
5

Hier ist der einfache Weg, öffnen Sie das Verbindungsfenster, klicken Sie auf die Dropdown-Liste Servername und bewegen Sie den Mauszeiger über die Verbindungszeichenfolge, die Sie löschen möchten, und drücken Sie dann Löschen.

Varus
quelle
3

Für Windows Vista und SQL Server 2005

Löschen Sie diese Datei oder öffnen Sie sie mit dem Editor und löschen Sie die gewünschten Servernamen aus dem Verlauf

%UserProfile%\Microsoft\Microsoft SQL Server\90\Tools\Shell\mru.dat
Mido-Ägypten
quelle
1

C: \ Benutzer \\ AppData \ Roaming \ Microsoft \ Microsoft SQL Server \ 100 \ Tools \ Shell

Peter
quelle
0

Anstatt diese Datei zu löschen oder umzubenennen:
1) Schließen Sie SQL Management Studio.
2) Suchen Sie die entsprechende Datei (siehe Beitrag oder Antworten oben).
3) Öffnen Sie die .bin- Datei in einem Text- / Hex-Editor wie NotePad ++.
4) Suchen Sie nach dem Namen einer der Dateien die Server und identifizieren Sie die Zeilennummer
5) Erstellen Sie eine Kopie der .bin / .dat-Datei
6) Löschen Sie diese Zeile, stellen Sie sicher, dass Sie die gesamte Zeile löschen. Dies ist möglich, wenn Sie viele Zeilen haben, die die Zeile umbrechen könnte.
7) Öffnen Sie SQL Management Studio. Ihre Dropdown-Liste ist leer

Pete
quelle