Persistência no MySQL não tá funcionando
08/08/2011 11:26
1
Pessoal.. já fiz de tudo mas não tá funcionando..
To no ambiente de desenvolvimento com minha aplicação grails..
Eu configurei meu DataSource.groovy certinho (eu acho).. sai juntando uma coisa dali e outra daqui.. e resultou nisso:


dataSource {
pooled = true
driverClassName = "com.mysql.jdbc.Driver"
username = "root"
password = "1234"
dialect = "org.hibernate.dialect.MySQL5InnoDBDialect"
properties {
maxActive = 50
maxIdle = 25
minIdle = 5
initialSize = 5
minEvictableIdleTimeMillis = 60000
timeBetweenEvictionRunsMillis = 60000
maxWait = 10000
validationQuery = "/* ping */"
}
}
hibernate {
cache.use_second_level_cache = true
cache.use_query_cache = true
cache.provider_class = 'net.sf.ehcache.hibernate.EhCacheProvider'
}
// environment specific settings
environments {
development {
dataSource {
dbCreate = "update" // one of 'create', 'create-drop','update'
url = "jdbc:mysql://localhost/PROJETO_EA"
}
}
test {
dataSource {
dbCreate = "update"
url = "jdbc:mysql://localhost/PROJETO_EA"
}
}
production {
dataSource {
dbCreate = "update"
url = "jdbc:mysql://localhost/PROJETO_EA"
}
}
}


Mas quando eu fecho o MySQL e abro denovo... tá tudo vazio as tabelas..
Eu instalei o MySQL por aquele pacote que vem tudo completo, e coloquei o conector .jar na pasta lib do projeto..
A única coisa fora do comum que aconteceu durante o processo de instalação do MySQL é que na hora de instalar o MySQL server.. deu um errinho (que ele possibilitou continuar) de firewall..

Tags: MySQL, Persistência


0
Só complementando..
Quando eu tô fazendo a instalação, o erro que aparece no instalador é esse

"adding firewall rule failed"

Mas ele deixa passar a instalação assim mesmo
08/08/2011 11:36


0
Durante a execução da aplicação os dados são persistidos, porém quando você para de executar a aplicação os dados são removidos do banco, mas as tabelas continuam?


0
A um tempo atrás implementei uma aplicação em Grails que utilizada base do wordpress que estava em MySQL, tive problemas que direto o MySQL desconectava.

Mas pelo que entendi você está iniciando um aprendizado.. sendo assim indico você utilizar o Postgres.


0
driverClassName = "com.mysql.jdbc.Driver"
username = "root"
password = "1234"
dbCreate = "update" // one of 'create', 'create-drop','update'
url = "jdbc:mysql://localhost:3306/PROJETO_EA?autoreconnect=true"


Abç
08/08/2011 19:49


0
Pessoal, desativei o firewall do Windows e funcionou...
Reiniciei a aplicação, até o Windows.. e os dados persistiram!

Será que a solução definitiva é só essa mesmo?

Stefano, vou complementar com sua sugestão!

Rodolpho, já me indicaram o Postgres.. acho que vou mudar pra ele mesmo!
E respondendo a sua pergunta... o banco de dados ainda existia mas não tinha nenhum item na tabela.. embora a mesma continuasse com os campos, mas em branco.
08/08/2011 22:39


0
Blz Evelinne... vai fazer uma boa troca.

Mas que bom que tenha resolvido seu problema. =)


0
Evelinne,

Grails é baseado no Hibernate. Este, por sua vez, nem sempre executa os comandos SQL na hora em que são invocados, mas sim em lotes. Sendo assim, muito possívelmente você tinha os objetos apenas em memória pois o Hibernate tentou e não conseguiu enviar os comandos de inserção em massa para o MySQL ou devido a algum bug até então desconhecido.



Ainda não faz parte da comunidade???

Para se registrar, clique aqui.


Aprenda Groovy e Grails com a Formação itexto!

Newsletter Semana Groovy

Assinar

Envie seu link!


Livro de Grails


/dev/All

Os melhores blogs de TI (e em português) em um único lugar!

 
Creative Commons
RSS Grails Brasil é mantido por itexto Consultoria.
Em caso de problemas contacte Henrique Lobo Weissmann (Kico) por e-mail: kico@itexto.com.br
Todo o conteúdo presente neste site adota o Creative Commons como licença padrão.
Ver: 4.14.0
itexto