Drush up esegue un backup / dump del database?
Su Febbraio 16, 2021 da admin Lesecuzione di drush up
esegue un backup del database? Dai test, sembra che non “t. Devo fare un backup separato del database prima di eseguire drush up
per aggiornare?
Commenti
- Vedi anche drupal.stackexchange.com/questions/3363/…
Risposta
No, non “t. Esegue solo un backup delle directory del modulo corrente, prima di sostituirle.
Per creare un dump sql, utilizzare
drush sql-dump > filename.sql.
Ma ricordati di spostare il file fuori dalla tua webroot.
Commenti
- Vorrei ricordare alle persone di fare un dump al di fuori della root del tuo sito web; così gli hacker staranno alla larga.
- Questa risposta " accettata " non è corretta. Drush infatti fornisce un dump del database: " drush sql-dump " drushcommands.com/drush-7x/sql/sql-dump
- Um. Prova a leggere di nuovo la risposta. Tutto questo, non solo la prima frase. Perché ' è esattamente quello che ho scritto. La domanda era se " drush up " lo fa, non se drush può farlo.
Rispondi
Per creare dump mysql compresso con gzip con drush :
drush sql-dump --gzip --result-file
Aggiorna dal commento di wranvaud: Se non specifichi il file dei risultati in cui verrà memorizzato la tua cartella home in: ~/drush-backups/<db_name>/<timestamp>/<database_file>.sql.gz
, altrimenti puoi specificare –result-file = “~ / Documents /”
Commenti
- se non ' specifichi il file dei risultati, verrà archiviato nella tua cartella home in ~ / drush-backups / < db_name > / < timestamp > / < database_file > .sql.gz altrimenti puoi specificare
--result-file='~/Documents/<my_backups_folder>'
Risposta
Se hai il Modulo di backup e migrazione installato, puoi chiamarlo da Drush con
$ drush bam-backup
Commenti
- drush supporta nativamente un dump del database, senza la necessità di un modulo aggiuntivo, vedi sopra
Risposta
Questa è una soluzione di script bash per eseguire il backup e il ripristino dalla riga di comando con drush e Acquia-Drupal :
- Nota: Devi solo cambiare il percorso di base, il nome del sito e forse drushpath in entrambi gli script per soddisfare le tue esigenze
- Nota 2: Lo script di backup creerà un file .tar contenente i file del tuo sito più un file data.sql che descrive il tuo database
- Nota3: Lo script di ripristino sceglierà lultimo file di backup .tar creato dallo script di backup
ISTRUZIONI
1) Trova il percorso drush (drush è incluso in acquia), nel mio caso (drushpath = “/ Applications / acquia-drupal / drush” )
2) Crea un file backup_ mysite e un file restore_ mysite e includili nel percorso della cartella bin (ad esempio: / usr / local / bin)
3) Modifica backup_ mysite
#!/bin/bash # Text color variables txtgrn=$(tput setaf 2) # Green txtylw=$(tput setaf 3) # Yellow basepath="path-to-your-server-root" #4ex "/Users/monojones/www" backuppath="$basepath/backups" drushpath="/Applications/acquia-drupal/drush" sitename="your-sitename" tempdir="$backuppath/backup_$sitename" if [ -d $backuppath ]; then echo "Backup path finded. [ $backuppath ]" else echo "Creating backup path... [ $backuppath ]" mkdir $backuppath fi echo "${txtylw}Backing up $sitename ... ${txtgrn}" if [ -d "$backuppath/$sitename" ]; then echo "Backup subdir finded." else echo "Creating $backuppath/$sitename" mkdir $backuppath/$sitename fi echo "${txtylw}" mkdir $tempdir $drushpath/drush -r $basepath/$sitename sql-dump --result-file=$tempdir/data.sql tar -pczf $tempdir/files.tgz $basepath/$sitename $systempaths tar -pczf $backuppath/$sitename/$sitename.backup_$(date +%Y%m%d%H%M).tar.gz $tempdir rm -rf $tempdir
4) Modifica restore_ mysite
#!/bin/bash # Text color variables txtred=$(tput setaf 1) # Red txtgrn=$(tput setaf 2) # Green txtylw=$(tput setaf 3) # Yellow basepath="path-to-your-server-root" #4ex "/Users/monojones/www" backuppath="$basepath/backups" sitename="your-sitename" drushpath="/Applications/acquia-drupal/drush" echo "${txtylw}Restoring ${txtred}$sitename ${txtylw} database: ${txtgrn}" FILE=`ls -1 $backuppath/$sitename/$sitename.backup_* | tail -n 1` echo "Last backup file: ${txtpur} $FILE ${txtylw}" mkdir temp_drupalbackup_$sitename tar -C temp_drupalbackup_$sitename -zxvf $FILE ${backuppath:1}/backup_$sitename/data.sql $drushpath/drush sql-drop drush sql-cli < temp_drupalbackup_$sitename/${backuppath:1}/backup_$sitename/data.sql rm -R temp_drupalbackup_$sitename
Risposta
Puoi anche utilizzare sql-sync per il backup.
$ drush sql-sync -v @site1 @site2
Commenti
- Questo è il modo migliore per eseguire il backup di un sito.
Risposta
Ora è molto facile con Drush 5
“Nota: Drush 5 ha introdotto i comandi di dump dellarchivio e ripristino dellarchivio che consentono di eseguire il backup del codice, dei file e del database in un unico file.”
Lascia un commento