web-dev-qa-db-fra.com

Connecter Pentaho à MS SQL Server (Natif)

Je suis très nouveau dans l'utilisation de PENTAHO. J'ai besoin de connecter ce logiciel à MS SQL Server (Natif). J'ai déjà essayé de le connecter plusieurs fois, mais à chaque fois que je testais la connexion, cela échouait. C'est le message d'erreur qui se produit chaque fois que je teste la connexion.

Error connecting to database [sutera] : 
org.pentaho.di.core.exception.KettleDatabaseException: 
Error occured while trying to connect to the database

Error connecting to database: (using class   

com.Microsoft.sqlserver.jdbc.SQLServerDriver)

The TCP/IP connection to the Host 172.16.1.133, port 1433 has failed. Error: "connect timed out. Verify the connection properties, check that an instance of SQL Server is running on the Host and accepting TCP/IP connections at the port, and that no firewall is blocking TCP connections to the port.".


org.pentaho.di.core.exception.KettleDatabaseException: 
Error occured while trying to connect to the database

Error connecting to database: (using class com.Microsoft.sqlserver.jdbc.SQLServerDriver)
The TCP/IP connection to the Host 172.16.1.133, port 1433 has failed. Error: "connect timed out. Verify the connection properties, check that an instance of SQL Server is running on the Host and accepting TCP/IP connections at the port, and that no firewall is blocking TCP connections to the port.".


