sp_addserver (Transact-SQL)

 

SQL Server定义 本地实例的名称。SQL Server重命名承载 的计算机后,请使用 sp_addserverSQL Server 数据库引擎 向 实例通知新的计算机名称。数据库引擎必须在该计算机承载的所有实例上执行此过程。数据库引擎无法更改的实例名称。若要更改命名实例的实例名称,安装具有所需名称的新实例、从旧实例中分离数据库文件、将数据库附加到新实例并删除旧实例。或者,你可以在客户端计算机上创建客户端别名名称,无需更改服务器计算机上的实例名称即可将连接重定向到其他服务器和实例名称或服务器:端口组合。

适用范围:SQL Server(SQL Server 2008 到当前版本)。

主题链接图标Transact-SQL 语法约定

语法

sp_addserver [ @server = ] 'server',
     [ @local = ] 'local' 
     [ , [ @duplicate_ok = ] 'duplicate_OK' ]

参数

  • [ @server = ] 'server'
    服务器的名称。Microsoft服务器名称必须唯一且必须符合 Windows 计算机名称的规则,但不允许包含空格。server 的数据类型为 sysname,无默认值。

    SQL Server如果计算机上安装了多个 实例,则实例将如同在一个独立服务器上运行。通过以下格式引用 server 来指定命名实例:servername\instancename

  • [ @local = ] 'LOCAL'
    将正添加的服务器指定为本地服务器。@local 的数据类型为 varchar(10),默认值为 NULL。将 @local 指定为 LOCAL 会将 @server*server* 定义为本地服务器的名称,并使 @@SERVERNAME 函数返回 的值。

    SQL Server 安装程序会在安装过程中将此变量设置为计算机名称。SQL Server默认情况下,用户可通过计算机名连接到 的实例而无需额外的配置。

    数据库引擎只有重新启动后,本地的定义才会生效。数据库引擎每个实例中只能定义一个本地服务器。

  • [ @duplicate_ok = ] 'duplicate_OK'
    指定是否允许重复的服务器名。@duplicate_OK 的数据类型为 varchar(13),默认值为 NULL。@duplicate_OK 只能有 duplicate_OK 或 NULL 这两个值。如果指定了 duplicate_OK 且要添加的服务器名称已经存在,则不会发生错误。如果未使用命名参数,则必须指定 @local。

返回代码值

0(成功)或 1(失败)

备注

若要设置或清除服务器选项,请使用 sp_serveroption。

在用户定义的事务内不能使用 sp_addserver。

不再使用 sp_addserver 来添加远程服务器。改为使用 sp_addlinkedserver。No text is shown for link 'fed3adb0-4c15-4a1a-8acd-1b184aff558f'. The title of the linked topic might be empty.

权限

要求具有 setupadmin 固定服务器角色的成员身份。

示例

数据库引擎下面的示例将承载 SQL Server 的计算机名称的ACCOUNTS条目更改为 。

sp_addserver 'ACCOUNTS', 'local';

请参阅

重命名承载 SQL Server 独立实例的计算机
sp_addlinkedserver (Transact-SQL)
sp_dropserver (Transact-SQL)
sp_helpserver (Transact-SQL)
系统存储过程 (Transact-SQL)
安全存储过程 (Transact-SQL)