2016-11-17 161 views
0

任何人都知道爲什麼bcp無法連接到由AWS託管的SQL服務器而SSMS可以的原因? 我有雙重檢查服務器和用戶帳戶的詳細信息,他們都匹配。bcp無法連接到AWS SQL Server,但SSMS可以

我使用的是通用的命令導入CSV文件:

bcp DB_Name.dbo.Table in "somefile_file.csv" -c -S xxx.rds.amazonaws.com -U username -P xxx -b 1000 

的錯誤是:

SQLState = 08001, NativeError = 53 
Error = [Microsoft][ODBC Driver 13 for SQL Server]Named Pipes Provider: Could not open a connection to SQL Server [53]. 
SQLState = 08001, NativeError = 53 
Error = [Microsoft][ODBC Driver 13 for SQL Server]A network-related or instance-specific error has occurred while establishing a connection to SQL Server. Server is not found or not accessible. Check if instance name is correct and if SQL Server is configured to allow remote connections. For more information see SQL Server Books Online. 
SQLState = S1T00, NativeError = 0 
Error = [Microsoft][ODBC Driver 13 for SQL Server]Login timeout expired 

是使用不同的端口BCP可能?

+0

如果你有一個命名實例,服務器應該被指定爲'servername \ instancename'。不知道這是否適用於你的情況,只是一個猜測。 –

回答

0

第一個錯誤顯示bcp使用命名管道協議連接到服務器。顯然,這個協議對於網絡連接是不可訪問的。

在運行bcp的客戶端工作站上,檢查SQL Server配置管理器並確保在客戶端配置列表中啓用TCP/IP並優先化。奇怪的是,bcp沒有用於協議選擇的命令行開關,所以這是我能想到的管理它的唯一方法。

P.S.另一種選擇是以ip_address,port_number的形式指定服務器地址,但我認爲你不會覺得這個選項特別有吸引力。

+0

在SSMS中,網絡協議是默認的。我沒有本地的SQL Server。可能是我需要啓用信任服務器證書? – chhenning

+0

你應該在這臺機器上安裝SQL Server客戶端工具,否則首先出現'bcp.exe'的方式?不,這看起來不像認證相關的問題。 –

+0

最後得到SQL Server配置管理器運行。順序是共享內存(1),TCP/IP(2)和命名管道(3)。儘管如此,即使當我禁用命名管道時,也會得到相同的錯誤消息。 – chhenning

相關問題