at org.pentaho.di.core.database.Database.normalConnect(Database.Java:368)
at org.pentaho.di.core.database.Database.connect(Database.Java:317)
at org.pentaho.di.core.database.Database.connect(Database.Java:279)
at org.pentaho.di.core.database.Database.connect(Database.Java:269)
at org.pentaho.di.core.database.DatabaseFactory.getConnectionTestReport(DatabaseFactory.Java:86)
at org.pentaho.di.core.database.DatabaseMeta.testConnection(DatabaseMeta.Java:2464)
at org.pentaho.ui.database.event.DataHandler.testDatabaseConnection(DataHandler.Java:533)
at Sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at Sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at Sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at Java.lang.reflect.Method.invoke(Unknown Source)
at org.pentaho.ui.xul.impl.AbstractXulDomContainer.invoke(AbstractXulDomContainer.Java:329)
at org.pentaho.ui.xul.swing.tags.SwingButton$OnClickRunnable.run(SwingButton.Java:58)
at Java.awt.event.InvocationEvent.dispatch(Unknown Source)
at Java.awt.EventQueue.dispatchEventImpl(Unknown Source)
at Java.awt.EventQueue.access$200(Unknown Source)
at Java.awt.EventQueue$3.run(Unknown Source)
at Java.awt.EventQueue$3.run(Unknown Source)
at Java.security.AccessController.doPrivileged(Native Method)
at Java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
at Java.awt.EventQueue.dispatchEvent(Unknown Source)
at Java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
at Java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
at Java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
at Java.awt.WaitDispatchSupport$2.run(Unknown Source)
at Java.awt.WaitDispatchSupport$4.run(Unknown Source)
at Java.security.AccessController.doPrivileged(Native Method)
at Java.awt.WaitDispatchSupport.enter(Unknown Source)
at Java.awt.Dialog.show(Unknown Source)
at Java.awt.Component.show(Unknown Source)
at Java.awt.Component.setVisible(Unknown Source)
at Java.awt.Window.setVisible(Unknown Source)
at Java.awt.Dialog.setVisible(Unknown Source)
at org.pentaho.ui.xul.swing.tags.SwingDialog.show(SwingDialog.Java:234)
at org.pentaho.reporting.ui.datasources.jdbc.ui.XulDatabaseDialog.open(XulDatabaseDialog.Java:256)
at org.pentaho.reporting.ui.datasources.jdbc.ui.ConnectionPanel$EditDataSourceAction.actionPerformed(ConnectionPanel.Java:162)
at javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
at javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)
at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)
at javax.swing.DefaultButtonModel.setPressed(Unknown Source)
at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(Unknown Source)
at Java.awt.AWTEventMulticaster.mouseReleased(Unknown Source)
at Java.awt.AWTEventMulticaster.mouseReleased(Unknown Source)
at Java.awt.Component.processMouseEvent(Unknown Source)
at javax.swing.JComponent.processMouseEvent(Unknown Source)
at Java.awt.Component.processEvent(Unknown Source)
at Java.awt.Container.processEvent(Unknown Source)
at Java.awt.Component.dispatchEventImpl(Unknown Source)
at Java.awt.Container.dispatchEventImpl(Unknown Source)
at Java.awt.Component.dispatchEvent(Unknown Source)
at Java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
at Java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
at Java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
at Java.awt.Container.dispatchEventImpl(Unknown Source)
at Java.awt.Window.dispatchEventImpl(Unknown Source)
at Java.awt.Component.dispatchEvent(Unknown Source)
at Java.awt.EventQueue.dispatchEventImpl(Unknown Source)
at Java.awt.EventQueue.access$200(Unknown Source)
at Java.awt.EventQueue$3.run(Unknown Source)
at Java.awt.EventQueue$3.run(Unknown Source)
at Java.security.AccessController.doPrivileged(Native Method)
at Java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
at Java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
at Java.awt.EventQueue$4.run(Unknown Source)
at Java.awt.EventQueue$4.run(Unknown Source)
at Java.security.AccessController.doPrivileged(Native Method)
at Java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
at Java.awt.EventQueue.dispatchEvent(Unknown Source)
at Java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
at Java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
at Java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
at Java.awt.WaitDispatchSupport$2.run(Unknown Source)
at Java.awt.WaitDispatchSupport$4.run(Unknown Source)
at Java.security.AccessController.doPrivileged(Native Method)
at Java.awt.WaitDispatchSupport.enter(Unknown Source)
at Java.awt.Dialog.show(Unknown Source)
at Java.awt.Component.show(Unknown Source)
at Java.awt.Component.setVisible(Unknown Source)
at Java.awt.Window.setVisible(Unknown Source)
at Java.awt.Dialog.setVisible(Unknown Source)
at org.pentaho.reporting.libraries.designtime.swing.CommonDialog.performEdit(CommonDialog.Java:156)
at org.pentaho.reporting.ui.datasources.jdbc.ui.JdbcDataSourceDialog.performConfiguration(JdbcDataSourceDialog.Java:759)
at org.pentaho.reporting.ui.datasources.jdbc.JdbcDataSourcePlugin.performEdit(JdbcDataSourcePlugin.Java:67)
at org.pentaho.reporting.designer.core.actions.report.AddDataFactoryAction.actionPerformed(AddDataFactoryAction.Java:79)
at javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
at javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)
at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)
at javax.swing.DefaultButtonModel.setPressed(Unknown Source)
at javax.swing.AbstractButton.doClick(Unknown Source)
at javax.swing.plaf.basic.BasicMenuItemUI.doClick(Unknown Source)
at javax.swing.plaf.basic.BasicMenuItemUI$Handler.mouseReleased(Unknown Source)
at Java.awt.AWTEventMulticaster.mouseReleased(Unknown Source)
at Java.awt.Component.processMouseEvent(Unknown Source)
at javax.swing.JComponent.processMouseEvent(Unknown Source)
at Java.awt.Component.processEvent(Unknown Source)
at Java.awt.Container.processEvent(Unknown Source)
at Java.awt.Component.dispatchEventImpl(Unknown Source)
at Java.awt.Container.dispatchEventImpl(Unknown Source)
at Java.awt.Component.dispatchEvent(Unknown Source)
at Java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
at Java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
at Java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
at Java.awt.Container.dispatchEventImpl(Unknown Source)
at Java.awt.Window.dispatchEventImpl(Unknown Source)
at Java.awt.Component.dispatchEvent(Unknown Source)
at Java.awt.EventQueue.dispatchEventImpl(Unknown Source)
at Java.awt.EventQueue.access$200(Unknown Source)
at Java.awt.EventQueue$3.run(Unknown Source)
at Java.awt.EventQueue$3.run(Unknown Source)
at Java.security.AccessController.doPrivileged(Native Method)
at Java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
at Java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
at Java.awt.EventQueue$4.run(Unknown Source)
at Java.awt.EventQueue$4.run(Unknown Source)
at Java.security.AccessController.doPrivileged(Native Method)
at Java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
at Java.awt.EventQueue.dispatchEvent(Unknown Source)
at Java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
at Java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
at Java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
at Java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at Java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at Java.awt.EventDispatchThread.run(Unknown Source)
Caused by: org.pentaho.di.core.exception.KettleDatabaseException: 
Error connecting to database: (using class com.Microsoft.sqlserver.jdbc.SQLServerDriver)
The TCP/IP connection to the Host 172.16.1.133, port 1433 has failed. Error: "connect timed out. Verify the connection properties, check that an instance of SQL Server is running on the Host and accepting TCP/IP connections at the port, and that no firewall is blocking TCP connections to the port.".

