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

Como resolver os erros apresentados na janela Java do Workbench?

Olá, tudo bem?

Bom... vendo a janela Java do Workbench temos vários erros que me deixaram preocupada. Por exemplo...

14:51:24,257 ERROR [JdbcMetaData] setPKey
java.sql.SQLSyntaxErrorException: Table 'dmpresidencia.pma__userconfig' doesn't exist
        at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:120)
        at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:97)
        at com.mysql.cj.jdbc.exceptions.SQLExceptionsMapping.translateException(SQLExceptionsMapping.java:122)
        at com.mysql.cj.jdbc.StatementImpl.executeQuery(StatementImpl.java:1218)
        at com.mysql.cj.jdbc.DatabaseMetaData$7.forEach(DatabaseMetaData.java:2980)
        at com.mysql.cj.jdbc.DatabaseMetaData$7.forEach(DatabaseMetaData.java:2968)
        at com.mysql.cj.jdbc.IterateBlock.doForAll(IterateBlock.java:56)
        at com.mysql.cj.jdbc.DatabaseMetaData.getPrimaryKeys(DatabaseMetaData.java:3021)
        at mondrian.gui.JdbcMetaData.setPKey(JdbcMetaData.java:341)
        at mondrian.gui.JdbcMetaData.setAllTables(JdbcMetaData.java:317)
        at mondrian.gui.JdbcMetaData.setAllSchemas(JdbcMetaData.java:255)
        at mondrian.gui.JdbcMetaData.<init>(JdbcMetaData.java:64)
        at mondrian.gui.Workbench.getNewJdbcMetadata(Workbench.java:2006)
        at mondrian.gui.Workbench.openSchemaFrame(Workbench.java:1811)
        at mondrian.gui.Workbench.lastUsed1MenuItemActionPerformed(Workbench.java:1721)
        at mondrian.gui.Workbench.access$1000(Workbench.java:58)
        at mondrian.gui.Workbench$18.actionPerformed(Workbench.java:655)
        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.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$500(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$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
        at java.security.ProtectionDomain$JavaSecurityAccessImpl.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$JavaSecurityAccessImpl.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)

Que erros são esses e como resolvê-los?

Obrigada!

11 respostas

Oii Ana, tudo bem?

O erro não diz muito a respeito do que está acontecendo, pesquisei bastante e podemos tentar uma solução:

  • Acesse a pasta: C:\treinamento\mysql\home\us_opt1
  • Procure um arquivo chamado: config.inc.php e abra com algum editor de texto.
  • Procure a linha 60-78 e substitua as linhas por esse código.
$cfg['Servers'][$i]['pma__bookmark'] = 'pma__bookmark';
 $cfg['Servers'][$i]['pma__relation'] = 'pma__relation';
 $cfg['Servers'][$i]['pma__table_info'] = 'pma__table_info';
 $cfg['Servers'][$i]['pma__table_coords'] = 'pma__table_coords';
 $cfg['Servers'][$i]['pma__pdf_pages'] = 'pma__pdf_pages';
 $cfg['Servers'][$i]['pma__column_info'] = 'pma__column_info';
 $cfg['Servers'][$i]['pma__table_uiprefs'] = 'pma__history';
 $cfg['Servers'][$i]['pma__table_uiprefs'] = 'pma__table_uiprefs';
 $cfg['Servers'][$i]['pma__tracking'] = 'pma__tracking';
 $cfg['Servers'][$i]['pma__userconfig'] = 'pma__userconfig';
 $cfg['Servers'][$i]['pma__recent'] = 'pma__recent';
 $cfg['Servers'][$i]['pma__users'] = 'pma__users';
 $cfg['Servers'][$i]['pma__usergroups'] = 'pma__usergroups';
 $cfg['Servers'][$i]['pma__navigationhiding'] = 'pma__navigationhiding';
 $cfg['Servers'][$i]['pma__savedsearches'] = 'pma__savedsearches';
 $cfg['Servers'][$i]['pma__central_columns'] = 'pma__central_columns';
 $cfg['Servers'][$i]['pma__designer_coords'] = 'pma__designer_coords';
 $cfg['Servers'][$i]['pma__designer_settings'] = 'pma__designer_settings';
 $cfg['Servers'][$i]['pma__export_templates'] = 'pma__export_templates';
 $cfg['Servers'][$i]['pma__favorite'] = 'pma__favorite';

