0

私は Linux で Sybase の作業を行っており、bcp のインとアウトはうまく機能しています。Linuxでの私の作業bcpは次のとおりです。

bcp drd02.dbo.APPL_ENVIRONMENT out APPL_ENVIRONMENT.bcp -U sa -P SyAdmin  -n

Windowsで同じことをしようとすると、次のエラーが発生します。

ct_connect(): ネットワーク パケット層: 内部ネット ライブラリ エラー: 2 つのエンドポイントを接続するための Net-Lib プロトコル ドライバの呼び出しに失敗しました

関連する詳細は次のとおりです。

iSQL GUI 経由でサーバーに接続できます。Sybase157 0.0.0.0 5000 と表示され、私の Drd02 データベースはオンラインで利用可能です。

c:\sybase\ini\sql.ini の内容は次のとおりです (drd02 行を追加しました)。

[Sybase157_XP]
master=NLWNSCK,0.0.0.0,5001
query=NLWNSCK,0.0.0.0,5001
drd02=NLWNSCK,0.0.0.0,5001

[Sybase157]
master=NLWNSCK,0.0.0.0,5000
query=NLWNSCK,0.0.0.0,5000
drd02=NLWNSCK,0.0.0.0,5000

[Sybase157_JSAGENT]
master=NLWNSCK,0.0.0.0,4900
query=NLWNSCK,0.0.0.0,4900

環境変数は次のとおりです。

%DSQUERY%=Sybase157
%SYBASE%=c:\Sybase

どう頑張っても繋がらない。提供できる助けがあれば幸いです。

4

1 に答える 1

0

私はそれを考え出した。IPアドレスでisqlに入ることができたという事実は、おそらく0.0.0.0がBcpで利用できないと思いました。

c:\sybase\ini\sql.ini を次のように変更しました。

から:

[Sybase157]
master=NLWNSCK,0.0.0.0,5000
query=NLWNSCK,0.0.0.0,5000
drd02=NLWNSCK,0.0.0.0,5000

に:

[Sybase157]
master=NLWNSCK,123.123.123.123,5000
query=NLWNSCK,0.0.0.0,5000
drd02=NLWNSCK,0.0.0.0,5000

vm のパブリック IP アドレスを sql.ini に入力した後、bcp はそれと正しく通信できました。

これは機能させるための 1 回限りの修正であり、この変更を行うと、データベースへの外部接続が混乱する可能性があります。これを正しく機能させるには、ループバック アダプターか何かが必要です。

于 2013-11-12T17:44:36.737 に答える