Drush SQL 덤프로 특정 테이블을 건너 뛰는 방법은 무엇입니까?

drupal.stackexchange https://drupal.stackexchange.com/questions/175550

  •  29-09-2020
  •  | 
  •  

문제

나는 krush config 파일 ~ / .drush / drushrc.php :

if (!isset($options['structure-tables']['common'])) {
  $options['structure-tables']['common'] = array(
    'cache', 'cache_*', 'history', 'search_*', 'sessions', 'watchdog'
  );
}

$options['structure-tables']['common'] = array_merge($options['structure-tables']['common'], 
  array('ctools_css_cache', 'ctools_object_cache', 'logz', 'views_object_cache')
);
.

및 나는 bash 스크립트 파일을 가지고있다 :

/usr/bin/drush sql-dump --root="/home/username/domains/sitename/www" --skip-tables-key="common" --gzip --result-file=/home/username/backup/$year/$month/dbname_$date_now_time.sql
.

그러나 i를 실행하면 백업 파일에 여전히 캐시 테이블에 데이터가 있습니다. 내가 도대체 뭘 잘못하고있는 겁니까?

및 두 번째 질문은 -이를 crontab에 넣으면 다른 위치에 구성 파일을 넣어야합니까?

krush 버전 8을 사용합니다

도움이 되었습니까?

해결책

죄송합니다. 첫 번째 질문으로 많은 도움이 될 수 없습니다 ...

두 번째 질문 질문 :

및 두 번째 질문은 -이를 crontab에 넣으면 다른 위치에 구성 파일을 넣어야합니까?

rushrc.php의 삭제 된 사이트 링크 RC 파일을 배치 할 수 있습니다 :

https://raw.githubusercontent.com/ Drush-OPS / Drush / Master / example / example.drushrc.php

이 파일의 이름을 rushrc.php로 이름을 바꾸고 선택적으로 아래에 나열된 위치 중 하나로 복사합니다.

  1. DRUPAL 사이트 폴더 (예 : 사이트 / {기본값 | example.com} /drushrc.php).
  2. DRUPAL / DURUSH 및 사이트 / 모든 / 깔끔한 폴더 또는 / 건조한 폴더 Drupal 루트 위의 디렉토리에 있습니다.
  3. --config (-c) 옵션으로 지정된 위치에있는 모든 위치에서
  4. 사용자의 .drush 폴더 (즉, ~ / .drush / drushrc.php).
  5. 시스템 와이드 구성 폴더 (예 : /etc/drush/drushrc.php).
  6. 건설 설치 폴더.

cron의 경우 문서는 krush를 동일한 사용자로 실행하도록 구성된 웹 서버를 실행합니다. 그렇다면 시스템 전체 구성 폴더 인 위치 (5)에 RC 파일을 배치하는 것이 좋습니다. 예, 더 많은 지역화 된 건설 RC 파일은 필요에 따라 시스템 전체 구성 파일을 무시해야합니다 (오, 잘).

다른 팁

cache로 시작하는 cache_ 테이블과 테이블을 제외한 모든 테이블을 덤프합니다.

drush sql-dump --skip-tables-list=cache,cache_* > dumpfile.sql
.

데이터베이스 구조 만.전혀 데이터가 없습니다.

drush sql-dump --extra=--no-data > dumpfile.sql
.

데이터 만.캐시 데이터와 캐시 구조가 없습니다.

drush sql-dump --skip-tables-list=cache,cache_* --data-only > dumpfile.sql
.

캐시 데이터 없지만 구조물에 덤프됩니다.

drush sql-dump --structure-tables-list=cache,cache_* > dumpfile.sql
.

SQL-덤프 문서

어떤 이유로 cache_ *에 대해서는 밑줄을 생략 할 때까지 unush 9+로 나를 위해 작동하지 않았습니다.그러나 이것은 내 (서버) bash / 터미널에만 해당 될 수 있습니다. 나를 위해 일하는 것 :

drush sql-dump --skip-tables-list=cache*
.

항상 --verbose를 추가하여 실제 MySQL 덤프와 --ignore 매개 변수를 볼 수 있습니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 drupal.stackexchange
scroll top