web-dev-qa-db-ja.com

突進はデータベースのバックアップ/ダンプを行いますか?

drush upを実行すると、データベースのバックアップが実行されますか?テストから、そうではないように見えます。 drush upを実行して更新する前に、個別のデータベースバックアップを実行する必要がありますか?

13
user1359

いいえ、ありません。現在のモジュールディレクトリを置き換える前に、バックアップを作成するだけです。

SQLダンプを作成するには、次を使用します。

drush sql-dump > filename.sql.

ただし、ファイルをウェブルートの外に移動することを忘れないでください。

7
Berdir

drushを使用したgzipped mysqlダンプ を作成するには:

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

wranvaudのコメントからの更新:結果ファイルを指定しない場合、ホームフォルダーの~/drush-backups/<db_name>/<timestamp>/<database_file>.sql.gzに保存されます。それ以外の場合は、 --result-file = '〜/ Documents /'を指定できます

8
milkovsky

バックアップと移行モジュール モジュールがインストールされている場合、Drushから次のように呼び出すことができます。

$ drush bam-backup

5
Wrashi

これは、drushおよびAcquia-Drupalを使用したコマンドラインからのバックアップと復元のbashスクリプトソリューションです。

  • 注:必要に応じて、両方のスクリプトでbasepath、sitename、および多分drushpathを変更するだけです
  • 注2:バックアップスクリプトは、サイトファイルとデータベースを説明するdata.sqlファイルを含む.tarを作成します
  • 注3:復元スクリプトは、バックアップスクリプトによって作成された最後の.tarバックアップファイルを選択します

[〜#〜]手順[〜#〜]

1)筆者の場合(drushpath = "/ Applications/acquia-drupal/drush")、drushパス(drushはacquiaに含まれています)を見つけます。

2)backup _mysiteファイルとrestore _mysiteファイルを作成し、binフォルダーパスに含めます(例:/ usr/local/bin)

3)編集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 _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

バックアップにsql-syncを使用することもできます。

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

Drush 5を使用すると、非常に簡単です。

「注:Drush 5では、コード、ファイル、データベースを単一のファイルにバックアップできるarchive-dumpコマンドとarchive-restoreコマンドが導入されました。」

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

1
frazras