Delphi MySQL Zeos Queda de Energia

25/11/2005

2

Olá pessoal.

Desenvolvo meus sistemas em Delphi com banco de dados MySQL. Como metodologia de acesso a dados utilizo o ZeosLib. Possibilita uma estrutura muito rápida, estável.

Mas ultimamente tenho enfrentado muito problemas com queda de energia nas estações e as vezes nos servidores. No antigo paradox poderiamos colocar um DbiSaveChanges no afterpost e o problema de perda de registros seria resolvido...

A dúvida é o seguinte: desenvolver uma rotina que faça a gravação física dos dados no banco para em caso de queda não corrompa ou perca informações do banco (eu pensei em fazer um close e open sempre que der um post, mas não sei se adianta alguma coisa...)

Obs: Utilizo MySQL 4.0, Zeos 5.5, tabelas MyISAM sem transação

Agradeço a atenção dos colegas.

Grato.


Responder

Posts

26/11/2005

Wiltonfenix

Na minha opnião, o uso de transações resolve este problema. Nunca tive problema com queda de energia no MySQL.


Responder

26/11/2005

Netosdr

Caro colega Wilton,

Sua sugestão é interessante e torna o sistema mais seguro, mas requer que ele seja reescrito para suportá-las.

Dúvida: qual tipo de tabela devo usar que dê suporte ao uso de transacoes?


Responder

26/11/2005

Wiltonfenix

No MySQL as tabelas do tipo InnoDB suportam transações. Elas perdem em performance para as tabelas MyISAM, mas vc ganha em transações e segurança tb.


Responder

26/11/2005

Netosdr

Pelos testes que fiz com o InnoDB, ele grava as informações em um arquivo ibdata, e não nos arquivos de cada tabela, como é o caso do MyISAM. Com o tempo, devido a quantidade de informações, a perda de performace é relativamente alta.
Você tem sua estrutura utilizando InnoDB? Quantos registros tem seu sistema? E a performace?


Responder

26/11/2005

Wiltonfenix

A perda de performance não acho grande. Na verdade isso depende muito do administrador do BD e do sistema que o acessa. A velocidade do MySQL, mesmo com InnoDB, não fica devendo ao Oracle.

Quanto ao ibdata, vc pode dividir ele em mais de um.


Responder

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários. Para saber mais sobre o uso de cookies,
consulte nossa política de privacidade. Ao continuar navegando em nosso site, você concorda com a nossa política.

Aceitar