MySQL DB를 자동으로 백업하는 쉘 스크립트를 만들고 싶습니다. 나중에 s3 버킷에 복사하겠습니다.
다음 쉘 스크립트를 만들었습니다.
#vim /home/ubuntu/backup/mysqlbackup.sh
#!/bin/bash
## Specify the name of the database that you want to backupbackup
# Database credentials
USER="user1"
PASSWORD="password"
HOST="hostname.compute.amazonaws.com"
DB_NAME="db1"
#Backup_Directory_Locations
BACKUPROOT="/home/ubuntu/backup"
TSTAMP=$(date +"%d-%b-%Y-%H-%M-%S")
S3BUCKET="s3://s3bucket"
#LOG_FILE="/home/ubuntu/backup/log/dump.log"
mysqldump -h <HOST> -u <USER> --database <DB_NAME> -p"$PASSWORD" > $BACKUPROOT/$DB_NAME-$TSTAMP.sql
그런 다음 명령줄에서 스크립트를 실행합니다.
sudo bash -x ./mysqlbackup.sh
그리고 그것은 실패하고 나에게 다음과 같이 말합니다.
호스트: 해당 파일이나 디렉터리가 없습니다.
답변1
<HOST>
. <DB_NAME>
등은 단지 자리 표시자일 뿐입니다.
실제 문자열이나 쉘 변수 확장 등 으로 대체되어야 합니다 "$HOST"
."$DB_NAME"
-p"$PASSWORD"
오류 메시지는 <
및 >
리디렉션 연산자 때문입니다.