drush up은 데이터베이스 백업 / 덤프를 수행합니까?
On 2월 16, 2021 by admin drush up
를 실행하면 데이터베이스 백업이 실행됩니까? 테스트 결과 그렇지 않은 것 같습니다. 업데이트하기 위해 drush up
를 실행하기 전에 별도의 데이터베이스 백업을 수행해야합니까?
댓글
- drupal.stackexchange.com/questions/3363/ … 참조
답변
아니요. 현재 모듈 디렉토리를 교체하기 전에 백업 만 만듭니다.
sql 덤프를 만들려면
drush sql-dump > filename.sql.
하지만 웹 루트 외부로 파일을 이동하는 것을 잊지 마십시오.
코멘트
- 웹 사이트 루트 외부에서 덤프를 수행하도록 사람들에게 상기시키고 싶습니다. 따라서 해커는 멀리 떨어져 있습니다.
- " 수락 된 " 답변은 올바르지 않습니다. 실제로 Drush는 데이터베이스 덤프를 제공합니다. " drush sql-dump " drushcommands.com/drush-7x/sql/sql-dump
- 음. 답을 다시 읽으십시오. 첫 번째 문장뿐만 아니라 모든 것. 그게 ' 제가 쓴 내용이기 때문입니다. 문제는 " drush up "이 할 수 있는지, drush가 할 수 있는지 여부가 아닙니다.
답변
drush로 gzip으로 압축 된 mysql 덤프 를 만들려면 :
drush sql-dump --gzip --result-file
wranvaud의 주석에서 업데이트 : 결과 파일을 지정하지 않으면 저장됩니다. 홈 폴더 : ~/drush-backups/<db_name>/<timestamp>/<database_file>.sql.gz
, 그렇지 않으면 –result-file = “~ / Documents /”
댓글
- 결과 파일을 지정하지 않으면 ' 결과 파일이 ~ / drush-backups / < db_name > / < 타임 스탬프 > / < database_file > .sql.gz 그렇지 않으면
--result-file='~/Documents/<my_backups_folder>'
div를 지정할 수 있습니다. >
답변
백업 및 마이그레이션 모듈 모듈이 설치되어 있습니다.
$ drush bam-backup
p를 사용하여 Drush에서 호출 할 수 있습니다. >
댓글
- drush는 추가 모듈없이 기본적으로 데이터베이스 덤프를 지원합니다. 위 참조
Answer
drush 및 Acquia-Drupal :
- 참고 : 기본 경로, 사이트 이름 및 필요에 따라 두 스크립트 모두에 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
답변
백업에 sql-sync를 사용할 수도 있습니다.
$ drush sql-sync -v @site1 @site2
댓글
- 사이트를 백업하는 가장 좋은 방법입니다.
답변
Drush 5는 이제 매우 쉽습니다.
“참고 : Drush 5는 코드, 파일 및 데이터베이스를 단일 파일로 백업 할 수있는 아카이브 덤프 및 아카이브 복원 명령을 도입했습니다.”
답글 남기기