Verifique se o erro continua. Me avise qualquer coisa :)

Oi Maria, tudo sim. E espero o mesmo para você.

Bom... também não encontrei muita coisa nas minhas pesquisas. E por isso postei aqui.

Sobre sua orientação... fiz a alteração no arquivo, reiniciei o meu micro e voltei a testar. Mas... continua com o mesmo problema. Continua informando tabelas inexistentes. Não estaria faltando algum passo no treinamento para a criação dessas tabelas?!? Parecem ser tabelas auxiliares (dmpresidencia.pma__table_info, dmpresidencia.pma__tracking, dmpresidencia.pma__users, etc...).

Sim... esses erros são apresentados quando eu carrego o XML no Workbench.

Obrigada!

Oi Ana, estou bem obrigada.

Eu nunca vi esse erro e ele não aconteceu comigo. Eu fiz vários testes para tentar reproduzir ele e encontrar o motivo, mas não consegui.

Passou pela minha cabeça, você restaurar o meu backup do dmpresidencia, podemos tentar isso.. o backup está aqui.

Faça o download e substitua a pasta nesse caminho: C:\treinamento\mysql\core\mysql\data.

Me avise qualquer coisa :)

Eita... tenho um problema. Como no treinamento, ficava muito ruim ter tabelas com o mesmo nome (DM e DW), acabei alterando as tabelas do DM para ter dm_ antes do nome das tabelas solicitado pelo instrutor.

Desta forma, acho que não poderei substituir tais arquivos. Nada vai funcionar. Precisaria iniciar tudo novamente e não tenho muito tempo para fazer isso agora, infelizmente. Vi que você tem uma tabela que não tenho - agg_ano_fat. Acho que será criado depois, né?

Outra coisa diferente do seu ambiente, é que minha pasta está em outro drive, mas acho que isso não é problema.

Obrigada!

Oi Ana,

Eita.. Como está o nome de suas tabelas? Eu ajusto aqui e te mando novamente.

Eu também tinha alterado os nomes quando fiz o curso, mas eu formatei o computador e precisei restaurar o ambiente.

Simm, é criado depois, nesse mesmo curso.

Me avise qualquer coisa.

Olá... sim... coloquei na frente das tabelas dm_.

Então as tabelas ficaram: dm_dim_tempo; dm_dim_produto; dm_dim_cliente; dm_dim_fabrica; dm_dim_organizacional; dm_fato_presidencia.

Obrigada!

Oi Ana,

Fiz a substituição dos arquivos, aqui.

Espero que dê certo. Me avise qualquer coisa :)

Eita... deu certo não. Mesmos erros.

Você pode me enviar o seu SucoFrutas.xml para que eu possa comparar com o meu?

Obrigada!!!

Oi Ana,

O XML foi disponibilizado nesse mesmo link acima.

Me avise qualquer coisa :)

solução!

Obrigada!

Vamos lá... Carreguei o seu xml, que não tinham muitas diferenças, e os mesmos erros são apresentados. Então criei um novo xml do zero com apenas o schema criado e os mesmos erros ocorreram.

Então fui ver melhor os erros da janela e tinha

java.sql.SQLSyntaxErrorException: Table 'dwsucos.dm_dim_cliente' doesn't exist

E aí foi mais estranho. Como o Pentaho estava misturando as tabelas dos bancos de dados?!?

Procurei novamente na web e acabei encontrando uma referência antiga mas interessante (https://forums.pentaho.com/threads/80549-schema-workbench-error-table-abc-does-not-exist-in-database/).

Vi que durante o curso, a janela Java sempre está apresentando erros mas o instrutor não a observa. Então acho que a versão do mysql utilizada no curso, junto com o drive jdbc escolhido estão fazendo a bagunça.

Desta forma, como não irei utilizar essa versão mysql no futuro, estou desistindo desse erro.

Novamente muito obrigada!

Oi Ana,

Pode ser sim, que a versão do driver com a versão do MySQL podem estar se estranhando. Enfim, se eu puder ajudar em algo mais, sempre à disposição :)

Bons estudos!

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software