先安装了SqlServer 2005,然后发现要安装的应用程序中,数据脚本部分,写死的是指定的机器名,例如CRMFE,而我在安装SqlServer 2005前,修改的机器名,笔误,敲成了CRMEF,那么我修改机器名为CRMFE,会有一些问题:
1、在安装SqlServer 2005时,会根据机器名生成一些机器名开头的用户名,这些用户名, 我单独修改机器名,并不会同步修改它们。2、在SQL Management Studio中,显示的机器名还是旧的。3、还有一些其他我没有发现的问题可能。我想请教高手们,你们遇到过这样的情形吗,怎么做比较好,尤其是Tony哥等,一定要帮忙看看呀。

解决方案 »

  1.   

    http://hi.baidu.com/anydb/blog/item/faa2d4249d40b71a8a82a1bc.html要修改系统里面的东西才可以修改主机名。。
      

  2.   

    阿捷,你先参考一下这个http://jzh88250.blog.163.com/blog/static/303325532009111205339226/
      

  3.   

    执行以下语句:
    SELECT * FROM sys.servers
    把server_id为0的那个计算机名DROP,具体方法为:EXEC sp_dropserver 'name字段的内容(旧计算机名)'然后再运行 EXEC sp_addserver '新计算机名', 'local', 'duplicate_OK' 然后重起计算机(重起sql server)即可
      

  4.   

    DECLARE @srvname sysname
    SET @srvname=CAST(SERVERPROPERTY('ServerName') as sysname)
    IF NOT EXISTS(SELECT * FROM master.dbo.sysservers WHERE srvname=@srvname)
    EXEC sp_addserver @server = @srvname , @local = 'LOCAL'OR
    IF SERVERPROPERTY('ServerName')<>@@SERVERNAME
    BEGIN
    DECLARE @srvname sysname
    SET @srvname=@@SERVERNAME
    EXEC sp_dropserver @server=@srvname
    SET @srvname=CAST(SERVERPROPERTY('ServerName') as sysname)
    EXEC sp_addserver @server = @srvname , @local = 'LOCAL'
    END
      

  5.   

    第一个问题解决了,现在的情况是,我的脚本中会用到这些用户:
    这些用户的名字还是旧的,怎么办?旧的机器名是:CRMEBUAT
    正确的机器名(已经修改成这个了):CRMBEUAT但是sqlserver安装时根据旧的机器名生成的这些用户,怎么才能同步修改掉?谢谢tony哥,刚才qq中的指点!
      

  6.   

    顶上去,tony哥开完会,再帮我看看呀!