william Posted January 4, 2012 Report Share Posted January 4, 2012 Boa noite e Feliz Ano Novo a Todos. Estou desenvolvendo um backup para mysql e gostaria que os amigos fizessem testes com ele e se possivel dar sugestoes para melhora-lo. Ficou bem simples, basta configurar o BD, usuario e senha nas configuracoes e já deve funcionar. Ele trabalha junto com o mysqldump.exe para gerar o backup e com o mysql.exe para restaurar o backup. link : http://www.4shared.com/rar/Ajxd2i99/backup.html William "Eu creio, que de algum modo, que seje relativo em demasia a subjetiva constitucional perante tecnicamente aos que assim ditam o descritivo em si, no parágrafo subconsequente do subconciente doutrinários." Quote Link to comment Share on other sites More sharing options...
william Posted January 4, 2012 Author Report Share Posted January 4, 2012 Boa noite e Feliz Ano Novo a Todos. Estou desenvolvendo um backup para mysql e gostaria que os amigos fizessem testes com ele e se possivel dar sugestoes para melhora-lo. Ficou bem simples, basta configurar o BD, usuario e senha nas configuracoes e já deve funcionar. Ele trabalha junto com o mysqldump.exe para gerar o backup e com o mysql.exe para restaurar o backup. link : http://www.4shared.com/rar/Ajxd2i99/backup.html William "Eu creio, que de algum modo, que seje relativo em demasia a subjetiva constitucional perante tecnicamente aos que assim ditam o descritivo em si, no parágrafo subconsequente do subconciente doutrinários." Quote Link to comment Share on other sites More sharing options...
william Posted January 5, 2012 Author Report Share Posted January 5, 2012 Alguem sabe se é possivel a partir de um arquivo backup.sql , restaurar somente uma tabela, sem ter quer restaurar tudo ? William "Eu creio, que de algum modo, que seje relativo em demasia a subjetiva constitucional perante tecnicamente aos que assim ditam o descritivo em si, no parágrafo subconsequente do subconciente doutrinários." Quote Link to comment Share on other sites More sharing options...
Luisão Posted January 5, 2012 Report Share Posted January 5, 2012 Com ceto malabarismo, sim. http://blog.tsheets.com/2008/tips-tricks/mysql-restoring-a-single-table-from-a-huge-mysqldump-file.html Outro modo seria ao invés de fazer o dump do BD inteiro num arquivo só, faz um arquivo por tabela. Acho que o mysqldump tem uma opção assim. Luis Fernando Jr. (Luisão) -- FWH8.01 + SQLLIB 1.9d + xHB 1.10 + xDev 0.65 + @SAY luis.fernando.majr@gmail.com juninho_luisao@hotmail.com (msn) Quote Link to comment Share on other sites More sharing options...
william Posted January 5, 2012 Author Report Share Posted January 5, 2012 citação:Com ceto malabarismo, sim.http://blog.tsheets.com/2008/tips-tricks/mysql-restoring-a-single-table-from-a-huge-mysqldump-file.html id=quote>id=quote>Luizao, desta forma fica dificil incluir num programa de backup, visto que tem muitos comandos manuais de Mysql... citação:Outro modo seria ao invés de fazer o dump do BD inteiro num arquivo só, faz um arquivo por tabela. Acho que o mysqldump tem uma opção assim. id=quote>id=quote>Desta forma fica mais impossivel ainda, pois creio que um backup deve ter apenas 1 arquivo... O meu banco de dados tem 130 tabelas... ja pensou , todo dia de backup aumentar 130 tabelas.... Creio que a solução para isso vai ser mais dificil. Terei que ler o arquivo .SQL com a classe Ttxtfile() . O arquivo .SQL não passa de um arquivo texto que contem as instrucoes e os dados a serem inseridos no BD quando se restaura o backup. Vou tentar extrair o arquivo lendo diretamente o texto. Alguem ja fez assim ? William "Eu creio, que de algum modo, que seje relativo em demasia a subjetiva constitucional perante tecnicamente aos que assim ditam o descritivo em si, no parágrafo subconsequente do subconciente doutrinários." Quote Link to comment Share on other sites More sharing options...
SAOliveira Posted January 5, 2012 Report Share Posted January 5, 2012 Uma forma simples: 1 - Crie seu script com o mysqldump para fazer backups por tabelas. 2 - Utilize o Cobian Backup, para executar este scipt. 3 - Configure o Cobian para compactar as tabelas Cobian é free e muda totalmente a ideia que programa free nao funciona 100%. - Roda em rede e FTP. - Agenda data/dias da semana/hora de backup. - Configura para ações antes e depois do backup. - Completo e inclemental. Experimente se já não o conhece. http://www.cobiansoft.com/ Dimob / SPED(pis/cofins) ..:: Feliz Natal para Todos ::.. Quote Link to comment Share on other sites More sharing options...
Luisão Posted January 5, 2012 Report Share Posted January 5, 2012 Mas para o caso de fazer o backup de cada tabela em um arquivo separado, você poderia fazer assim: Antes você tinha um arquivo 2012-01-05.sql, agora você teria um diretório 2012-01-05 e dentro dele teria um .sql para cada tabela sua. Aà na rotina de restaurar backup, ao escolher o dia, redireciona para a pasta correspondente. Usa um Directory para pegar a lista de todos arquivos .sql e processa um a um. (faz uma tela para marcar as tabelas desejadas) Usando o MSGMETER você consegue até dizer qual tabela está sendo copiada/restaurada naquele momento. Não acho que fica inviável. Você poderia até colocar essas opções no seu programa de backup (que por sinal, não vi ainda). Por exemplo: Backup Total / Backup Seletivo. Aà o Total continua como o seu é hoje e o Seletivo permite selecionar quais tabelas vai exportar/importar. Acho que ficaria bem legal Luis Fernando Jr. (Luisão) -- FWH8.01 + SQLLIB 1.9d + xHB 1.10 + xDev 0.65 + @SAY luis.fernando.majr@gmail.com juninho_luisao@hotmail.com (msn) Editado por - Luisão on 05/01/2012 16:38:31 Quote Link to comment Share on other sites More sharing options...
william Posted January 5, 2012 Author Report Share Posted January 5, 2012 citação:Experimente se já não o conhece. http://www.cobiansoft.com/ id=quote>id=quote>Ok S.A. , vou dar uma pesquizada Luizao, lendo o que vc me disse, me surgiu uma ideia: - leio do arquivo BACKUP.SQL em modo texto e pego a lista de tabelas existentes no backup. ( o meu sistema já faz isso). - Faço o Dump das tabelas da lista uma a uma, gravando os .SQL em um pasta temporaria. - Apos gerar os .SQL para cada tabela, vou zipar tudo num arquivo ZIP. este será o arquivo de backup ! - apos gerado, limpo a pasta temporaria. - depois eu consigo selecionar as tabelas que eu desejo restaurar, do jeito que eu quero ! e ainda tem a vantagem de ja sair compactado, ganhando em espaço fisico o que vc acha ? William "Eu creio, que de algum modo, que seje relativo em demasia a subjetiva constitucional perante tecnicamente aos que assim ditam o descritivo em si, no parágrafo subconsequente do subconciente doutrinários." Editado por - william on 05/01/2012 17:08:57 Quote Link to comment Share on other sites More sharing options...
Luisão Posted January 5, 2012 Report Share Posted January 5, 2012 Só não entendi essa parte. citação:- leio do arquivo BACKUP.SQL em modo texto e pego a lista de tabelas existentes no backup. ( o meu sistema já faz isso). - Faço o Dump das tabelas da lista uma a uma, gravando os .SQL em um pasta temporaria. id=quote>id=quote>Você faria um dump inicial que seria o backup geral. Até aà beleza, aà você ia lendo via TXTFile para montar a lista de tabelas. Aà a partir dessa lista você geraria um dump para cada uma via mysqldump ou pela leitura via TXT ? É que acho que vai perder desempenho. Você poderia usar a função sqlArray (caso use SQLLIB) com a query Show Tables From seuDB, aà joga isso num browse permitindo selecionar as desejadas e faz dump só dessas. Acho mais prático. Modos de fazer tem vários, cabe a você decidir o melhor para seu problema Luis Fernando Jr. (Luisão) -- FWH8.01 + SQLLIB 1.9d + xHB 1.10 + xDev 0.65 + @SAY luis.fernando.majr@gmail.com juninho_luisao@hotmail.com (msn) Quote Link to comment Share on other sites More sharing options...
william Posted January 5, 2012 Author Report Share Posted January 5, 2012 Luizao , seria +- assim: 0) Pego a lista de tabelas do banco com o comando mysql -h localhost -u root -psenha -d banco -s-e "SHOW TABLES" > arq.temp No arq.temp está a lista das tabelas para o dump. 1) Para fazer o Backup.SQL -> gero 1 arquivo .SQL para cada tabela da lista em uma pasta temporaria. Depois Zipo todos os arquivos gerando o BACKUP.ZIP. (Dentro do backup.zip por exemplo terá 130 arquivos .SQL) 2)para restaurar o backup: (esqueça a parte de ler o txt, nao vai precisar). Verifico o conteudo do ZIP e abro 1 listbox para marcar as tabelas escolhidas. Depois executo a restauracao das tabelas.sql selecionadas com o mysql.exe. Agora minha duvida é , será que existe um comando no mysqldump.exe que gera todas as tabelas .SQL de uma so vez? Ou terei que dar um mysqldump para cada tabela ? O comando é esse , mas gera apenas 1 tabela. mysqldump -B BANCO --table TABELA > tabela.sql William "Eu creio, que de algum modo, que seje relativo em demasia a subjetiva constitucional perante tecnicamente aos que assim ditam o descritivo em si, no parágrafo subconsequente do subconciente doutrinários." Editado por - william on 05/01/2012 17:59:22 Quote Link to comment Share on other sites More sharing options...
Luisão Posted January 5, 2012 Report Share Posted January 5, 2012 Acho que tem sim. No manual deve ter algo falando, mas olha esse link que é mais rápido: http://stackoverflow.com/questions/3669121/dump-all-mysql-tables-into-separate-files-automagically Luis Fernando Jr. (Luisão) -- FWH8.01 + SQLLIB 1.9d + xHB 1.10 + xDev 0.65 + @SAY luis.fernando.majr@gmail.com juninho_luisao@hotmail.com (msn) Quote Link to comment Share on other sites More sharing options...
william Posted January 6, 2012 Author Report Share Posted January 6, 2012 putz , não encontrei , ou não existe comando no mysqldump que gera todas as tabelas separadamente de uma só vez. Sempre tem que ser colocado num loop para gerar.Algo assim: For i=1 to Len(ListaTabelas) mysqldump -B BANCO --table LISTATABELAS > LISTATABELAS.sql * o mysqldump faz: * conecta no BD * executa comando * desconecta * se for um BD com 150 tabelas vai fazer isso vezes! * perde performance, fica lento... next O ideal seria o mysqldump ter algo assim: mysqldump -B BANCO --table TAB1 TAB2 > TAB1.SQL TAB2.SQL Mas isso nao funciona ! Sendo assim, desisto de tentar colocar no backup a restauracao parcial , pelo motivo de lentidão no processo. A restauração vai ser sempre TOTAL. Para melhorar o sistema de backup, vou mandar ZIPAR o arquivo .SQL gerado. Assim ganho mais espaço FÃsico de armazenagem. William "Eu creio, que de algum modo, que seje relativo em demasia a subjetiva constitucional perante tecnicamente aos que assim ditam o descritivo em si, no parágrafo subconsequente do subconciente doutrinários." Quote Link to comment Share on other sites More sharing options...
Luiz Fernando Posted March 27, 2013 Report Share Posted March 27, 2013 Ola William, estava usando seu sistema de backup que vc postou aqui neste topico deste o ano passado visto não ter desenvolvido o meu ainda, funciona blz, backup e o restaura, mais agora preciso retornar um backup de um cliente que deu pau na maquina dele o arquivo esta aqui com conteudo tudo certinho, mais ao retornar da a seguinte mensagem. Este backup não foi gerado pelo mysqlDump! algum colega teria alguma ideia do que posso fazer Obrigado Luiz Fernando Quote Link to comment Share on other sites More sharing options...
Luiz Fernando Posted March 27, 2013 Report Share Posted March 27, 2013 Estava fazendo uma comparação com o arquivo do backlup do cliente acima com os demais que tenho aqui, e o arquivo dele esta todo corrompido,engraçado que sao varios dias com o mesmo problema, com certeza alguma virus na maquina, visto que a mesma parou de funcionar e deve que ser formatada, bom o negocio é dar a noticia pro cliente agora ... Abraços Luiz Fernando Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.