Visualizzazione dei risultati da 1 a 9 su 9
  1. #1
    Utente di HTML.it
    Registrato dal
    Nov 2002
    Messaggi
    298

    [mysql] backup db giornaliero all'avvio del server

    E' possibile tramite uno script php (o altro) fare un backup di un db mysql che ho su un computer in locale la prima volta che avvio il server ogni giorno?

    E si può salvre il tutto in un file del tipo 20051228.txt (insomma la data del giorno)?

    Ultima cosa: si può fare in modo che i backup più vecchi di, ad esempio, 30 giorni vengano rimossi?

    Grazie a tutti!
    Step.

  2. #2
    Utente di HTML.it
    Registrato dal
    Sep 2002
    Messaggi
    460
    Shell questa sconosciuta

    Usa mysqldump dentro la directory bin di mysql e per eliminare i dump vecchi basta usare dir& del da riga di comando
    There are 10 types of people in the world - those who understand binary and those who don't.

  3. #3
    Utente di HTML.it
    Registrato dal
    Nov 2002
    Messaggi
    298
    ....

    ehm..e come uso mysqldump?

    si può automatizzare il tutto vero?

  4. #4

  5. #5

  6. #6
    Utente di HTML.it
    Registrato dal
    Nov 2002
    Messaggi
    298
    no ambiente windows xp! niente linux purtroppo!

  7. #7
    allora se ho capito bene da un tuo computer vuoi esportare il dump di mysql e salvarlo sul tuo pc, giusto?

    allora ci sono 2 modi solo per farlo, il primo è lento e semplice il secondo è più complesso ma molto + veloce

    allora ... se usi il secondo sistema sul server windows col db hai anche bisogno o di un'accesso ftp o di un server web e fai cosi: sul server db, tramite at, imposti il sistema per lanciare mysqldump ogni quando scegli tu e poi, sempre tramite at, imposti il download del dump sul tuo pc in locale con 1 ora di differenza ... e per far questo devi usare wget per windows

    nel primo sistema ti basta impostare at per far fare i backup remoti a mysqldump ... ma devi abilitare l'accesso esterno ad un'utente che possa SOLO leggere tutti i db. Ricordati qui però che se non sono in rete i tempi di backup saranno astronomici

    per wget per windows vai su
    http://users.ugent.be/~bpuype/wget/
    http://unxutils.sourceforge.net/ (questo ti serve se vuoi anche comprimere il backup che estrai)

    se vuoi impostare la data nel nome del file credo che tu abbia bisogno o di uno scrippettino php che generi il nome o di un file batch

    per fare il backup all'accessione ... invece di usare AT lo imposti nell'autoexec.nt presente dentro c:\windows\system32, solo che non ricordo se lui lo esegue prima o dopo il login ... per quello devi per forza fare una prova ^^

  8. #8
    Utente di HTML.it
    Registrato dal
    Nov 2002
    Messaggi
    298
    ehm....cosa significa la sigla AT?

    cmq devo esportare il dump del db sullo stesso pc dove sta girando apache (per prevenire errori di inserimento ed eventuali cancellazioni errate.... in pratica serve per la gestione di un magazzino)

    Apache viene avviato solamente quando serve (quindi non necessariamente all'avvio del pc)

  9. #9
    Utente di HTML.it L'avatar di Teuzzo
    Registrato dal
    Mar 2002
    Messaggi
    969
    Un esempio di script shell x win semplice per fare il backup è questo:

    codice:
    @echo off
    C:\MySQL\bin\mysqldump --user=tuo_user --password=tua_password NOME_DB > c:/tmp/DB.sql
    Dove 'C:\MySQL\bin\mysqldump' è il percorso del mysqldump (metti il tuo percorso) e 'c:/tmp/DB.sql' è il file che salvi.

    Crea un file .bat con il codice che ti ho appena postato.
    Ogni volta che esegui il file ti crea il backup del db, quindi puoi decidere di lanciarlo all'avvio del server.

    Per mettere la data nel nome del file, prova a leggerti un po' di documentazione sulla shell di win, se fosse su linux saprei aiutarti, purtroppo su win non conosco i comandi per la programmazione da shell.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.