아래 내용을 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"}

 

 

 

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

 

'설정' 카테고리의 다른 글

Toast Grid 몇 가지 팁  (0) 2021.05.22
NSwagger 툴체인의 경로  (0) 2021.05.16
파워셸로 MYSQL(MariaDB) 백업스크립트 작성하기  (0) 2021.03.11
ffmpeg 사용 명령어  (0) 2020.12.07
hyper 터미널 툴 (3.0.2) 실행이 안될때  (0) 2020.10.21
certbot renew 불가시  (0) 2020.10.18

mysql 최신버전에서 암호방식이 바뀌어서 그렇습니다. 

mysql.dll을 포함한 mysql을 설치하여 dll을 heidisql로 복사하는 방법도 있는데, mysql을 따로 설치하기 싫어서 아래 방법으로 해결했습니다.


docker ps 해서, CONTAINER ID를 확인입니다, 화면에서는 f0c69ac1c8dc 입니다.



docker exec -it [CONTAINER_ID] bash 하여 배쉬쉘로 접근합니다. 컨테이너 아이디는 구분되는 첫글자들만 입력해도 됩니다.

그리고 mysql -uroot -p[암호] mysql 하여 mysql로 접속합니다.




ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '암호';

flush privileges;

합니다..




+ Recent posts