Pentaho Data Integrationを使用しており、MySQL経由でデータベースに接続しようとしていますが、実行するとこのエラーが発生します.....
Error connecting to database [devdb2] : org.pentaho.di.core.exception.KettleDatabaseException:
Error occured while trying to connect to the database
Exception while loading class
org.gjt.mm.mysql.Driver
org.pentaho.di.core.exception.KettleDatabaseException:
Error occured while trying to connect to the database
Exception while loading class
org.gjt.mm.mysql.Driver
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.GeneratedMethodAccessor55.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.impl.AbstractXulComponent.invoke(AbstractXulComponent.Java:139)
at org.pentaho.ui.xul.impl.AbstractXulComponent.invoke(AbstractXulComponent.Java:123)
at org.pentaho.ui.xul.swt.tags.SwtButton.access$500(SwtButton.Java:26)
at org.pentaho.ui.xul.swt.tags.SwtButton$4.widgetSelected(SwtButton.Java:119)
at org.Eclipse.swt.widgets.TypedListener.handleEvent(Unknown Source)
at org.Eclipse.swt.widgets.EventTable.sendEvent(Unknown Source)
at org.Eclipse.swt.widgets.Widget.sendEvent(Unknown Source)
at org.Eclipse.swt.widgets.Display.runDeferredEvents(Unknown Source)
at org.Eclipse.swt.widgets.Display.readAndDispatch(Unknown Source)
at org.Eclipse.jface.window.Window.runEventLoop(Window.Java:820)
at org.Eclipse.jface.window.Window.open(Window.Java:796)
at org.pentaho.ui.xul.swt.tags.SwtDialog.show(SwtDialog.Java:378)
at org.pentaho.ui.xul.swt.tags.SwtDialog.show(SwtDialog.Java:304)
at org.pentaho.di.ui.core.database.dialog.XulDatabaseDialog.open(XulDatabaseDialog.Java:115)
at org.pentaho.di.ui.core.database.dialog.DatabaseDialog.open(DatabaseDialog.Java:62)
at org.pentaho.di.ui.spoon.delegates.SpoonDBDelegate.newConnection(SpoonDBDelegate.Java:493)
at org.pentaho.di.ui.spoon.delegates.SpoonDBDelegate.newConnection(SpoonDBDelegate.Java:478)
at org.pentaho.di.ui.spoon.Spoon.newConnection(Spoon.Java:7770)
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.impl.AbstractXulComponent.invoke(AbstractXulComponent.Java:139)
at org.pentaho.ui.xul.impl.AbstractXulComponent.invoke(AbstractXulComponent.Java:123)
at org.pentaho.ui.xul.swt.tags.SwtMenuitem.access$100(SwtMenuitem.Java:27)
at org.pentaho.ui.xul.swt.tags.SwtMenuitem$1.widgetSelected(SwtMenuitem.Java:77)
at org.Eclipse.swt.widgets.TypedListener.handleEvent(Unknown Source)
at org.Eclipse.swt.widgets.EventTable.sendEvent(Unknown Source)
at org.Eclipse.swt.widgets.Widget.sendEvent(Unknown Source)
at org.Eclipse.swt.widgets.Display.runDeferredEvents(Unknown Source)
at org.Eclipse.swt.widgets.Display.readAndDispatch(Unknown Source)
at org.pentaho.di.ui.spoon.Spoon.readAndDispatch(Spoon.Java:1183)
at org.pentaho.di.ui.spoon.Spoon.start(Spoon.Java:6966)
at org.pentaho.di.ui.spoon.Spoon.main(Spoon.Java:567)
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.commons.launcher.Launcher.main(Launcher.Java:134)
Caused by: org.pentaho.di.core.exception.KettleDatabaseException:
Exception while loading class
org.gjt.mm.mysql.Driver
at org.pentaho.di.core.database.Database.connectUsingClass(Database.Java:423)
at org.pentaho.di.core.database.Database.normalConnect(Database.Java:352)
... 50 more
Caused by: Java.lang.ClassNotFoundException: org.gjt.mm.mysql.Driver
at Java.net.URLClassLoader$1.run(Unknown Source)
at Java.security.AccessController.doPrivileged(Native Method)
at Java.net.URLClassLoader.findClass(Unknown Source)
at Java.lang.ClassLoader.loadClass(Unknown Source)
at Java.lang.ClassLoader.loadClass(Unknown Source)
at Java.lang.Class.forName0(Native Method)
at Java.lang.Class.forName(Unknown Source)
at org.pentaho.di.core.database.Database.connectUsingClass(Database.Java:414)
... 51 more
接続タイプとしてSQLiteを使用した場合、それは機能しますが、探索するときにデータが返されません。だから私の質問は、どのようにMySQLを動作させるか、SQLiteを使用してデータを取得するのですか?
ライブラリまたはクラスがありませんか?
Mysql-connector-Java-5.1.2.jarというクラスが欠落することが判明したため、このフォルダー(C:\ Program Files\pentaho\design-tools\data-integration\lib)を追加し、MySQLで動作しました接続とデータとテーブルが表示されます。
PentahoからMySQLデータベースを照会しようとしたときに、同じ問題に出くわしました。
データベースへの接続エラー[ローカルMySQL DB]:org.pentaho.di.core.exception.KettleDatabaseException:データベースへの接続試行中にエラーが発生しました
クラスorg.gjt.mm.mysql.Driverのロード中の例外
@ user979331による投稿を展開すると、ソリューションは次のとおりです。
copy。jarファイル(mysql-connector-Java -5.1.31-bin.jar)およびpasteにLibフォルダー:
PC:C:\ Program Files\pentaho\design-tools\data-integration\lib
Mac:/ Applications/data-integration/lib
Pentaho(データ統合)を再起動し、MySQL接続を再テストします。
ドライバーファイルがありません。
このエラーは、PDIを使い始めたばかりの人には本当によく見られます。
ドライバーは、PDIの\ pentaho\design-tools\data-integration\libext\JDBCにあります。 Pentahoスイートで他のツールを使用している場合は、それらのツールの追加の場所にドライバーをコピーする必要がある場合があります。参考のために、他の設計ツールのいくつかに適したフォルダーを以下に示します。
この変換またはジョブがテストサーバーや運用サーバーなどの別のボックスで実行される場合、jarファイルのコピーとPDIまたはData Integration Serverの再起動をデプロイメントの考慮事項に含めることを忘れないでください。
最新バージョンではなく、mysql-connector-Java-5.1.46.tar.gz
をダウンロードする必要があります。 Pentahoが使用するDriverクラスは、mysql-connector-Java-8.xx.yyバージョンには含まれていません。
ここでの他の回答に加えて、Ubuntu(14.04)でそれを行う方法は次のとおりです。
Sudo apt-get install libmysql-Java
これにより、mysql-connector-Java-5.x.x.jar
が/usr/share/Java/
にダウンロードされ、mysql-connector-Java.jar
という名前のシンボリックリンクも自動的に作成されます。
次に、/your/path/to/data-integration/lib/
にシンボリックリンクを作成します。
ln -s /usr/share/Java/mysql-connector-Java.jar /your/path/to/data-integration/lib/mysql-connector-Java.jar
上記の回答は役に立ちましたが、理由は不明ですが、機能していないようです。そのため、既にシステムにMySqlワークベンチをインストールしている場合は、jarファイルをダウンロードして正しいバージョンと格闘する代わりに、
C:\Program Files (x86)\MySQL\Connector J 8.0
そして、その場所にあるjarファイルをmysql-connector-Java-8.0.12
(バージョンは関係ありません)コピーして、C:\Program Files\pentaho\design-tools\data-integration\lib
に貼り付けます。
まず、pentahoバージョンと互換性のあるMysqlコネクタをダウンロードする必要があります。その後、data-integration/libフォルダーに貼り付けて、pentahoを再起動します。 。これを確認してください https://help.pentaho.com/Documentation/8.1/Setup/JDBC_Drivers_Reference#MY_SQL