Acele bir veritabanı yedekleme / döküm yapar mı?


Yanıtlar:


7

Hayır değil. Yalnızca geçerli modül dizinlerinin yerini almadan önce yedekler.

Bir sql dökümü oluşturmak için şunu kullanın:

drush sql-dump > filename.sql.

Ancak dosyayı web kökünüzün dışına taşımayı unutmayın.


İnsanlara web sitenizin kökünün dışında bir çöplük yapmasını hatırlatmak isterim; bilgisayar korsanları uzak durur.
chrisjlee

Bu "kabul edilen" cevap doğru değil. Drush aslında veritabanının bir dökümü sağlar: "drush sql-dump" drushcommands.com/drush-7x/sql/sql-dump
sea26.2

Um. Cevabı tekrar okumayı deneyin. Hepsi, sadece ilk cümle değil. Çünkü yazdığım şey tam olarak bu. Soru şuydu, eğer "drush up" yaparsa, drush yapabilirse değil
Berdir

8

Sıkıştırılmış gzipli mysql dökümü yapmak için :

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

Wranvaud'un yorumundan güncelleme: Sonuç dosyasını belirtmezseniz, ana klasörünüzde saklanır: ~/drush-backups/<db_name>/<timestamp>/<database_file>.sql.gzaksi takdirde --result-file = '~ / Documents /'


1
sonuç dosyasını belirtmezseniz, ~ / drush-backups / <db_name> / <timestamp> / <database_file> .sql.gz altında ana klasörünüzde saklanır. Aksi takdirde--result-file='~/Documents/<my_backups_folder>'
wranvaud

5

Eğer varsa Yedekleme ve Geçir modülü modülü kurulu, sizinle Drush onu çağırabilir

$ drush bam-backup


drush, ekstra bir modüle ihtiyaç duymadan yerel olarak bir veritabanı dökümü destekler, yukarıya bakın
wiifm

2

Bu, drush ve Acquia-Drupal ile komut satırından Yedekleme ve Geri Yükleme için bir bash komut dosyası çözümüdür :

  • Not: Her iki komut dosyasında da sadece temel yolu, sitename ve belki drushpath'i değiştirmeniz gerekir.
  • Not 2: Yedekleme komut dosyası, site dosyalarınızı içeren bir .tar ve veritabanınızı açıklayan bir data.sql dosyası oluşturur
  • Not3: Geri yükleme komut dosyası, yedekleme komut dosyası tarafından oluşturulan son .tar yedekleme dosyasını seçer

TALİMATLAR

1) Benim durumumda (drushpath = "/ Applications / acquia-drupal / drush") drush yolunu bul (drush acquia'ya dahil)

2) Bir backup_ oluşturun mysite dosyası ve restore_ mysite dosyası ve (sizin bin klasörü yolundaki örneğin onları şunlardır: / usr / local / bin)

3) Edit 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) Restore_ sitemini düzenle

#!/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

Yedekleme için sql-sync de kullanabilirsiniz.

$ drush sql-sync -v @site1 @site2

Bir siteyi yedeklemenin en iyi yolu budur.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.