web-dev-qa-db-fra.com

Est-ce que drush up fait une sauvegarde / vidage de la base de données?

Exécute-t-il drush up exécuter une sauvegarde de la base de données? D'après les tests, il semble que non. Dois-je effectuer une sauvegarde de base de données distincte avant d'exécuter drush up mettre à jour?

13
user1359

Non, ce n'est pas le cas. Il ne fait qu'une sauvegarde des répertoires actuels du module, avant de les remplacer.

Pour créer un vidage SQL, utilisez

drush sql-dump > filename.sql.

Mais n'oubliez pas de déplacer le fichier en dehors de votre racine Web.

7
Berdir

Pour faire vidage mysql compressé avec drush :

drush sql-dump --gzip --result-file

Mise à jour à partir du commentaire de wranvaud: Si vous ne spécifiez pas le fichier de résultat, il sera stocké dans votre dossier personnel sous: ~/drush-backups/<db_name>/<timestamp>/<database_file>.sql.gz, sinon vous pouvez spécifier --result-file = '~/Documents /'

8
milkovsky

Si le module Backup and Migrate est installé, vous pouvez l'appeler depuis Drush avec

$ drush bam-backup

5
Wrashi

Il s'agit d'une solution de script bash pour la sauvegarde et la restauration à partir de la ligne de commande avec drush et Acquia-Drupal:

  • Remarque: Il vous suffit de modifier le chemin de base, le nom du site et peut-être le chemin de drush dans les deux scripts pour répondre à vos besoins
  • Note 2: Le script de sauvegarde créera un .tar contenant vos fichiers de site plus un fichier data.sql décrivant votre base de données =
  • Note3: Le script de restauration choisira le dernier fichier de sauvegarde .tar créé par le script de sauvegarde

[~ # ~] instructions [~ # ~]

1) Trouvez le chemin de drush (drush est inclus dans acquia), dans mon cas (drushpath = "/ Applications/acquia-drupal/drush")

2) Créez un fichier de sauvegarde _ mysite et un fichier de restauration _ mysite et incluez-les dans le chemin du dossier bin (par exemple:/usr/local/bin)

3) Modifier sauvegarde _ 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) Modifier restaurer _ 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
2
monojones

Vous pouvez également utiliser sql-sync pour la sauvegarde.

$ drush sql-sync -v @site1 @site2
1
Sivaji

C'est très facile maintenant avec Drush 5

"Remarque: Drush 5 a introduit les commandes de vidage d'archive et de restauration d'archive qui vous permettent de sauvegarder votre code, vos fichiers et votre base de données dans un seul fichier."

https://drupal.org/upgrade/backing-your-site-command-line

1
frazras