L’obiettivo di questa guida è di permetterti di effettuare una copia di backup del database di Celum al fine di averne copia di sicurezza in caso di problemi .
Questo script infatti ci permetterà di effettuare un dump del db in una cartella di nostra scelta , la quale potrebbe essere archiviata per esempio su dropbox o google drive per ottenerne un’archiviazione remota.
In aggiunta a questo, lo script, ad ogni esecuzione cancellerà i backup più vecchi di 7 giorni evitando così di saturare l’hard disk.
Dopo aver scaricato il file qui allegato, ed averlo estratto con la stessa struttura presente all’interno dell’archivio ( nel nostro esempio i file sono stati estratti in c:\backup_celum ), modifichiamo lo script di backup con i parametri richiesti evidenziati in Rosso mentre in Blu le note esplicative. Ti informo che la path dove salvare i backup DEVE esistere e quindi va creata anticipatamente;
cd C:\Program Files\MySQL\MySQL Server 5.5\bin\ C:\Program Files\MySQL\MySQL Server 5.5\: percorso del server mysql
mysqldump --host="DB_HOST" --user="DB_USER" --password="DB_PASS" NOME_DB > "E:\backup-sql-celum\backup_%date:~-4%_%date:~3,2%_%date:~0,2%.sql" DB_HOST: server mysql di Celum, in un installazione tipo è localhost DB_USER: utente del db di celum, nell installazionetipo è rootDB_PASS: password del utente del db relativo a celum NOME_DB: nome del db di celum, con le installazioni Celum Imagine STD è imaginese E:\backup-sql-celum\: percorso dove salvare i backup
REM Verifica errore durante il dump if %ERRORLEVEL% NEQ 0 (goto ERROR) echo Backup eseguito correttamente. forfiles /P E:\backup-sql-celum\ /S /M *.* /c "cmd /C Del @path" /D -07 E:\backup-sql-celum\: percorso dove salvare i backup
exit :ERROR echo Errore durante il dump cd "C:\backup_celum\SENDMAIL\" C:\backup_celum\SENDMAIL\: percorso dello script di sendmail (contenuto nel nostro archivio)
sendemail.exe -s SMTP_SERVER:SMTP_PORT -xu SMTP_USER -xp SMTP_PASS -o tls=yes -t TO_MAIL -u OGGETTO_EMAIL -m TESTO_EMAIL -f FROM_MAIL SMTP_SERVER:SMTP_PORT : indirizzo server smtp:porta del server smtp SMTP_USER : nome utente smtp SMTP_PASS : password dell smtp tls= : yes/no scegliere in base al proprio smtp TO_MAIL : destinatario email OGGETTO_EMAIL : oggetto della mail di errore TESTO_EMAIL : testo della mail di errore FROM_MAIL : mittente email exit
come si evince nel nostro esempio, dovrete sostituire i parametri in grassetto con quelli consoni alla vostra configurazione utilizzando un comune editor di testi come ad esempio notepad, inltre le cartelle di origine dei programmi o di destinazione dei backup vanno verificate e/o create prima di eseguire lo script.
Nel nostro caso per l’invio degli alert utilizziamo un servizio di transactional E-Mail chiamato Mandrill (maggiori dettagli le potete trovare su: http://www.farnedi.it/email-marketing-quali-piattaforme-utilizzare/ ), il quale ci permette tramite username e apy-key di inviare email in maniera efficace.
Arrivati a questo punto andremo a creare il cron nel Windows “Task Scheduler”:
Creazione Task:
Apriamo il Task Scheduler (lo trovate nel menu programmi, Strumenti di Amministrazione) e Selezioniamo Create Task:

Tab General:
Nel Tab General, andiamo ad inserire in Name il Titolo del cron, in descrizione la descrizione qualora voleste (es. script di backup db celum), infine le security option come da immagine sottostante:

tab Trigger:
Spostiamoci nella tab Trigger, selezioniamo New, e procediamo come segue ( nel nostro esempio il cron verrà eseguito ogni giorno alle 00.01):
