Backup com IbBackupService

23/11/2004

0

Olá, estava com alguns problemas em fazer o backup de um banco de dados usando o IbBackupService.. zipei o arquivo e coloquei aqui.. ele da o seguntei erro:

[url]www.multiversox.com/images/hqmx/05.JPG[/url]

O arquivo novo q fiz, da o mesmo problema, esta abaixo, o q pode estar errado nesse código?

[url]www.multiversox.com/images/hqmx/ProjetoBackup.zip[/url]



Allan Elias Ramos :wink:


Aersoftware

Aersoftware

Responder

Posts

24/11/2004

Maicongabriel

DatabaseName = Arquivo de Origem
BackupFile = Arquivo de Destino
Os nomes dos arquivos não podem estar entre ´´ (QuotedStr)

No mais, alguns pequenos ajustes e a aplicação passa a funcionar!
Se desejar, lhe envio a aplicação funcionando...


Responder

24/11/2004

Aersoftware

Maicon, valeu denovo..

Fiz os ajustes aqui e funcionou blz.. só não entendi algumas coisas..

Notei q o problema de não funcionar depois das modificações q vc me passou estava no While.. fiz uma modificação nele e funcionou, ou seja, consigo efetuar o Backup, mas o verbose não funciona, mudei o RichEdit pra Memo e não aparece nada escrito..

Outra coisa, qual seria a extensão apropriada do arquivo bakapeado, ´.gbk´ ou ´.gbak´??

E a última, quando eu boto as Opções pra True, é pq elas serão executadas certo? é q aqueles ´No´ e ´Non´ me confundiram.. tipo se todas opções tiverem True ficaria assim?

Ignorar Checagem
Ignorar Limbo (Não entendi)
Somente MetaDados (Ele não copia a estrutura da tabela, só os dados?)
Não Copiar o Lixo (Ele limpa a tabela dos arquivos deletados?)
Dados Antigos?
Não ser um arquivo transportável?
Converter Tabelas? (Também não entendi)

Qual deles seria recomendável deixar marcado?



Allan Elias Ramos :roll:


Responder

24/11/2004

Gandalf.nho

-Ignorar Checagem = False
-Ignorar Limbo = False
Só deixe True se houver erros no banco

Somente MetaDados = False (Senão só copia a estrutura do banco, sem os dados)

Não ser um arquivo transportável? (Normalmente deve ser transportável, principalmente para migração entre plataformas)


Responder

25/11/2004

Aersoftware

Então o recomendável seria

Ignorar Checagem = False (Ele Checa o Banco)
Ignorar Limbo = False (O que seria Não Ignorar o Limbo?)
Somente MetaDados = Falso (Pra ele copiar a esturtura e os dados)
Não Copiar o Lixo = True (Ele limpa a tabela dos arquivos deletados?)
Não ser um arquivo transportável? = False (Pra ele ser um arquivo transportavel, ou seria o contrário?)

Faltou esses dois q também nao entendi pra q servem..

Dados Antigos?
Converter Tabelas? (Também não entendi)



Allan Elias Ramos :roll:


Responder

25/11/2004

Aersoftware

O meu maior problema é não entender o q acontece com o banco quando boto True nas opções.. pq, como falei, me perdi naquele No e Non e saber o restante faz.. tentei procurar na ajuda do Delphi, mas ele nao acha o ibx.hlp, nao tenho instalado.. :cry:



Allan Elias Ramos :cry:


Responder

25/11/2004

Maicongabriel

Notei q o problema de não funcionar depois das modificações q vc me passou estava no While.. fiz uma modificação nele e funcionou, ou seja, consigo efetuar o Backup, mas o verbose não funciona, mudei o RichEdit pra Memo e não aparece nada escrito..
While not Backup.Eof do
begin
  ReVerbose.Lines.Add(Backup.GetNextLine);
  Application.ProcessMessages;
end;


Outra coisa, qual seria a extensão apropriada do arquivo bakapeado, ´.gbk´ ou ´.gbak´??
Para Interbase ´.gbk´, para Firebird, ´.fdb´.

Quanto as outras opções; Não me aprofundei sobre o real uso do componente, talvez mais tarde eu possa lhe ajudar. :wink:


Responder

25/11/2004

Maicongabriel

[quote:b69ce66966=´AerParker´]Outra coisa, qual seria a extensão apropriada do arquivo bakapeado, ´.gbk´ ou ´.gbak´??
Para Interbase ´.gbk´, para Firebird, ´.fdb´.[/quote:b69ce66966]
Para Firebird, ´.fbk´ na verdade! Foi um erro de digitação/revisão.


Responder

26/11/2004

Aersoftware

Olá, agora ta funcionando direitinho.. valeu pela ajuda pessoal.. só tenho mais duas perguntinhas..

