O drush up faz um backup / despejo de banco de dados?


Respostas:


7

Não, não faz. Ele faz apenas um backup dos diretórios atuais do módulo, antes de substituí-los.

Para criar um dump sql, use

drush sql-dump > filename.sql.

Mas lembre-se de mover o arquivo para fora da raiz da web.


Gostaria de lembrar às pessoas que fazem um despejo fora da raiz do site; para que os hackers fiquem longe.
Chrisjlee # 27/11

Esta resposta "aceita" não está correta. Drush, na verdade, fornece um despejo do banco de dados: "drush sql-dump" drushcommands.com/drush-7x/sql/sql-dump
sea26.2

Hum. Tente ler a resposta novamente. Tudo isso, não apenas a primeira frase. Porque foi exatamente isso que escrevi. A questão era se "drush up" faz isso, não se drush pode fazê-lo.
Berdir 6/01/16

8

Para fazer o mysql despejar gzipped com drush :

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

Atualização do comentário do wranvaud: Se você não especificar o arquivo de resultado, ele será armazenado na sua pasta pessoal em ~/drush-backups/<db_name>/<timestamp>/<database_file>.sql.gz:, caso contrário, você poderá especificar --result-file = '~ / Documents /'


1
Se você não especificar o arquivo de resultado será armazenado em você casa pasta em ~ / Drush-backups / <db_name> / <timestamp> / <database_file> .sql.gz caso contrário, você pode especificar--result-file='~/Documents/<my_backups_folder>'
wranvaud

5

Se você tiver o módulo Backup and Migrate module instalado, poderá chamá-lo do Drush with

$ drush bam-backup


drush suporta nativamente um dump de banco de dados, sem a necessidade de um módulo extra, veja acima
wiifm

2

Esta é uma solução de script bash para backup e restauração da linha de comando com drush e Acquia-Drupal :

  • Nota: Você só precisa alterar o caminho base, o nome do site e talvez o caminho drush nos dois scripts para atender às suas necessidades
  • Nota 2: O script de backup criará um arquivo .tar contendo os arquivos do site, além de um arquivo data.sql que descreve o banco de dados
  • Nota3: O script de restauração escolherá o último arquivo de backup .tar criado pelo script de backup

INSTRUÇÕES

1) Encontre o caminho do drush (o drush está incluído no acquia), no meu caso (drushpath = "/ Applications / acquia-drupal / drush")

2) Crie um arquivo backup_ mysite e um arquivo restore_ mysite e inclua-os no caminho da pasta bin (por exemplo: / usr / local / bin)

3) Editar 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) Editar 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

1

Você também pode usar o sql-sync para backup.

$ drush sql-sync -v @site1 @site2

Essa é a melhor maneira de fazer backup de um site.

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.