SQL Server Management Studio - 服务器名称消失

时间:2012-10-25 13:38:56

标签: sql-server-2008-r2 ssms sql-server-2008

打开SSMS时获得的第一个对话框(我的是2008 R2)允许您选择要连接的服务器。

我在该列表中至少有六台服务器,包括一个名为MYPC/SQLSERVEREXPRESS

的本地服务器

Windows更新昨晚运行并重新启动了我的计算机,现在我的SSMS服务器列表已经消失。我可以选择(local)(browse for more)

我之前保存的服务器及其保存的登录信息发生了什么变化?

3 个答案:

答案 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的内容。您可以识别,用户名和密码二进制数据是相同的。因此,要恢复密码,您必须:

  1. 安装ssmsboost

  2. 使用sql server security

  3. 向ANY数据库添加首选连接
  4. 打开SSMSBoostSettings.xml(在保存设置后,您将在设置对话框中看到该文件的路径。只需保存,关闭并重新打开它。路径显示在底部)

  5. 关闭SSMS,在编辑器中打开sqlstudio.bin和ssmsboostsettings.xml

  6. 修改ssmsboostsettings.xml中的条目 - 从sqlstudio.bin输入服务器的数据 - 地址,数据库名称,用户名。小心地复制密码数据。

  7. 保存xml并打开SSMS - SSMSBoost现在将在首选连接中显示您的连接,您将能够连接到数据库。 (见第二张图)

  8. retrieve password ssms connection enter image description here

答案 2 :(得分:0)

查看此答案以查看存储连接历史记录的位置。您可以在那里导航以查看您的文件是否仍然存在。

How to remove "Server name" items from history of SQL Server Management Studio