更改计算机名称和全名后,电脑显示SQL Server无法找到默认实例

请指定一个现有的实例上调用SQL server.exe的名称。

  方法如下:

    重新启动计算机,然后系统会给出一个出错信息:“安装文件被破坏,或者未知的包标识”。看起来很吓人。但实际上你只需要重新运行SQL   Server的安装程序,会有提示“是否升级到当前版本”。

    点击Yes,安装程序很快就结束了。实际上并没有进行重新安装,只是重新设置了有关服务器名字方面的选项。然后需要运行一些存储过程重置服务器名字,以便让SQL   Server中的一些函数,例如有关复制的函数,能够有效地工作。   

    切换到示范计算机。先关掉一些刚才启动的应用程序。到“我的电脑”属性,转到“网络标示”的属性,改变这台计算机的名字。把这台计算机的名字改为“Win2kSQL”,点击OK。然后提示需要重新启动计算机。重新启动。   

    重新启动后,我们回到了登录界面。正如我们刚才已经提到的,有提示说“安装文件被破坏,或者未知的包标识”。   

    现在需要登录到服务器上,转到SQL   Server安装文件的目录,然后重新运行安装程序。   

    到SQL   Server安装文件的目录,运行安装程序。NT有提示说有SQL   Server服务不能正常运行。需要等一会儿安装程序才能继续。   

      Windows   NT提示说服务控制失败。现在安装程序可以继续了,接下来安装程序询问安装到哪里。选择本地安装。然后是搜索已安装组件。下面安装程序询问是否升级到标准版。这个提示看起来比较奇怪,但这正是我们现在想要的。点击Yes,SQL   Server将更新一些服务器设置。现在运行完毕,我们返回并启动SQL   Server服务。   

      打开Query   Ananlyzer,转到脚本目录,打开这个叫做“Rename   SQL”的脚本。如果我们现在打开sysservers表的话,我们就会发现它仍然是指向原先的服务器名。我们需要把这个服务器先删除,然后再添加,以便让sysservers表能够反映新的服务器名。现在我们来运行这段脚本,删除原先的服务器,然后再添加。

     --打开修改系统表的开关   
      EXEC   sp_configure   'allow   updates',1     RECONFIGURE   WITH   OVERRIDE      
      update   master..sysservers   set   srvname='新服务器名',datasource='新服务器名',srvnetname='新服务器名'   where   srvname='旧服务器名'   
      --关闭修改系统表的开关   
      EXEC   sp_configure   'allow   updates',0     RECONFIGURE   WITH   OVERRIDE     go。

温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-09-16
安装完之后就不能改名了,因为那些服务啊什么的都是绑定到之前的电脑名的,而且改不了;
最好是改完名称后再安装,否则只能先卸载再重装了。 不需要重装操作系统,只需要重装SQL Server就可以了
第2个回答  2011-09-19
每个电脑都有一个sid号码,也就是安全证书,那些服务啊什么的都是绑定到之前的电脑名的,而且改不了;
最好是改完名称后再安装,否则只能先卸载再重装了。 不需要重装操作系统,只需要重装SQL Server就可以了
第3个回答  推荐于2017-10-03
备份数据文件,然后按下面的步骤处理:

1.新建一个同名的数据库(数据文件与原来的要一致)

2.再停掉sql server(注意不要分离数据库)

3.用原数据库的数据文件覆盖掉这个新建的数据库

4.再重启sql server

5.此时打开企业管理器时会出现置疑,先不管,执行下面的语句(注意修改其中的数据库名)

6.完成后一般就可以访问数据库中的数据本回答被提问者采纳
第4个回答  2012-11-09
执行下面的方法吧,我的成功了!
if serverproperty('servername') <> @@servername
begin
declare @server sysname
set @server = @@servername
exec sp_dropserver @server = @server
set @server = cast(serverproperty('servername') as sysname)
exec sp_addserver @server = @server , @local = 'LOCAL'
end
相似回答