itsource

Pentaho 데이터 통합 SQL 연결

mycopycode 2022. 9. 4. 21:31
반응형

Pentaho 데이터 통합 SQL 연결

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를 Connection Type으로 사용했을 경우 동작하지만 탐색할 때 데이터가 반환되지 않습니다.그렇다면 어떻게 하면 MySQL을 작동시키거나 SQLite를 사용하여 데이터를 가져올 수 있을까요?

도서관이나 수업에 빠졌나요?

Pentaho에서 MySQL Database를 조회하려다 같은 문제가 발생했습니다.

데이터베이스 [Local MySQL DB] : org.pentaho.di.core.exception에 연결하는 중 오류가 발생했습니다.주전자 데이터베이스예외:데이터베이스에 연결하는 동안 오류가 발생했습니다.

클래스 org.gjt.mm.dload 중 예외가 발생했습니다.드라이버

@user979331에 의한 투고 확대 솔루션은 다음과 같습니다.

  1. 사용 중인 주전자 버전호환되는 MySQL Java 커넥터/드라이버를 다운로드합니다.
  2. zip 파일을 압축 해제합니다(이 경우mysql-connector-java-5.1.31.zip).
  3. .jar 파일(mysql-connector-java-5.1.31-bin.jar)을 복사하여 Lib 폴더에 붙여넣습니다.

    PC: C:\Program Files\pentaho\design-tools\data-integration\lib

    Mac: /어플리케이션/데이터 통합/lib

Pentaho(데이터 통합)를 재시작하고 MySQL Connection을 다시 테스트합니다.

다른 사람의 흥미로운 답변은 다음에도 도움이 될 수 있습니다.

  • PDI 버전과 호환되는 정상적인 JDBC 드라이버 버전을 다운로드하십시오.https://help.pentaho.com/Documentation/8.1/Setup/JDBC_Drivers_Reference#MY_SQL
  • zip 버전("플랫폼 독립")을 사용하여 jar 파일을 추출합니다.
  • lib 폴더로 이동
  • Ryan Tuck이 제안한 적절한 처리 방법을 참조하십시오.

드라이버 파일이 없습니다.

이 오류는 PDI를 시작한 지 얼마 안 된 사람에게서 흔히 볼 수 있습니다.

드라이버는 \pentaho\design-tools\data-integration\libext\로 들어갑니다.PDI용 JDBCPentaho 제품군의 다른 도구를 사용하는 경우 해당 도구의 추가 위치에 드라이버를 복사해야 할 수 있습니다.참고로 기타 설계 도구에 적합한 폴더는 다음과 같습니다.

  • 어그리게이션 디자이너: \pentaho\design-tools\aggregation-designer\drivers
  • 메타데이터 에디터: \pentaho\design-tools\metadata-editor\libext\JDBC
  • 보고서 설계자: \pentaho\design-tools\report-designer\lib\jdbc
  • Schema Workbench: \pentaho\design-tools\schema-workbench\drivers

이 변환 또는 작업이 테스트 서버나 프로덕션 서버 등 다른 상자에서 실행되는 경우 배포 고려사항에 jar 파일을 복사하고 PDI 또는 Data Integration Server를 재시작하는 것을 잊지 마십시오.

mysql-connector-java-5.1.2.jar라고 하는 클래스가 없는 것으로 판명되었습니다.이 폴더(C:\Program Files\design-tools\data-integration\lib)를 추가했더니 MySQL 접속으로 동작하여 데이터와 테이블이 표시됩니다.

다운로드가 필요합니다.mysql-connector-java-5.1.46.tar.gz최신 버전이 아닙니다.Pentaho가 사용하는 드라이버클래스는 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

현시점에서는, 이 문제를 간단하게 해결할 방법은 다음과 같습니다.

  1. 에 가다ToolsMarketPlacePDI MySQL 플러그인 검색
  2. 인스톨 합니다(이것에 의해, 누락된 드라이버가 자동적으로 인스톨 됩니다).data-integration\plugins\databases\pdi-mysql-plugin\lib)
  3. 펜타호 재시작
  4. 다 했어요.

간결하고 정확하게 하기 위해 MySql 버전과 호환되는 jdbc(.jar) 파일을 다운로드하여 저장합니다.lib폴더입니다.예를 들어 MySQL 8.0.2의 경우 Connector/J 8.0.20을 다운로드합니다.

위의 답변은 도움이 되었지만, 알 수 없는 이유로 효과가 없는 것 같습니다.시스템에 MySql 워크벤치를 이미 설치한 경우 jar 파일을 다운로드하여 올바른 버전을 사용하는 대신 다음 페이지로 이동하십시오.

C:\Program Files (x86)\MySQL\Connector J 8.0

및 복사mysql-connector-java-8.0.12(버전이 어떤 것이든 상관없습니다) 그 위치에 jar 파일을 붙여 넣습니다.C:\Program Files\pentaho\design-tools\data-integration\lib

우선 당신의 펜타호 버전과 호환되는 Mysql 커넥터를 다운로드해야 합니다.그런 다음 데이터 통합/lib 폴더에 붙여넣고 펜타호를 다시 시작합니다.이 https://help.pentaho.com/Documentation/8.1/Setup/JDBC_Drivers_Reference#MY_SQL 를 체크해 주세요.

언급URL : https://stackoverflow.com/questions/11634181/pentaho-data-integration-sql-connection

반응형