打开SSMS时获得的第一个对话框(我的是2008 R2)允许您选择要连接的服务器。
我在该列表中至少有六台服务器,包括一个名为MYPC/SQLSERVEREXPRESS
Windows更新昨晚运行并重新启动了我的计算机,现在我的SSMS服务器列表已经消失。我可以选择(local)
或(browse for more)
我之前保存的服务器及其保存的登录信息发生了什么变化?
答案 0 :(得分:2)
存储这些用于2008的文件位于c:\%UserProfile%\ Microsoft \ Microsoft SQL Server \ 100 \ Tools \ Shell \ SqlStudio.bin
我的猜测是它仍然存在,但被您的某个更新覆盖,您可以检查它以查看它上次修改的时间。
如果再次发生这种情况,您应该使用已注册的服务器并导出文件以节省时间。
答案 1 :(得分:1)
据我了解,您希望从该文件中检索您的凭据。
有一种方法可以恢复你的密码,如果你还有sqlstudio.bin文件,你可以在那里看到“密码”条目。
首先,一些理论:当SSMS保存连接对象时,它使用一些加密方法加密密码,即对您的Windows登录进行绑定。如果您尝试将sqlstudio.bin复制到其他计算机/用户配置文件,则不会解密密码。因此,您必须在相同的Windows帐户下执行所有操作,然后使用sqlstudio.bin生成。我不能告诉你,如果你可以直接操作sqlstudio.bin - 我想有一些校验和会阻止直接操作,但还有另一种方法。
我知道上面写的信息,因为我自己开发了SSMS的加载项 - SSMSBoost。我已经在那里实现了管理首选连接的逻辑(这样你实际上不再需要标准对话)。我使用完全相同的SSMS对象来存储连接并将其序列化为XML,因此更容易操作。下图显示了相同连接的sqlstudio.bin和SSMSBoostSettings.xml的内容。您可以识别,用户名和密码二进制数据是相同的。因此,要恢复密码,您必须:
安装ssmsboost
使用sql server security
打开SSMSBoostSettings.xml(在保存设置后,您将在设置对话框中看到该文件的路径。只需保存,关闭并重新打开它。路径显示在底部)
关闭SSMS,在编辑器中打开sqlstudio.bin和ssmsboostsettings.xml
修改ssmsboostsettings.xml中的条目 - 从sqlstudio.bin输入服务器的数据 - 地址,数据库名称,用户名。小心地复制密码数据。
保存xml并打开SSMS - SSMSBoost现在将在首选连接中显示您的连接,您将能够连接到数据库。 (见第二张图)
答案 2 :(得分:0)
查看此答案以查看存储连接历史记录的位置。您可以在那里导航以查看您的文件是否仍然存在。
How to remove "Server name" items from history of SQL Server Management Studio