¿Drush up hace una copia de seguridad / volcado de la base de datos?
On febrero 16, 2021 by admin ¿Ejecutar drush up
ejecuta una copia de seguridad de la base de datos? Según las pruebas, parece que no. ¿Debería hacer una copia de seguridad de la base de datos por separado antes de ejecutar drush up
para actualizar?
Comentarios
- Consulte también drupal.stackexchange.com/questions/3363/…
Responder
No, no lo hace. Solo hace una copia de seguridad de los directorios del módulo actual, antes de reemplazarlos.
Para crear un volcado SQL, use
drush sql-dump > filename.sql.
Pero recuerde mover el archivo fuera de su webroot.
Comentarios
- Me gustaría recordarle a la gente que haga un volcado fuera de la raíz de su sitio web; para que los piratas informáticos se mantengan alejados.
- Esta " aceptada " no es correcta. Drush, de hecho, proporciona un volcado de la base de datos: " drush sql-dump " drushcommands.com/drush-7x/sql/sql-dump
- Um. Intente leer la respuesta nuevamente. Todo, no solo la primera oración. Porque eso ' es exactamente lo que escribí. La pregunta era si " drush up " lo hace, no si drush puede hacerlo.
Respuesta
Para hacer volcado de mysql comprimido con gzip con drush :
drush sql-dump --gzip --result-file
Actualización desde el comentario de wranvaud: Si no especifica el archivo de resultados, se almacenará en su carpeta de inicio en: ~/drush-backups/<db_name>/<timestamp>/<database_file>.sql.gz
; de lo contrario, puede especificar –result-file = «~ / Documents /»
Comentarios
- si no ' t especifica el archivo de resultados, se almacenará en su carpeta de inicio en ~ / drush-backups / < db_name > / < marca de tiempo > / < database_file > .sql.gz de lo contrario, puede especificar
--result-file='~/Documents/<my_backups_folder>'
Responder
Si tiene el Módulo de copia de seguridad y migración instalado, puede llamarlo desde Drush con
$ drush bam-backup
Comentarios
- drush soporta de forma nativa un volcado de base de datos, sin la necesidad de un módulo adicional, ver arriba
Answer
Esta es una solución de script bash para realizar copias de seguridad y restaurar desde la línea de comandos con drush y Acquia-Drupal :
- Nota: Solo tiene que cambiar la ruta base, el nombre del sitio y tal vez drushpath en ambos scripts para satisfacer sus necesidades
- Nota 2: El script de copia de seguridad creará un .tar que contiene los archivos de su sitio más un archivo data.sql que describe su base de datos
- Note3: El script de restauración elegirá el último archivo de copia de seguridad .tar creado por el script de copia de seguridad
INSTRUCCIONES
1) Encuentra la ruta de drush (drush está incluido en aquia), en mi caso (drushpath = «/ Applications / acua-drupal / drush» )
2) Cree un archivo backup_ mysite y un archivo restore_ mysite e inclúyalos en la ruta de su carpeta bin (por ejemplo: / usr / local / bin)
3) Edite 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) Edite 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
Responder
También puede utilizar sql-sync para realizar copias de seguridad.
$ drush sql-sync -v @site1 @site2
Comentarios
- Esta es la mejor forma de realizar una copia de seguridad de un sitio.
Respuesta
Ahora es muy fácil con Drush 5
“Nota: Drush 5 introdujo comandos de volcado de archivo y restauración de archivo que le permiten hacer una copia de seguridad de su código, archivos y base de datos en un solo archivo.»
Deja una respuesta