当前位置: 代码迷 >> Sql Server >> 【请问ROY,FC,大叔等】怎么修改SQL2005/2008实例名
  详细解决方案

【请问ROY,FC,大叔等】怎么修改SQL2005/2008实例名

热度:407   发布时间:2016-04-27 14:06:22.0
【请教ROY,FC,大叔等】如何修改SQL2005/2008实例名
有没有官方一点的方法?风险小一点的,网上搜的那些太吓人了。

------解决方案--------------------
修改无异于重装,所以无法修改。
------解决方案--------------------
前几天安装了sqlserver 2008,当时是刚装的系统,后来回到公司要加入域,就修改了一下机器名称,加入域后发现机器名称与以前的不一致了,导致的问题就是SqlServer的实例名称不一致了,不能访问了,在网上查了一下终于可以修改了,方法如下:

SELECT @@SERVERNAME ,serverproperty('servername') 

 

先用以上语句在master表里面查询一下,看看两个名字是不是一样,有人会说了实例名都登录不了了,还怎么查询呀,告诉你吧,你可以先设置一下用IP访问。哈哈

 

如果发现上面查询的名称不一致,执行下面的sql

 

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


执行完后,要立即重启一下SqlServer服务,

然后用实例名登录,就成功了!OK!


------解决方案--------------------
SQL code
--使用下面的代码重新添加当前SQL Server实例的信息,处理完成后,应该重新启动MSSQLSERVER服务使修改生效。DECLARE @srvname sysnameSET @srvname=CAST(SERVERPROPERTY('ServerName') as sysname)IF NOT EXISTS(SELECT * FROM master.dbo.sysservers WHERE [email protected])    EXEC sp_addserver @server = @srvname , @local = 'LOCAL'--执行下面的代码,将@@SERVERNAME的值修改为与SERVERPROPERTY('ServerName')一样即可。修改完成后,需要重新启动MSSQLSERVER服务使修改生效。IF SERVERPROPERTY('ServerName')<>@@SERVERNAMEBEGIN    DECLARE @srvname sysname    SET @srvname=@@SERVERNAME    EXEC sp_dropserver @[email protected]    SET @srvname=CAST(SERVERPROPERTY('ServerName') as sysname)    EXEC sp_addserver @server = @srvname , @local = 'LOCAL'END
------解决方案--------------------
SQL code
--查看当前实例名select @@SERVICENAME/*MSSQLSERVER*/--重新安装,不选择默认实例,选择新建,可以新建实例,但是修改我也不会。
------解决方案--------------------
以上修改也仅限于默认实例
命名实例
除了重装 也没什么好方法

------解决方案--------------------
sp_addserver
sp_dropserver

在聯機看這兩個系統存儲過程用法

------解决方案--------------------
探讨
修改无异于重装,所以无法修改。
  相关解决方案