talend 与 sql server 2008 R2 的连接问题
Posted
技术标签:
【中文标题】talend 与 sql server 2008 R2 的连接问题【英文标题】:talend connection with sql server 2008 R2 issues 【发布时间】:2017-02-04 07:49:30 【问题描述】:我一直在尝试与SQL Server 2008
建立联系,但我无法连接,并且出现以下错误。它说:我必须检查TCP
端口是否被防火墙阻止......好吧,不,不是!
我该怎么办???
Echec de la connexion Vous devez modifier les paramètres de la base de données.
java.lang.RuntimeException: com.microsoft.sqlserver.jdbc.SQLServerException: Échec de la connexion TCP/IP à l'hôte (local), port 1433. Erreur : « null. Vérifiez les propriétés de connexion. Assurez-vous qu'une instance de SQL Server est en cours d'exécution sur l'hôte et accepte les connexions TCP/IP au port. Vérifiez que les connexions TCP au port ne sont pas bloquées par un pare-feu. ».
at org.talend.core.model.metadata.builder.database.JDBCDriverLoader.getConnection(JDBCDriverLoader.java:195)
at org.talend.core.model.metadata.builder.database.ExtractMetaDataUtils.connect(ExtractMetaDataUtils.java:1092)
at org.talend.core.model.metadata.builder.database.ExtractMetaDataFromDataBase.testConnection(ExtractMetaDataFromDataBase.java:315)
at org.talend.metadata.managment.repository.ManagerConnection.check(ManagerConnection.java:289)
at org.talend.repository.ui.wizards.metadata.connection.database.DatabaseForm$62.runWithCancel(DatabaseForm.java:3953)
at org.talend.repository.ui.wizards.metadata.connection.database.DatabaseForm$62.runWithCancel(DatabaseForm.java:1)
at org.talend.repository.ui.dialog.AProgressMonitorDialogWithCancel$1.runnableWithCancel(AProgressMonitorDialogWithCancel.java:77)
at org.talend.repository.ui.dialog.AProgressMonitorDialogWithCancel$ARunnableWithProgressCancel$1.call(AProgressMonitorDialogWithCancel.java:161)
at java.util.concurrent.FutureTask.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
Caused by: com.microsoft.sqlserver.jdbc.SQLServerException: Échec de la connexion TCP/IP à l'hôte (local), port 1433. Erreur : « null. Vérifiez les propriétés de connexion. Assurez-vous qu'une instance de SQL Server est en cours d'exécution sur l'hôte et accepte les connexions TCP/IP au port. Vérifiez que les connexions TCP au port ne sont pas bloquées par un pare-feu. ».
at com.microsoft.sqlserver.jdbc.SQLServerException.makeFromDriverError(SQLServerException.java:190)
at com.microsoft.sqlserver.jdbc.SQLServerException.ConvertConnectExceptionToSQLServerException(SQLServerException.java:241)
at com.microsoft.sqlserver.jdbc.SocketFinder.findSocket(IOBuffer.java:2243)
at com.microsoft.sqlserver.jdbc.TDSChannel.open(IOBuffer.java:491)
at com.microsoft.sqlserver.jdbc.SQLServerConnection.connectHelper(SQLServerConnection.java:1309)
at com.microsoft.sqlserver.jdbc.SQLServerConnection.login(SQLServerConnection.java:991)
at com.microsoft.sqlserver.jdbc.SQLServerConnection.connect(SQLServerConnection.java:827)
at com.microsoft.sqlserver.jdbc.SQLServerDriver.connect(SQLServerDriver.java:1012)
at org.talend.core.model.metadata.builder.database.DriverShim.connect(DriverShim.java:41)
at org.talend.core.model.metadata.builder.database.JDBCDriverLoader.getConnection(JDBCDriverLoader.java:186)
... 9 more
【问题讨论】:
你怎么知道不是?最好确认的是telnet
你说得对,兄弟,我确实使用了这个 cmd netstat -aon,它给了我几个端口.. 我用过其中一个,并且成功了。谢谢:)
今天它不工作兄弟,我确实检查了我的 sql 服务器是否连接到特定端口 808 并且它工作正常。但总是 talend 无法获得连接 :(
【参考方案1】:
问题已解决, Talend 和 SQL Server 在同一台机器上,所以... 我是怎么做到的:在 Sql 服务器上 1 - 服务器类型:数据库引擎 2- 服务器名称:127.0.0.1 3- 身份验证:Sql Server 身份验证 4-登录:sa 5-密码:*****(您想要的任何密码) 然后我去了 Talend: 我确实放了相同的规范(特别是通行证和登录名)
【讨论】:
【参考方案2】:即使防火墙允许端口通信但 SQL 服务器本身未启用 TCP/IP 协议,连接也可能无法正常工作。 是否能够使用其他使用 TCP/IP 协议的客户端工具连接到 SQL Server?使用 SQL 服务器配置管理器“启用”TCP/IP 访问。
【讨论】:
id 是这样做的,TCP/ip 协议是允许的,而且我确实停用了我的防病毒软件和防火墙....没有连接!!!以上是关于talend 与 sql server 2008 R2 的连接问题的主要内容,如果未能解决你的问题,请参考以下文章
微软的SQL Server 2005与SQL Server 2008有啥区别?学习选哪个好?
sql server 2012的备份怎么还原到sql server 2008
sql server 2008 在与 SQL Server 提示建立连接时出现与网络相关的或特定于实例的错误