Estou tentando criar um mysqldump de um banco de dados via script bash e automatizar o processo usando o processo launchd / launchctl do Mac. Eu posso executar com sucesso o script bash manualmente para fazer backup do db no terminal, mas se eu tentar usar o launchd, nada parece acontecer.
Alguém sabe qual pode ser o problema?
Aqui está o script bash para o mysqldump:
DT='date +%m_%d_%Y_%H_%M_%S'
/Applications/MAMP/Library/bin/mysqldump --opt -u root -proot --host=localhost extrapolation > /Users/[user]/Desktop/db/extrapolation_$DT.sql
e aqui está o arquivo plist:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Label</key>
<string>extrapolation_db_backup</string>
<key>ProgramArguments</key>
<array>
<string>/Users/[user]/Sites/extrapolationlaunch/dbase_backup.sh</string>
</array>
<key>StartInterval</key>
<integer>120</integer>
</dict>
</plist>
que salvei em / Users / [user] / Library / LaunchAgents
Eu então corro:
launchctl load ~ / Library / LaunchAgents / extrapolation_db_backup.plist '
e se eu usar
launchctl list
Eu posso ver o processo:
- 0 extrapolation_db_backup
Meu palpite talvez seja algum tipo de problema de permissão, mas não consegui resolvê-lo. Qualquer ajuda seria apreciada.