Vissa klienter frågade oss om du bara kan ställa in databassäkerhetskopior i WHM. För vissa kommer detta att låta konstigt, men det finns användare som vill ha en sådan funktion.
Du kan komma åt inställningarna för WHM-säkerhetskopiering via WHM->Backup->Backup Configuration . Tyvärr finns det för närvarande inget alternativ att endast säkerhetskopiera användarnas databaser.
Uppdatering:Från och med den 20 april 2020 är denna cPanel-begäran i statusen "Öppen diskussion". Du kan kommentera och rösta på cPanel Feature Requests Site
Vilka lösningar har du? Du kan använda bash-kommandon. Ett kommando för att säkerhetskopiera alla databaser på servern till ett .gz-arkiv är:
root@www [/backup]# mysqldump --all-databases | gzip > /backup/$(date +%Y-%h-%d)-alldatabases.sql.gz
Detta kommer att skapa en säkerhetskopia med alla MySQL/MariaDB-databaser på servern. Filnamnet kommer att inkludera det aktuella datumet. (t.ex. 2018-sep-25-alldatabases.sql.gz) Du kan ändra kommandot efter dina behov. Du kan också skapa ett cron-jobb för att köra det vid specifika tidpunkter.
En annan möjlighet är att säkerhetskopiera varje databas på servern individuellt. Skapa en ny fil som backupdbs.sh för detta Innehållet i filen är:
#!/bin/bash
mysql=/usr/bin/mysql
mysqldump=/usr/bin/mysqldump
date=$(date +%Y-%h-%d)
backupdir="/backup"
mkdir -p $backupdir/$date
databases=`$mysql -e "SHOW DATABASES;" | grep -Ev "(Database|information_schema)"`
for db in $databases; do
echo $db
$mysqldump --opt --databases $db | gzip > "$backupdir/$date/$db.sql.gz"
done
Så här kör du skriptet:
root@www [/backup]# perl backupdbs.sh
Som i föregående fall kan du även justera skriptet efter dina behov och skapa ett cron-jobb.