at org.pentaho.di.core.database.Database.connectUsingClass(Database.Java:504)
at org.pentaho.di.core.database.Database.normalConnect(Database.Java:352)
... 122 more
Caused by: com.Microsoft.sqlserver.jdbc.SQLServerException: The TCP/IP connection to the Host 172.16.1.133, port 1433 has failed. Error: "connect timed out. Verify the connection properties, check that an instance of SQL Server is running on the Host and accepting TCP/IP connections at the port, and that no firewall is blocking TCP connections to the port.".
at com.Microsoft.sqlserver.jdbc.SQLServerException.makeFromDriverError(SQLServerException.Java:170)
at com.Microsoft.sqlserver.jdbc.SQLServerConnection.connectHelper(SQLServerConnection.Java:104
         9)
at 
    com.Microsoft.sqlserver.jdbc.SQLServerConnection.login(SQLServerConnection.Java:833)
at                                          
    com.Microsoft.sqlserver.jdbc.SQLServerConnection.connect(SQLServerConnection.Java:716)
at com.Microsoft.sqlserver.jdbc.SQLServerDriver.connect(SQLServerDriver.Java:841)
at Java.sql.DriverManager.getConnection(Unknown Source)
at Java.sql.DriverManager.getConnection(Unknown Source)
at org.pentaho.di.core.database.Database.connectUsingClass(Database.Java:478)
... 123 more

Quelqu'un peut m'aider à résoudre ce problème? J'ai vraiment besoin de ton aide. TQ

8
crystal

Configuration de la sécurité intégrée

Pour vous connecter à une base de données avec une sécurité intégrée, procédez comme suit:

  • Téléchargez les pilotes Microsoft JDBC 4.2 sur https://www.Microsoft.com/en-us/download/details.aspx?id=11774
  • Décompressez le package dans un répertoire temporaire
  • Fermer la cuillère
  • Copiez '<répertoire temporaire>\sqljdbc_4.2\enu\auth\x86\sqljdbc_auth.dll' dans 'C:\Program Files (x86)\Java\jre1.8.0_73\bin' (32 bits)

  • Copiez '<répertoire temporaire>\sqljdbc_4.2\enu\sqljdbc42.jar' dans '<dossier d'installation de Kettle>\data-integration\lib'
  • Cuillère ouverte
  • Test de connexion en cuillère
  • Supprimer le répertoire temporaire

Si vous mettez à niveau Kettle, Java, le pilote JDBC vers une version supérieure, vous devez répéter les étapes ci-dessus.

7
Bart VdA

Voici ce qui a fonctionné pour moi pour connecter Pentaho PDI à un serveur Microsoft SQL:

  1. Téléchargez le pilote Microsoft JDBC officiel pour SQL Server (v4.0) à partir de ici .

  2. Il est livré avec deux fichiers JAR. Copiez le fichier "sqljdbc4.jar" dans votre chemin data-integration\lib.

  3. Redémarrez Pentaho et essayez à nouveau la connexion MS SQL server(Native).

Remarque: j'ai utilisé cette méthode pour Pentaho PDI (Kettle), mais cela devrait fonctionner pour le reste des produits de la suite.

Note 2: Même si vous utilisez Windows, vous pouvez télécharger le fichier ".tar.gz" à la place du fichier ".exe", car vous l'utilisez uniquement pour Pentaho.

2
gugol

Pour que la fonctionnalité d'authentification "Sécurité intégrée" de SQL Server fonctionne, vous devez copier le fichier sqljdbc_auth.dll dans l'emplacement "~\Tomcat\bin" du serveur BA, puis redémarrer le serveur BA.

J'espère que ça va aider!

0
armin

Je ne sais pas si vous avez suivi ces étapes ou non. Mais ce que je veux mentionner:

1> ajoutez d'abord le pilote jdbc pour le serveur ms sql ajoutez/ Tomcat-> lib . sqljdbc4.jar

trouve l'image ci-dessous  enter image description here

J'espère que c'est utile.

0
bajrangi

Je viens de me battre avec ça sur mon Mac.

Par défaut, le répertoire "racine" lorsque vous décompressez l'archive est data-integration. Je l'ai déplacé dans un répertoire appelé "Pentaho" - c'est une petite chose, mais pas tout à fait clair - vous voulez que le pilote JDBC dans le sous-répertoire lib soit sous le répertoire ROOT que vous utilisez pour Pentaho.

J'ai utilisé le dernier pilote JDBC - sqljdbc42.jar - fonctionne parfaitement - fonctionne parfaitement avec le mariadb-Java-client-2.1.0.jar pour Aurora DB sur AWS RDS.

0
JFM

ajoutez "sqljdbc41.jar" à\Pentaho\Java\bin et "sqljdbc_auth" (Diff pour les versions 32 bits et 64 bits) à\Pentaho\design-tools\data-integration\lib

0
Raj Kamuni