2

我有时使用 BCP 将数据导出/导入到无法登录操作系统的远程服务器,只能连接到数据库。我成功地使用 BCP 连接到这样的服务器:

bcp mytester.dbo.MyTable in MyTable.bcp -S Sybase157 -U sa -P SyAdmin -n

这当然只适用于 Sybase157 是在我的 sql.ini 中定义的。

我的问题:

a)是否有可能回避整个 sql.ini 的事情,只做类似 -S mydb.server.com 或 -S 123.123.123.123 的事情

如果不....

b) 我需要向 sql.ini 添加什么才能连接到远程服务器?

4

2 回答 2

1

sql.ini 所需的部分是远程服务器的主机名(或 ip)端口号。您必须至少拥有这两条信息。您不需要知道远程服务器的服务器名称。

Sybase 建议使用 Open Client Directory Service Editor (dsedit) 更改sql.ini文件(或interfacesunix 上的文件)

开始 > 程序 > Sybase 连接 > 打开客户端目录服务编辑器

只要主机名(或 ip)和端口正确,您就可以为所需的服务器选择任何有效名称。这将成为服务器名称,例如-S theNameYouUsedInSqlIni.

这不会更改远程服务器的服务器名称,或以任何方式影响远程服务器,它只会影响来自本地系统的连接。

将服务器添加到接口文件

如果您的环境中可以使用 LDAP,也可以使用 LDAP:

为 LDAP 配置 libctl.cfg/使用目录服务

于 2013-10-23T13:13:44.383 回答
0

(b) 的分析:复制远程服务器的 sql.ini 的内容并将其粘贴到客户端的 sql.ini 文件中。通过这样做,您将在客户端文件中获得远程服务器详细信息。然后,您可以使用相同的命令对远程服务器执行 bcp:

bcp mytester.dbo.MyTable in MyTable.bcp -S <remote_host_name> -U sa -P SyAdmin -n

不清楚问题 (a) 你必须使用 -U, -P 参数以及仅指定服务器是不够的

于 2013-10-23T04:00:23.880 回答