아래 내용을 d:\backup.ps1 파일로 저장한다.

 

#내용시작

$MYSQL_PATH = "C:\Program Files\MariaDB 10.5\bin\mysqldump.exe " #mysqldump 실행파일경로
$BACKUP_FOLDER = "D:\backup\db" #백업할 경로
$dbuser = "디비계정"
$dbpass = "디비암호"
$dbname = "디비이름"
$BACKUPDATE = Get-Date -Format FileDate #현재날짜

cmd /c " `"$MYSQL_PATH`" -u $dbuser -p$dbpass $dbname > $BACKUP_FOLDER$BACKUPDATE.sql "
Compress-Archive -Path $BACKUP_FOLDER$BACKUPDATE.sql -DestinationPath $BACKUP_FOLDER$BACKUPDATE.zip
Remove-Item -Path $BACKUP_FOLDER$BACKUPDATE.sql

#내용 끝

 

 

#파워셸에서 스케쥴러를 등록한다.
$Trigger= New-ScheduledTaskTrigger -At 01:00am –Daily #새벽 1시에 실행되는 스케쥴 트리거를 만든다.
$User= "NT AUTHORITY\SYSTEM" # 실행할 유저
$Action= New-ScheduledTaskAction -Execute "PowerShell.exe" -Argument "D:\backup.ps1" # 실행 대상 스크립트
Register-ScheduledTask -TaskName "MYSQL BACKUP" -Trigger $Trigger -User $User -Action $Action -RunLevel Highest –Force # 실행할 태스크의 이름

 

#등록상태를 확인한다.
Get-ScheduledTask | Where-Object {$_.TaskName -match "MYSQL"}

 

 

 

작업스케쥴러에서도 잘 등록되었음을 확인 할 수 있다.

 

+ Recent posts