저는 MySQL 데이터베이스를 백업하고 데이터베이스의 mysql 덤프가 포함된 GZIP 파일을 생성하는 스크립트를 작성했습니다. 단일 명령으로 GZIP 파일의 압축을 풀고 데이터베이스를 복원하는 것이 가능한지 궁금합니다.
이 같은:
mysql -u user -h host -ppass database < gzip -c database.backup
그러나 이것은 작동하지 않는 것 같습니다. 어떤 제안이 있으십니까?
다음 명령을 사용합니다.
mysqldump -u user -h host -ppass database | gzip -9 > database.backup
내가 받는 오류는 -bash: gzip: No such file or directory;
다음과 같습니다. 제 생각에는 gzip을 명령이나 그와 유사한 것으로 인식하지 못한다는 뜻입니다.
답변1
두 개의 명령을 사용하고 있으므로 리디렉션이 아닌 파이프를 사용해야 합니다. 나는 이것을 사용합니다 :
gunzip < file.gz | mysql <parameters>
답변2
일반적으로 이것은 작동합니다. gzip이 설치되어 있고 PATH-Variable에서 사용할 수 있습니까? ("which gzip" 명령으로 테스트할 수 있습니다.
mysqldump -u user -h host -ppass database | gzip -9 > database.backup
하지만 백업 파일로 접미사 .gz를 사용하겠습니다.
당신은 또한 시도할 수 있습니다
mysqldump -u user -h host -ppass *--database* "db_name" | gzip -9 > "db_backup".backup.gz
나는 최근에 내 데이터베이스의 압축 백업을 만들기 위한 스크립트를 작성했습니다.