]> git.p6c8.net - psmysqlbackup.git/blobdiff - psmysqlbackup.ps1
Added comments, especially for config
[psmysqlbackup.git] / psmysqlbackup.ps1
index f544cca7efeb2a738ea8692da91147a7edeb04b5..e7b2f5fbfd43e416beeb9397a207656a7df4dbf2 100644 (file)
@@ -8,19 +8,30 @@
 
 # Config
 
 
 # Config
 
+# MySQL host
 $configMysqlHost = "localhost"
 $configMysqlHost = "localhost"
+# Port of MySQL host
 $configMysqlPort = 3306
 $configMysqlPort = 3306
+# MySQL user using to connect to MySQL
 $configMysqlUser = "backup"
 $configMysqlUser = "backup"
+# Password for MySQL user
 $configMysqlPassword = "backup"
 
 $configMysqlPassword = "backup"
 
+# Path to MySQL CLI program
 $configMysqlCli = "C:\Program Files\MariaDB 10.5\bin\mysql.exe"
 $configMysqlCli = "C:\Program Files\MariaDB 10.5\bin\mysql.exe"
+# Path to mysqldump CLI program
 $configMysqldumpCli = "C:\Program Files\MariaDB 10.5\bin\mysqldump.exe"
 
 $configMysqldumpCli = "C:\Program Files\MariaDB 10.5\bin\mysqldump.exe"
 
+# Directory where to store the backups
 $configBackupDir = "backup"
 $configBackupDir = "backup"
+# Number of backups to keep, set to 0 to keep all backups
 $configRotate = 7
 
 $configRotate = 7
 
+# Databases to backup, leave empty to backup all databases
 $configDbBackup = @()
 $configDbBackup = @()
+# If $configDbBackup is empty, don't backup the databases defined here
 $configDbExclude = @("test")
 $configDbExclude = @("test")
+# If $configDbBackup is empty, don't backup the databases matching these patterns
 $configDbExcludePattern = @()
 
 # End of config
 $configDbExcludePattern = @()
 
 # End of config
@@ -69,6 +80,7 @@ $defaultDbExclude = @("information_schema", "performance_schema")
 
 $currDaytime = Get-Date -format "yyyyMMdd-HHmmss"
 
 
 $currDaytime = Get-Date -format "yyyyMMdd-HHmmss"
 
+# Get a list of all databases
 try {
     $databases = Get-Databases | Where-Object {!($_ -in $defaultDbExclude)}
 }
 try {
     $databases = Get-Databases | Where-Object {!($_ -in $defaultDbExclude)}
 }
@@ -78,6 +90,8 @@ catch {
     exit 1
 }
 
     exit 1
 }
 
+# Create a list of databases to backup
+
 $databasesToBackup = @()
 
 if($configDbBackup -and $configDbBackup.count -gt 0) {
 $databasesToBackup = @()
 
 if($configDbBackup -and $configDbBackup.count -gt 0) {
@@ -107,6 +121,7 @@ else {
     }
 }
 
     }
 }
 
+# Iterate over the list of databases and back them up and rotate the backups
 foreach($d in $databasesToBackup) {
     $databaseBackupDir = Join-Path -Path $configBackupDir -ChildPath $d
 
 foreach($d in $databasesToBackup) {
     $databaseBackupDir = Join-Path -Path $configBackupDir -ChildPath $d
 

patrick-canterino.de