답변:
여기에 또 다른 대답은 2012 년부터 서버에 연결 대화 상자에서 캐시 된 서버 이름을 제거하는 방법을 통해 캐시 된 로그인 제거를 제거 할 수 있다고 언급합니다 . . MRU 목록 에서이 삭제가 2016 년과 2017 년에 제대로 작동하는지 확인했습니다.
SQL Server Management Studio 2017 에서 파일 삭제
C:\Users\%username%\AppData\Roaming\Microsoft\SQL Server Management Studio\14.0\SqlStudio.bin
SQL Server Management Studio 2016 에서 파일 삭제
C:\Users\%username%\AppData\Roaming\Microsoft\SQL Server Management Studio\13.0\SqlStudio.bin
SQL Server Management Studio 2014 에서 파일 삭제
C:\Users\%username%\AppData\Roaming\Microsoft\SQL Server Management Studio\12.0\SqlStudio.bin
SQL Server Management Studio 2012 에서 파일 삭제
C:\Users\%username%\AppData\Roaming\Microsoft\SQL Server Management Studio\11.0\SqlStudio.bin
SQL Server Management Studio 2008 에서 파일 삭제 C:\Users\%username%\AppData\Roaming\Microsoft\Microsoft SQL Server\100\Tools\Shell\SqlStudio.bin
SQL Server Management Studio 2005 는 파일을 삭제합니다 – 위의 답변과 같지만 Vista 경로.
C:\Users\%username%\AppData\Roaming\Microsoft\Microsoft SQL Server\90\Tools\Shell\mru.dat
Vista / 7 / 8의 프로필 경로입니다.
편집하다:
참고 AppData
숨겨진 폴더입니다. 탐색기에서 숨겨진 폴더를 표시해야합니다.
편집 : 서버 / 사용자 이름 드롭 다운에서 삭제를 누르기 만하면됩니다 (SSMS v18.0에서 작동하는 것으로 확인 됨). 에서 원본 소스 https://blog.sqlauthority.com/2013/04/17/sql-server-remove-cached-login-from-ssms-connect-dialog-sql-in-sixty-seconds-049/ 언급 이 기능은 2012 년부터 제공됩니다!
C:\Users\%username%\AppData\Roaming\Microsoft\Microsoft SQL Server\100\Tools\Shell\SqlStudio.bin
Win7에서 제거 가 저에게 효과적이었습니다.
SSMS 2012 솔루션을 찾는 사람들은 다음 답변을 참조하십시오.
기본적으로 2012 년에는 서버 목록 드롭 다운에서 서버를 삭제하여 해당 서버에 대한 모든 캐시 된 로그인을 지울 수 있습니다.
v17 (빌드 14.x)에서도 작동합니다.
내 시나리오에서는 잊고 싶지 않은 많은 다른 저장된 연결이있는 목록에서 특정 사용자 이름 / 비밀번호 만 제거하고 싶었습니다. SqlStudio.bin
다른 사람들이 여기서 논의 하고있는 파일은 Microsoft.SqlServer.Management.UserSettings.SqlStudio
클래스 의 .NET 이진 직렬화이며 특정 설정을 수정하기 위해 직렬화 해제, 수정 및 직렬화 해제 할 수 있습니다.
특정 로그인을 제거하기 위해 새 C # .Net 4.6.1 콘솔 응용 프로그램을 만들고 다음 dll에있는 네임 스페이스에 대한 참조를 추가했습니다. C:\Program Files (x86)\Microsoft SQL Server\130\Tools\Binn\ManagementStudio\Microsoft.SqlServer.Management.UserSettings.dll
(SSMS 버전에 따라 경로가 약간 다를 수 있음)
거기에서 원하는대로 설정을 쉽게 만들고 수정할 수 있습니다.
using System.IO;
using System.Runtime.Serialization.Formatters.Binary;
using Microsoft.SqlServer.Management.UserSettings;
class Program
{
static void Main(string[] args)
{
var settingsFile = new FileInfo(@"C:\Users\%username%\AppData\Roaming\Microsoft\SQL Server Management Studio\13.0\SqlStudio.bin");
// Backup our original file just in case...
File.Copy(settingsFile.FullName, settingsFile.FullName + ".backup");
BinaryFormatter fmt = new BinaryFormatter();
SqlStudio settings = null;
using(var fs = settingsFile.Open(FileMode.Open))
{
settings = (SqlStudio)fmt.Deserialize(fs);
}
// The structure of server types / servers / connections requires us to loop
// through multiple nested collections to find the connection to be removed.
// We start here with the server types
var serverTypes = settings.SSMS.ConnectionOptions.ServerTypes;
foreach (var serverType in serverTypes)
{
foreach (var server in serverType.Value.Servers)
{
// Will store the connection for the provided server which should be removed
ServerConnectionSettings removeConn = null;
foreach (var conn in server.Connections)
{
if (conn.UserName == "adminUserThatShouldBeRemoved")
{
removeConn = conn;
break;
}
}
if (removeConn != null)
{
server.Connections.RemoveItem(removeConn);
}
}
}
using (var fs = settingsFile.Open(FileMode.Create))
{
fmt.Serialize(fs, settings);
}
}
}
SqlStudio.bin
파일을 당신은 모두를 볼 수 ..UserSettings
와 ..UserSettings.SqlStudio
. 거기 에서 네임 스페이스와 클래스가 포함 된 ..UserSettings.dll
동일한 디렉토리에서 쉽게 찾을 수 있었습니다 ssms.exe
.
Microsoft.SqlServer.Management.UserSettings, Version=14.0.0.0, Culture=neutral...
낚시하는 법을 가르쳐주었습니다.
이것은 SQL Server Management Studio v18.0에서 작동합니다.
"SqlStudio.bin"파일이 더 이상 존재하지 않는 것 같습니다. 대신 내 설정이 모두이 파일에 저장됩니다.
C:\Users\*********\AppData\Roaming\Microsoft\SQL Server Management Studio\18.0\UserSettings.xml
<Element>.......</Element>
주변 의 전체 블록 을 삭제하십시오 .gluecks는 더 이상 지적 SqlStudio.bin
에 마이크로 소프트 SQL Server 관리 Studio (18) . 나는 또한 이것을 발견 UserSettings.xml
했다 C:\Users\userName\AppData\Roaming\Microsoft\SQL Server Management Studio\18.0
. 그러나 <Element>
자격 증명을 포함하는 제거가 작동하지 않는 것 같습니다. XML 파일을 닫았다가 다시 열면 다시 xml 파일로 돌아옵니다.
알고 보니, 당신이해야 할 첫 번째 SQL Server Management Studio를 닫 편집 후, UserSettings.xml
예를 들어, 여러분이 좋아하는 편집기, 비주얼 스튜디오 코드에서 파일을. 이 XML 파일 외에 SSMS 어딘가에 캐시 된 것 같습니다! 그리고 그것은 아닙니다 Control Panel\All Control Panel Items\Credential Manager\Windows Credentials
.
지우다:
C : \ Documents and Settings \ % 사용자 이름 % \ Application Data \ Microsoft \ Microsoft SQL Server \ 90 \ Tools \ Shell \ mru.dat "
XP에서 .mru.dat 파일은 C : \ Documents and Settings \ Name \ Application Data \ Microsoft \ Microsoft SQL Server \ 90 \ Tools \ ShellSEM에 있습니다.
그러나 제거해도 아무런 효과가 없습니다.
XP에서 목록을 제거하려면 C : \ Documents and Settings \ Name \ Application Data \ Microsoft \ Microsoft SQL Server \ 100 \ Tools \ Shell에서 sqlstudio bin 파일을 잘라내 바탕 화면에 붙여 넣습니다.
SQL을 사용해보십시오
제대로 작동하면 데스크탑에서 sqlstudio bin 파일을 삭제하십시오.
쉬운 :)