반응형
docker compose exec 명령에서 -T 옵션
docker compose exec 명령에서 -T 옵션은 pseudo-TTY(가상 터미널) 할당을 비활성화한다는 의미입니다.
1. 기본 동작
보통 docker compose exec를 실행하면, 컨테이너 내부에서 TTY(터미널 인터페이스)를 자동으로 붙입니다.
이게 없으면, 명령 실행 도중 입력을 받지 못하거나 화면 출력이 깨질 수 있습니다.
2. mysqldump·mysql < file.sql 같은 경우
mysqldump나 mysql < backup.sql은 표준 입력(stdin)을 통해 데이터를 주고받습니다.
그런데 TTY가 붙어 있으면 입력 장치 충돌이 나서, 아래와 같은 오류가 납니다:
the input device is not a TTY
따라서 -T 옵션을 줘서 "TTY 붙이지 말라"고 해야, 파일 리다이렉션(<)이 정상적으로 작동합니다.
3. 요약
- -T = no-TTY (pseudo-TTY 비활성화)
- 파일 리다이렉션을 쓸 때 꼭 필요
- 안 붙이면 "the input device is not a TTY" 오류 발생
즉, 복원 명령어에서 -T는 "터미널 대신 파일 입력을 바로 MySQL로 넘기게 하는 장치"라고 이해하시면 됩니다.
반응형
'컴퓨터 활용 > 노년에 즐기는 코딩' 카테고리의 다른 글
AWS 모니터링의 중요성과 활용 방법 (0) | 2025.10.02 |
---|---|
Amazon Route 53 이해하기: 도메인과 트래픽을 관리하는 AWS의 핵심 서비스 (3) | 2025.10.01 |
[AWS Academy] ARN이란? (1) | 2025.09.27 |
[AWS Academy] AmazonEC2ReadOnlyAccess 정책(관리형 IAM 정책) (0) | 2025.09.26 |
[AWS Academy] 아마존에서 제공하는 AWS Academy (2) | 2025.09.25 |
댓글