Alguém teria o arquivo ibx.hlp do delphi, q é onde tem os dados das Propriedades desses componentes? No meu não tem e queria dar uma lida..

E outra, tem como, ao invés de colocar o painel de Verbose, colocar um ProgressBar, ou algo do tipo, um Gauge, pra mostrar o progresso do Backup enquanto ele é feito?



Allan Elias Ramos :roll:


Responder

29/11/2004

Aersoftware

Olá, eu denovo por aqui.. hehe.. bom, quanto as opções de Backup, eu deixo marcado como True só o NoGarbageCollection, assim ele limpa o banco de dados quando faz a cópia certo??

Só mais duas coisinhas e prometo q encerro esse assunto do Backup (depois vem o Restore.. hehehe)..

Quando eu seleciono pra salvar o banco no drive ´A:´, ele lê o drive e dá o erro ´I/O Error 21´ em um MessageBox.. tem como eu ´trocar´ essa mensagem por uma tipo: ´Insira um Disquete na Unidade A:´?? E, se o arquivo for maior do q o tamanho do disquete dizer que o disquete não tem espaço suficiente?

E agora uma pergunta mais geral.. qual a vantagem real de fazer um bakcup usando esse componente ou o gbak? q diferença tem de apenas copiar o banco pra outra pasta por exemplo??



Allan Elias Ramos :wink:


Responder

29/11/2004

Gandalf.nho

A maior vantagem de usar esse componente ou o Gbak é que você pode fazer o backup sem precisar retirar os usuários do ar, o que copiando a base você não pode (sob risco de corromper o arquivo)


Responder

29/11/2004

Gandalf.nho

Complementando a resposta anterior: faça o backup primeiro no seu HD, depois compacte o arquivo de backup gerado e só aí coloque numa mídia removível como um disquete ou CD-RW. Uma boa sugestão é o ZipMaster [url]http://www.delphizip.net/index.html[/url]


Responder

29/11/2004

Aersoftware

Complementando a resposta anterior: faça o backup primeiro no seu HD, depois compacte o arquivo de backup gerado e só aí coloque numa mídia removível como um disquete ou CD-RW. Uma boa sugestão é o ZipMaster [url]http://www.delphizip.net/index.html[/url]


Certo, mas é q eu coloquei no formulário um TDriveComboBox e um TDirectoryListBox, pro usuário selecionar o local onde será salvo o Backup, e ali tem o Drive A:.. é aí q ocorre o problema.. :cry:



Allan Elias Ramos :roll:


Responder

30/11/2004

Aersoftware

Olá, ocorreu outra dúvida agora... é o seguinte..

Eu peguei um banco pra fazer um teste... ele tinha 1.960KB.. quando fiz o backup, ele ficou com 63kb.. e quando fiz o Restore, ele ficou com 1.116Kb.. isso é normal? o Banco é ´zerado´, nao tem lixo, já q eu fiz ele e inseri alguns dados, mas nao deletei nenhum.. E tb, todas opções do IbBackup eu deixei como False, e a única q deixei True na IbRestore foi a opção Replace..



Allan Elias Ramos :roll:


Responder

30/11/2004

Maicongabriel

Olá, ocorreu outra dúvida agora... é o seguinte.. Eu peguei um banco pra fazer um teste... ele tinha 1.960KB.. quando fiz o backup, ele ficou com 63kb.. e quando fiz o Restore, ele ficou com 1.116Kb.. isso é normal? o Banco é ´zerado´, nao tem lixo, já q eu fiz ele e inseri alguns dados, mas nao deletei nenhum.. E tb, todas opções do IbBackup eu deixei como False, e a única q deixei True na IbRestore foi a opção Replace..
Sim, é normal!
Feito o backup do seu banco, ele procurar ficar em um menor tamanho possivel, sem dados, seria apenas a definição da estrutura do mesmo!
Retornado ao estado normal, ele fica em sua forma mais organizada(espaçada), pronta a receber dados.


Responder

01/12/2004

Aersoftware

A maior vantagem de usar esse componente ou o Gbak é que você pode fazer o backup sem precisar retirar os usuários do ar, o que copiando a base você não pode (sob risco de corromper o arquivo)


Olá, tentei fazer o Restore da base de dados com o programa logado e deu erro, dizendo justamente q nao podia sobrepor pq o arquivo estava em uso.. pra eu fazer o Restore, tenho q fechar o programa principal? pq pra fazer o Backup eu faço com o programa aberto mesmo.. :?:



Allan Elias Ramos :cry:


Responder

Assista grátis a nossa aula inaugural

Assitir aula

Saiba por que programar é uma questão de
sobrevivência e como aprender sem riscos

Assistir agora

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar