![shell - mysqldump는 echo와 함께 작동하지만 직접적으로는 작동하지 않습니다.](https://linux55.com/image/142708/shell%20-%20mysqldump%EB%8A%94%20echo%EC%99%80%20%ED%95%A8%EA%BB%98%20%EC%9E%91%EB%8F%99%ED%95%98%EC%A7%80%EB%A7%8C%20%EC%A7%81%EC%A0%91%EC%A0%81%EC%9C%BC%EB%A1%9C%EB%8A%94%20%EC%9E%91%EB%8F%99%ED%95%98%EC%A7%80%20%EC%95%8A%EC%8A%B5%EB%8B%88%EB%8B%A4..png)
where 절을 사용하여 mysql 테이블 덤프를 수행하는 쉘 스크립트를 준비 중입니다. 매개변수에서 테이블 이름과 where 조건을 전달하고 있습니다.
백업 명령:
mysqldump -u root-p'pass' db blocked_reasons --where=" created_time < DATE(Now() - INTERVAL 2 month)" > test.sql
매개변수를 사용하여 이 명령을 실행합니다.
tbl="blocked_reasons"
where="--where="\""created_time < DATE(Now() - INTERVAL 2 month)"\"""
에코를 사용하여 확인합니다.
echo " mysqldump -u root -p db $tbl $where > test.sql"
mysqldump -u root-p db blocked_reasons --where="created_time < DATE(Now() - INTERVAL 2 month)" > test.sql
하지만 이 명령을 실행하기 시작하면 오류가 발생합니다.
mysqldump: Couldn't find table: "<"