+ Responder ao Tópico



  1. #1
    poze
    Visitante

    Question script mysqldump ajudem PLZ

    Olá, esta eh eu primeiro post no forum. Apesar de ja ter lido bastante.
    Estou com o seguinte problema usando o mysqldump:


    Montei um script shell q eh ativado pelo cron as 22:00 de segunda a sexta,
    eh um script simples que grava algumas informações em um arquivo de log, faz o bkp de alguns dados, compacta e grava um CD.

    se e somente se executar o script manualmente o comando mysqldump funciona perfeitamente... se o cron fizer o trabalho todo o script funciona menos mysqldump q gera um arquivo .slq de 0(zero) bytes

    eu jatentei o seguinte:
    - aterar a hora de execução do cron pq pensei q fose alguma acesso ao banco q desse problema no msm horario.
    - inseri --debug-info no arquivo para ver se gerava algun log para informação
    eh estranho para min isto. o log do cron informa que o secript esta sendo executado no horario marcado, só não entendo por que o arquivo .sql esta sendo gerado com 0 bytes. Detalhe, antes eu nao apagava o arquivo, simplemente o sobrescrevia com ">" e nao ">>"
    mas por descargo de consciencia resolvi apaga-lo, só para ver se eh recriado, e o bendito .sql eh criado não entendo pq se o script eh executado como root no horario certo, c o script esta correto pq eu executo manualmente e funciona pq pelo cron eh jerado 0 byte.


    segue o comando q uso:
    mysqldump -u USER --password=pass --all-databases --debug-info > /usr/local/var/mysql/bkp/mysql.bkp

    esta eh a linha no /etc/crontab: 01 22 * * 0-5 root /home/user/bkpcd.sh
    o arquivo eh -rwxrwx--- 1 root root 2,8K bkpcd.sh

    info do sistema:
    - Linux 2.6.18-1.2798.fc6 x86_64 x86_64 x86_64 GNU/Linux
    - crontabs-1.10-8
    - mysql-5.0.37 compilado 64bit


    agradeço desde ja por qq ajuda.

  2. #2

    Padrão

    Você colocou as variáveis de ambiente no arquivo de script ?
    Está parecendo que ele não está executando por falta de alguma informação que provavelmente está em variável de ambiente...

  3. #3

    Padrão

    O problema está no caminho absoluto do binario mysqldump

    Verifique com o comando which myslqdump
    e sempre utilize paths absolutos em scripts, ou configure a variavel de ambiente PATH no script.

    Uma dica importante e' adicionar a diretiva

    [email protected]

    na cron

    ficando

    [email protected]
    01 22 * * 0-5 root /home/user/bkpcd.sh

    ASsim, a saida gerada pelo script e possiveis erros serao enviados para o seu email (caso n ao seja setado, ira' para o usuario root local).

    Abracos
    Fabio K. LIma

  4. #4
    poze
    Visitante

    Padrão thx

    ok irei modificar, muito obrigado pela ajuda, eu posto o resultado

  5. #5
    poze
    Visitante

    Padrão Novamente obrigado

    Gente. Muito obrigado, realmente era isso, faltava a variavel PATH ou o caminho absoluto.