Fare il backup del Sito

19 contenuti / 0 new
Ultimo contenuto
Anonimo (non verificato)
Ritratto di Anonimo
Fare il backup del Sito

Dato che non sono pratico di php il mio problema è questo. Ho fatto il sito con Drupal e sono molto contento del risultato. Adesso vorrei backupparlo su un cdrom dato che probabilmente lo devo cancellare e comunque al massimo un domani vorrei averne la copia.
Per fare questo devo salvare qualche file database in modo strano con mysql? (i comandi non li so) oppure basta salvare la cartella contentente il sito sul cd?.

Grazie mille ;)

si, devi salvare anche il database!

Installati il modulo DBA (http://drupal.org/project/dba)
entra in amministration->database, seleziona tutte le tabelle
e premi backup in fondo alla pagina e poi backuptables nella pagina
seguente.

Ti uscira' un file da salvare che conterra' il backup.

Fabio

----
My websites adrenalinteam.it - windsmpeg.tk - falcoarredamenti.it

ciao,

in altrenativa puoi anche trasformare drupal in sito statico con WGET oppure httrack , che ti salvano tutto in locale con i link corretti;

maggiori info qui:

http://drupal.org/node/27882

ciao!

cosi' pero' perdi tutta la "dinamicita'" del
tuo sito... rendendolo di fatto un sito statico.

Fabio

----
My websites adrenalinteam.it - windsmpeg.tk - falcoarredamenti.it

Con questo programma puoi fare il backup e ottimizzare il database di Drupal in una sola operazione.

  // Enter your MySQL access data
  $host= 'localhost';
  $user= 'user';
  $pass= 'password';
  $db=   'database_drupal';
  $backupdir = 'backups';   // relative directory to Drupal Root
  // Optimize tables
  $SQL = "OPTIMIZE TABLE ";
  mysql_connect($host,$user,$pass);
  $result = mysql_list_tables($db);
   $i = 0;
   while ($i < mysql_num_rows($result)) {
      $name_table = mysql_table_name($result, $i);
      //echo "Ottimizzazione tabella: $name_table .....<BR>";
      $SQL .=  $name_table;
      $SQL .= ",";
      $i++;
   }
   $SQL = substr($SQL,0,strlen($SQL)-1); //Togli l'ultima virgola dalla query
   $result_set = mysql_query($SQL);
   mysql_free_result($result_set);
  // 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';

Matteo

e dove lo eseguo il programma?
su sql in phpmyadmin?

scusa....
lo esegui come programma php, nella root di drupal o in una sua sottodirectory.
Il programma lo salvi ad esempio come backup.php nella root di drupal, e lo richiami come http://tuosito/backup.php

Matteo

lo script sopra salva tutto il db in una directory
relativa all'installazione di drupal.
(Quindi accessibile dall'eserno!)

Questo puo' essere un serio problema di sicurezza...
Il db contiene infatti tutte le info degli utenti!

Fabio

----
My websites adrenalinteam.it - windsmpeg.tk - falcoarredamenti.it

Ovviamente devi usare una dir non visibile oppure proterggerla opportunamente.

Matteo

io ho provato ma dopo aver cliccato su "select all" e "backup" non succede nulla.

"backuptables" nella pagina
seguente.

Questo proprio non la vedo. Nella tab ho: tables, query, run script

In query(non so a che serve)l'unico pulsante è "execute query"

Un post del 2005 non fa riferminto a drupal 4.7 o 5.0

il backup lo si fa:

1) da phpmyadmin + copia dei file
2) Con un modulo successore di quello che non ricordo! (ma facile da trovare)

Ciao

Con phpmyadmin quando vado a ripristinare i dati mi sballa tutti i caratteri accentati. Penso sia un problema di codifica, come lo risolvo?

Guarda la documentazione di MySQL: c'è un parametro per quando lo si usa da riga di comando: --default_character_set (mi pare).
Se usi phpMyAdmin, non ricordo cosa si deve fare: c'è comunque un'opzione per l'encoding del file che viene importato.

Scusate l'intervento da neofita, mi sembra tutto così complesso, quando per soli 10 euro/anno Aruba ( per chi ha questo provider) fornisce backup database e sito. Non basta ? Bisogna fare anche altro ?

Grazie

S.

Dipende da quanto è affidabile e da quale frequenza hanno i backup. Di solito, comunque, 2 backup sono meglio di uno... ;)

Segnalo anche che con l'applicazione MySQL Administrator (distribuita da MySQL) si possono fare backup dal proprio PC, ammesso che sia possibile connettersi al server dalla rete esterna al fornitore di hosting.

noi utilizziamo il modulo Backup and Migrate
ti posto il link Backup and Migrate
dagli un okkio
ciao

Sintetika s.r.l.
Communication Technology Innovation

www.sintetika.it

puoi provare a mettere nel cd la piattaforma portable di xampp e relativo sito creato.

Ho appena scritto un paio appunti su come fare i backup di Drupal, magari a qualcuno può interessare: Guida per il backup di Drupal

Ho scaricato ed installato il modulo, ho seguito le istruzioni, col pessimo risultato che questo modulo mi ha incasinato il database del mio sito, allora ho risolto a modo mio, cioè sono entrato nell'interfaccia del "Phpmyadmin" ho selezionato tutte le tabelle ed ho lanciato la procedura di riparazione ovvero ho clikkato sulla voce "Ripara tabelle" risultato che gli errori sono scomparsi! PS. sconsiglio l'uso del modulo a cui si fà rifferimento su questo post, quello che ho espresso io è il sistema migliore.