Acesso ao BD Derby/MySQL

Pessoal, quando uso o Berby e o ScadaBR está rodando, não consigo acessar o BD pra criar relatórios ou mesmo pra xeretar o BD. Pelo que sei, como o derby é um arquivo e não usa SGBD, o acesso fica restrito `a aplicação que acessou primeiro. Isto esta certo?

Instalei o ScadaBR em uns 3 PCs, umas 8 vezes, e em nenhuma delas consegui rodar o ScadaBR usando MySQL.
Preciso instalar um SGBD para o MySQL? É obrigatório instalar? Ou o ScadaBR faz a função do SGDB? E tendo instalado o SGBD, preciso criar o BD para que o ScadaBR reconheça ele e rode?

Usando o MySQL (com ou sem SGBD), posso acessar o BD enquanto o ScadaBR estiver rodando?

O motivo desta questão é porque preciso gerar relatórios sem precisar para o ScadaBR. Ou seja, se o BD ficar travado porque o SCadaBR tá usando ele, como gerar relatórios sem parar ele?
Qualquer sugestão ou esclarecimento é bem vinda.

1 curtida

Olá Marcelo,

Tenho o mesmo problema que você. Não consegui instalar o ScadaBR com o banco de dados MySQL.

Preciso dele para gerar relatórios com maiores informações e detalhamento do que é oferecido pelo ScadaBR.

Portanto, lhe questiono: Você obteve sucesso em sua instalação?

Tem alguma dica de proceder?

Att,

Pedro

1 curtida

Oi Marcelo, eu achei que sei a resposta.

O gerenciador de BD derby já está "embarcado" no scadaBR, já o MySQL é um SGBD externo, consequentemente, você tem que instalar MySQL e configurar o acesso antes de iniciar o scadaBR. Não é necessário, nem recomendado criar nenhuma tabela de antemão! Depois de criado utilize um navegador como o MySQL workbench para testar a conexão utilizando usuário e senha.

(Esta parte esta bem detalhada no manual) Depois disso você tem que alterar o arquivo env.properties que está dentro do arquivo .WAR do scadaBR, e depois dar deploy manualmente.

Senhores,

Consegui fazê-lo funcionar.

Os passos são exatamente aqueles demonstrados no manual.

1-) Baixe o MySQL Server 5.1

2-) Crie um banco de dados: CREATE DATABASE scadabr;

3-) Modifique o env properties;

4-) Pare o servidor Tomcat;

5-) Retome o funcinamento do Tomcat;

Desta forma obtive êxito. Ok?

1 curtida

Senhores,

também não consigo rodar o SW com MySQL. Eu uso MySQL há muito tempo com PHP e outras linguagens e nunca tive problemas. Sr. Pedro, vi em seu post que teve êxito. Fiz o mesmo, porém não abre a tela inicial.

Esse arquivo .WAR que mencionam eu não o vejo nas pastas do meu ScadaBR.

Alguem que está rodando com MySQL que tenha um fone disponível ??

Abraços e fico a disposição de todos.

Luciano.

 

1 curtida

Oi Luciano,

O .war é para deploy manual. =]

Para fazer funcionado com o MySQL, precisa sim criar um banco na sua instalação MySQL e depois configurar apropriadamente no arquivo env.properties. Dá uma olhada num exemplo env.properties.mysql que tem na pasta classes.

Pra quem usa Linux

<pasta_tomcat_webapps>/ScadaBR/WEB-INF/classes/env.properties

Pra quem usa Windows

c:\Program Files\ScadaBR\webapps\ScadaBR\WEB-INF\classes\env.properties

Para criar o banco de dados no mysql, acesse o console do mysql e crie a base de dados:

#>create database scadabr;

Se quiser, também crie usuário para a base de dados

#>create user '<seu_usuário>'@'localhost' identified by '<sua_senha>';

#>grant all privileges on 'scadabr'@'localhost' to '<seu_usuário>'@'localhost';

no env.properties, substitua os campos 

db.url=jdbc:mysql://localhost/scadabr

db.username=<seu_usuário>

db.password=<sua_senha>

 
Presto! Qualquer coisa grita ai! Abs
1 curtida

This is working well. But we can make it clearer for beginer. I m using window 7, scadabr 1.0.

After installing MySQL 5.1.73 msi  (I use this version around 106MB)

1) Open [ MySQL Command Line Client ] at Windows Startup

2) it will appear [Enter password: _   ], enter your password when installing MySQL.

3)it will appear [mysql>_   ]

4)here u type [ mysql> CREATE DATABASE SCADABR; ]

5)it will show [ Query OK, one row affected <0.00 sec> ]   this means database was created.

6)use the database [ mysql> USE SCADABR  ]

7) it will show [ Database changed   ]

Go to open env.properties file (C:\Program Files\ScadaBR\webapps\ScadaBR\WEB-INF\classes\env.properties) using notepad.

8) initially it looks like this

#db.type=mysql
#db.url=jdbc:mysql://localhost/scadabr
#db.username=root
#db.password=                              
#db.pool.maxActive=10
#db.pool.maxIdle=10
 
db.type=derby                                
db.url=~/../../bin/scadabrDB
db.username=
db.password=
 
9) Change to this
 
db.type=mysql
db.url=jdbc:mysql://localhost/scadabr
db.username=root      
db.password= 123456                        //This is your password when installing MySQL (root password)                
db.pool.maxActive=10
db.pool.maxIdle=10
 
#db.type=derby                                
#db.url=~/../../bin/scadabrDB
#db.username=
#db.password=
 
10) Restart Tomcat & ScadaBR. Then u can see your database has changed.

  

Boa tarde gurizada,

Estou com uma dificuldade por aqui e gostaria de um auxílio se possível. Tenho um banco de dados Derby com aplicações salvas de alguns clientes, porém, houve a necessidade de migrar para um banco de dados mais robusto e dinamico. Optamos pelo MySQL, criei o banco de dados seguindo o tutorial assima e obtive sucesso, estou já trabalhando com o novo db, porém, tenho alguma aplicações importantes que não queria ter de refazer, andei lendo alguns artigos e pelo que notei existe um jeito de fazer uma conversão de banco de dados (de Derby para MySQL) porém o que encontrei é muito sucinto e nada de concreto. Gostaria de opinião de vocês, se conseguiram fazer funcionar somente alterando o env.properties que no meu caso hoje esta assim:

db.type=mysql
db.url=jdbc:mysql://localhost/scadabr
db.username=root
db.password=admin
db.pool.maxActive=10
db.pool.maxIdle=10
 
 
convert.db.type=
convert.db.url=
convert.db.username=
convert.db.password=

Pode ser que alguém tenha o mesmo problema que eu para comunicar-se com o MySQL 5.5

Na hora de alterar a pasta, deixa declarado a porta em que está o BD.

db.type=mysql
db.url=jdbc:mysql://localhost:3306/scadabr
db.username=root
db.password=
db.pool.maxActive=10
db.pool.maxIdle=10

tanto no arquivo env.properties quanto no env.properties.mysql

@Juliano_Perotto Bom dia,

Alterando os dois arquivos ele funciona?

Sim, tanto no env.properties.mysql quanto no env.properties

Não sei qual ferramenta você utilizou, mas me recomendaram e estou utilizando o WampServer e MySQL Workbench 6.3 CE , ele facilita a alteração da porta.

se tiver problemas com o GRANT usando mariaDB ou mysql server acima de 8

GRANT ALL PRIVILEGES ON scadabr.* TO 'scadabr'@'localhost';

e nao esqueca do FLUSH PRIVILEGES para gravar

Caros colegas,

Alguem poderia me informar a melhor versao de MySQL para ser usada com o SCADABR 1.2?

Tentei a ultima versao do MySQL 8.03 e nao funcionou. Acredito q possa ter alguma incompatibilidade.

Obridago pela ajuda.