Visualizzazione dei risultati da 1 a 2 su 2

Discussione: backup automatico

  1. #1
    Utente di HTML.it
    Registrato dal
    Dec 2005
    Messaggi
    654

    backup automatico

    Qualcuno ha un dominio su Register, in cui utilizza un database? Mi servirebbe un backup automatico periodico. Ho controllato tra le opzioni di phpAdmin, ma non ho trovato nulla
    In alternativa ho pensato a creare un bottone di un form che, se premuto, esegue il backup del db. Ma in questo modo devo creare io il codice per le tabelle, con tutti gli insert, e stamparle su file.
    Inoltre dovrei poi all'occorrenza (in caso di problemi) far recuperare questo file e inserirlo di nuovo nel db...

    Sapete se c'è un modo per fare tutto questo in automatico su Register?

  2. #2
    Utente di HTML.it
    Registrato dal
    Dec 2005
    Messaggi
    654
    Cercando sulla rete ho trovato un codice:

    Codice PHP:
    <?php
      
    // Enter your MySQL access data  
      
    $host'dbhost';        
      
    $user'dbuser';              
      
    $pass'dbpassword';
      
    $db=  'db';

      
    $backupdir 'backups';  

      
    // Compute day, month, year, hour and min.
      
    $today getdate();
      
    $day $today[mday];
      if (
    $day 10) {
         
    $day "0$day";
      }
      
    $month $today[mon];
      if (
    $month 10) {
         
    $month "0$month";
      }
      
    $year $today[year];
      
    $hour $today[hours];
      
    $min $today[minutes];
      
    $sec "00";

      
    // Execute mysqldump command.
      // It will produce a file named $db-$year$month$day-$hour$min.gz 
      // under $DOCUMENT_ROOT/$backupdir
      
    system(sprintf
       
    'mysqldump --opt -h %s -u %s -p%s %s | gzip > %s/%s/%s-%s%s%s-%s%s.gz',                                                  
       
    $host,
       
    $user,
       
    $pass,
       
    $db,
       
    getenv('DOCUMENT_ROOT'),
       
    $backupdir,
       
    $db,
       
    $year,
       
    $month,
       
    $day,
       
    $hour,
       
    $min
      
    ));  
      echo 
    '+DONE';  
    ?>
    C'è qualcosa che mi sfugge, però (dovuto alla mia ignoranza )
    Innanzitutto non capisco se questo codice copi direttamente tutto il db... e poi cosa fa la funzione getenv?
    Inoltre mi sembrano comandi di linux.. funziona comunque se il codice lo faccio eseguire alla pressione di un pulsante online?

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.