您好,我是小DAI,专注于数据库管理员相关的技术问答,请问有什么可以帮您?

sp_addserver

说明

定义远程服务器或定义本地服务器的名称;指定使用 host 和 port 参数时用于远程过程调用 (RPC) 的服务器。

语法


sp_addserver <lname>[, <class>[,< pname>]]

仅限组件集成服务 (CIS):


sp_addserver '<logical_server_name>', ASEnterprise, '<host>:<port>:<filter>

参数

lname

是用于指系统上的服务器的名称。如果尚不存在 <lname> 的条目,则 sp_addserver 会在 sysservers 表中添加一行。服务器名必须是唯一的并且必须符合标识符的规则。

class

标识要添加的服务器的类别。服务器 <class> 为“null”表示服务器为缺省类别“ASEnterprise”。<class> 参数的允许值:

  • local 本地服务器(只能有一个)在启动或重新启动 SAP ASE 服务器后只能使用一次,以标识本地服务器名称以便它可以显示在 SAP ASE 服务器输出的消息中

  • null 未定义任何类别的远程服务器

  • ASEnterprise 所有版本的 SAP ASE;未提供对 SQL Server 4.9 的支持。

  • ASAnywhere Adaptive Server Anywhere 6.0 版或更高版本。

  • ASIQ 具有服务器类 ASIQ 的服务器是 Adaptive Server IQ 12.0 版或更高版本。

  • direct_connect(仅用于组件集成服务) 一个基于 Open Server 的应用程序,符合 direct_connect 接口规范。

  • sds 符合 SAP ASE Specialty Data Store Developer’s Kit(《Adaptive Server Specialty Data Store 开发人员工具包》)手册中所述的 Specialty Data Store™ 接口要求。

    注意

    SAP ASE 服务器不支持服务器类 db2。若要使用 db2,请将您的 db2 服务器类迁移到 direct_connect 类。

    pname

    是名为 <lname> 的服务器在 interfaces 文件中的名称。这使您可以为需要与之通讯的其它 SAP ASE 服务器或 Backup Server 建立本地别名。如果未指定 <pname>,则将使用 <lname>

    (仅适用于组件集成服务)您可以使用 <pname> 指定主机名或 IP 地址以及要连接到的服务器端口。这使在使用 CT-Library 时无需为服务器提供目录服务(例如 LDAP 或 interfaces 文件)。使用以下格式:

    
    "hostname:port"
    
    "ipaddr:port"
    

    注意

    您必须用单引号或双引号将主机名和端口引起来以使用此选项。

    filter

    在集群环境中 – 添加用于远程过程调用 (RPC) 的远程服务器。

    
    <filter> = ssl [= 'CN = <common_name>']
    

    使用以下格式声明 <host:port> 编号:

    
    ip_address:port
    

    示例

    示例 1

    (在集群环境中)添加名为 big_logical_server 的远程服务器:

    
    sp_addserver 'big_logical_server', ASEntrprise, 
        'maynard:23954:ssl= "CN=ase1.big server 1.com"'
    

    用于公用名的规则与用于动态监听器和目录服务条目的规则相同。

    示例 2

    在 master.dbo.sysservers 中为名为 GATEWAY 的远程服务器添加一个条目。<pname> 也是 GATEWAY:

    
    sp_addserver GATEWAY
    

    示例 3

    在 master.dbo.sysservers 中为名为 GATEWAY 的远程服务器添加一个条目。<pname> 是 VIOLET。如果 GATEWAY 已存在具有不同 <pname> 的 sysservers 条目,则服务器 GATEWAY 的 <pname> 将更改为 VIOLET:

    
    sp_addserver GATEWAY, null, VIOLET
    

    示例 4

    为名为 PRODUCTION 的本地服务器添加一个条目:

    
    sp_addserver PRODUCTION, local
    

    示例 5

    (仅适用于组件集成服务)为主机名为“myhost”、端口号为 10224 的远程 SAP ASE 服务器添加一个条目:

    
    sp_addserver S1, ASEnterprise, "myhost:10224"
    

    注意

    如果对 <pname> 使用此语法,则 SAP ASE 站点处理器不能成功连接到此服务器;只有 CIS 连接识别 <pname> 的这种语法。

    示例 6

    (仅适用于组件集成服务)为主机 IP 为 192.123.456.010、端口号为 11222 的远程 SAP ASE 服务器添加一个条目:

    
    sp_addserver S3, direct_connect, "192.123.456.010:11222"
    

    用法

    使用 sp_addserver 时,还存在一些其它注意事项:

  • sysservers 表标识本地服务器的名称及其选项,以及本地服务器可与之通信的任何远程服务器。

  • 若要对远程服务器执行远程过程调用,远程服务器必须存在于 sysservers 表中。

  • 如果 <lname> 已作为 sysservers 表中的服务器名存在,则 sp_addserver 将远程服务器的 srvnetname 更改为 <pname> 指定的名称。当它执行此操作时,sp_addserver 报告它更改的服务器、以前的网络名和新网络名。

  • 服务器的安装或升级过程在 sysservers 中为 Backup Server 添加一个条目。如果删除了此条目,就不能备份数据库了。

  • SAP ASE 服务器要求 Backup Server 的 <lname> 为 SYB_BACKUP。如果您不想使用该名称作为 Backup Server 的名称,或者如果您的系统上运行了多个 Backup Server,则用 sp_addserver 修改服务器 SYB_BACKUP 的 <pname>,以便 SAP ASE 服务器可以与 Backup Server 进行通讯以进行数据库转储和装载。

  • 如果指定的 <lname>、<pname> 和 <class> 已存在于 sysservers 中,则 sp_addserver 将输出一条错误消息并且不更新 sysservers。

  • 使用 sp_serveroption 设置或清除服务器选项。