Solucionado (ver solução)
Solucionado
(ver solução)
5
respostas

Conexão Datawarehouse Sucos no PDI está dando erro

A conexão Datawarehouse Sucos está apresentando a seguinte mensagem de erro:

Error occurred while trying to connect to the database at org.pentaho.commons.launcher.Launcher.main (Launcher.java:92) at java.lang.reflect.Method.invoke (null:-1) at sun.reflect.DelegatingMethodAccessorImpl.invoke (null:-1) at sun.reflect.NativeMethodAccessorImpl.invoke (null:-1) at sun.reflect.NativeMethodAccessorImpl.invoke0 (null:-2) at org.pentaho.di.ui.spoon.Spoon.main (Spoon.java:711) at org.pentaho.di.ui.spoon.Spoon.start (Spoon.java:9350) at org.pentaho.di.ui.spoon.Spoon.waitForDispose (Spoon.java:7968) at org.pentaho.di.ui.spoon.Spoon.readAndDispatch (Spoon.java:1385) at org.eclipse.swt.widgets.Display.readAndDispatch (null:-1) at org.eclipse.swt.widgets.Display.runDeferredEvents (null:-1) at org.eclipse.swt.widgets.Widget.sendEvent (null:-1) (...)

Quando clico em Feature List, notei a seguinte URL: jdbc:mysql://:1521/dwsucos.

O arquivo jdbc.properties tem a seguinte linha: dwsucos/url=jdbc:mysql://localhost:3306/dwsucos.

O PDI está tentando outra porta?

5 respostas

Oii André, tudo bem?

Você está tentando fazer a conexão com a variável, certo? Tente fazer a conexão direto, sem o JNDI e verifica se retorna o mesmo erro.

No seu arquivo jdbc.properties verifique se você encontra a URL com a porta 1521. Verifique também se a porta padrão 3306 do MySQL não tem algum outro serviço rodando. Se tiver algum outro serviço rodando com MySQL, recomendo que desinstale ou mude a porta.

Qualquer coisa me fale, tá bom? :)

Não encontrei a URL com a porta 1521 no arquivo jdbc.properties.

Sobre a porta padrão 3306, não há nenhum serviço, porque estou apenas usando para o curso. Mesmo assim, como faço pra verificar isso?

Tentei a conexão pelo Native(JDBC), Host Name deixei em branco, Dabase Name dwsucos, Port Number 3306 e deu a seguinte mensagem:

Error connecting to database [Datawarehouse Sucos] :org.pentaho.di.core.exception.KettleDatabaseException: Error occurred while trying to connect to the database

Driver class 'org.gjt.mm.mysql.Driver' could not be found, make sure the 'MySQL' driver (jar file) is installed. org.gjt.mm.mysql.Driver

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

Driver class 'org.gjt.mm.mysql.Driver' could not be found, make sure the 'MySQL' driver (jar file) is installed. org.gjt.mm.mysql.Driver

Depois tentei pelo ODBC e deu a seguinte mensagem:

Error connecting to database [Datawarehouse Sucos] :org.pentaho.di.core.exception.KettleDatabaseException: Error occurred while trying to connect to the database

Driver class 'sun.jdbc.odbc.JdbcOdbcDriver' could not be found, make sure the 'MySQL' driver (jar file) is installed. sun.jdbc.odbc.JdbcOdbcDriver

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

Driver class 'sun.jdbc.odbc.JdbcOdbcDriver' could not be found, make sure the 'MySQL' driver (jar file) is installed. sun.jdbc.odbc.JdbcOdbcDriver

.....

Oi Andre,

O Hostname não pode ficar em branco, pois é o IP ou nome do servidor (127.0.0.1 ou localhost) e tente fazer a conexão com o JDBC.

Referente ao JNDI, faz o seguinte. No seu jdbc.properties, coloque esses dados:

dwsucos/type=javax.sql.DataSource
dwsucos/driver=com.mysql.jdbc.Driver
dwsucos/url=jdbc:mysql://localhost:3306/dwsucos?useTimezone=true&serverTimezone=UTC
dwsucos/user=root
dwsucos/password=root

E no kettle.properties, coloque esses dados:

banco=dwsucos

Não tem problemas se a conexão com o JNDI não funcionar e com o JDBC funcionar, tá bom? Tanto faz utilizar as duas formas de conexão.

Me avisa qualquer coisa :)

solução!

Pelo JDBC já tinha dado certo. Quanto aos arquivos jdbc.propertis e kettle.properties, já estavam configurados conforme sugerido, mas ainda no JNDI não está dando certo.