कुछ क्लाइंट ने हमसे पूछा कि क्या आप WHM में केवल डेटाबेस बैकअप सेट कर सकते हैं। कुछ के लिए, यह अजीब लगेगा, लेकिन ऐसे उपयोगकर्ता हैं जो इस तरह की सुविधा चाहते हैं।
आप WHM->बैकअप->बैकअप कॉन्फ़िगरेशन . के माध्यम से WHM बैकअप सेटिंग्स तक पहुंच सकते हैं . दुर्भाग्य से, इस समय केवल उपयोगकर्ताओं के डेटाबेस का बैकअप लेने का कोई विकल्प नहीं है।
अपडेट:20 अप्रैल, 2020 तक, यह cPanel अनुरोध “खुली चर्चा” स्थिति में है। आप टिप्पणी कर सकते हैं और cPanel फ़ीचर अनुरोध साइट पर वोट कर सकते हैं
आपके पास क्या उपाय हैं? आप बैश कमांड का उपयोग कर सकते हैं। सर्वर पर सभी डेटाबेस को .gz संग्रह में बैकअप करने के लिए एक कमांड है:
root@www [/backup]# mysqldump --all-databases | gzip > /backup/$(date +%Y-%h-%d)-alldatabases.sql.gz
यह सर्वर पर सभी MySQL/MariaDB डेटाबेस के साथ एक बैकअप बनाएगा। फ़ाइल नाम में वर्तमान तिथि शामिल होगी। (जैसे 2018-सितंबर-25-alldatabases.sql.gz) आप अपनी आवश्यकताओं के अनुसार कमांड को संशोधित कर सकते हैं। आप इसे विशिष्ट समय पर चलाने के लिए क्रॉन जॉब भी बना सकते हैं।
एक और संभावना सर्वर पर प्रत्येक डेटाबेस को व्यक्तिगत रूप से बैकअप करना है। इसके लिए backupdbs.sh . जैसी नई फाइल बनाएं फ़ाइल की सामग्री है:
#!/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
स्क्रिप्ट चलाने के लिए:
root@www [/backup]# perl backupdbs.sh
पिछले मामले की तरह, आप अपनी आवश्यकताओं के अनुसार स्क्रिप्ट को समायोजित भी कर सकते हैं और एक क्रॉन जॉब बना सकते हैं।