cPanel mentés készítése, visszaállítása
Tartalomjegyzék:
- Mysqldump Command Syntax
- Biztonsági másolat készítése egyetlen MySQL adatbázisból
- Több MySQL adatbázis biztonsági mentése
- Az összes MySQL adatbázis biztonsági mentése
- Biztonsági másolat készítése az összes MySQL adatbázisról a fájlok elkülönítésére
- Hozzon létre egy tömörített MySQL adatbázis-biztonsági mentést
- Hozzon létre biztonsági másolatot az időbélyegzővel
- MySQL dump visszaállítása
- Visszaállíthat egyetlen MySQL adatbázist a teljes MySQL dumpból
- MySQL adatbázis exportálása és importálása egyetlen parancsban
- Automatizálja a biztonsági mentéseket a Cron segítségével
- Következtetés
Ez az oktatóanyag elmagyarázza, hogyan lehet biztonsági másolatot készíteni és visszaállítani a MySQL vagy a MariaDB adatbázisokat a parancssorból a mysqldump segédprogrammal.
A mysqldump segédprogrammal létrehozott biztonsági mentési fájlok alapvetően SQL utasítások halmaza, amelyek felhasználhatók az eredeti adatbázis újbóli létrehozására. A mysqldump parancs fájlokat generálhat CSV és XML formátumban is.
A mysqldump segédprogrammal is átviheti MySQL adatbázisát egy másik MySQL szerverre.
Mysqldump Command Syntax
Mielőtt megvizsgálnánk a mysqldump parancs használatát, kezdjük meg az alapszintaxis áttekintésével.
A mysqldump segédprogram kifejezései a következők:
mysqldump > file.sql
-
options
- a mysqldump optionsfile.sql
- A dump (biztonsági másolat) fájl
A mysqldump parancs használatához a MySQL szervernek hozzáférhetőnek és futónak kell lennie.
Biztonsági másolat készítése egyetlen MySQL adatbázisból
A mysqldump eszköz leggyakoribb használata egyetlen adatbázis biztonsági mentése.
Például, ha biztonsági másolatot készít az adatbázis_neve
database_name
, a felhasználói
root
felhasználásával, és elmentheti az adatbázis_neve.sql nevű fájlba, akkor a következő parancsot futtassa:
mysqldump -u root -p database_name > database_name.sql
A rendszer felkéri a gyökérjelszó megadására. A sikeres hitelesítés után a dump folyamat megkezdődik. Az adatbázis méretétől függően a folyamat némi időt vehet igénybe.
mysqldump database_name > database_name.sql
Több MySQL adatbázis biztonsági mentése
Több MySQL adatbázis biztonsági másolatának készítéséhez egy paranccsal a
--database
opciót kell használni, majd a biztonsági másolatot
--database
adatbázisok listáját. Az egyes adatbázisneveket szóközzel kell elválasztani.
mysqldump -u root -p --databases database_name_a database_name_b > databases_a_b.sql
A fenti parancs létrehoz egy dump fájlt, amely mindkét adatbázist tartalmazza.
Az összes MySQL adatbázis biztonsági mentése
Használja a
--all-databases
beállítást az összes MySQL adatbázis biztonsági
--all-databases
:
mysqldump -u root -p --all-databases > all_databases.sql
Ugyanúgy, mint az előző példában, a fenti parancs egyetlen dump fájlt hoz létre, amely tartalmazza az összes adatbázist.
Biztonsági másolat készítése az összes MySQL adatbázisról a fájlok elkülönítésére
A
mysqldump
segédprogram nem nyújt lehetőséget az összes adatbázis biztonsági mentésére fájlok különválasztására, de ezt egyszerű bash
FOR
hurok segítségével elérhetjük:
for DB in $(mysql -e 'show databases' -s --skip-column-names); do mysqldump $DB > "$DB.sql"; done
A fenti parancs különálló dump fájlt hoz létre minden adatbázishoz, az adatbázis nevét használja fájlnévként.
Hozzon létre egy tömörített MySQL adatbázis-biztonsági mentést
Ha az adatbázis mérete nagyon nagy, akkor érdemes a kimenetet tömöríteni. Ehhez egyszerűen csatolja a kimenetet a
gzip
segédprogramhoz, és irányítsa át egy fájlba az alább látható módon:
mysqldump database_name | gzip > database_name.sql.gz
Hozzon létre biztonsági másolatot az időbélyegzővel
mysqldump database_name > database_name-$(date +%Y%m%d).sql
A fenti parancs létrehoz egy fájlt a következő formátumban:
database_name-20180617.sql
MySQL dump visszaállítása
A MySQL fájlt visszaállíthatja a
mysql
eszköz segítségével. A parancs általános szintaxisa a következő:
mysqld database_name < file.sql
A legtöbb esetben létre kell hoznia egy adatbázist az importálásra. Ha az adatbázis már létezik, először törölnie kell azt.
A következő példában az első parancs egy adatbázis_nevet tartalmazó
database_name
hoz létre, majd az
database_name.sql
dumpot importálja bele:
mysql -u root -p -e "create database database_name";
mysql -u root -p database_name < database_name.sql
Visszaállíthat egyetlen MySQL adatbázist a teljes MySQL dumpból
mysql --one-database database_name < all_databases.sql
MySQL adatbázis exportálása és importálása egyetlen parancsban
Ahelyett, hogy dömpingelt fájlt hozna létre az egyik adatbázisból, majd a biztonsági másolatot importálja egy másik MySQL adatbázisba, a következő egysoros felhasználhatja:
mysqldump -u root -p database_name | mysql -h remote_host -u root -p remote_database_name
A fenti parancs átadja a kimenetet a mysql kliensnek a távoli gazdagépen, és importálja azt egy
remote_database_name
nevű adatbázisba. A parancs futtatása előtt ellenőrizze, hogy az adatbázis már létezik-e a távoli szerveren.
Automatizálja a biztonsági mentéseket a Cron segítségével
Az adatbázisok biztonsági mentési folyamatának automatizálása ugyanolyan egyszerű, mint egy cron job létrehozása, amely a mysqldump parancsot megadott időpontban futtatja.
A MySQL adatbázis automatikus biztonsági másolatának cronjob használatával történő beállításához kövesse az alábbi lépéseket:
-
Hozzon létre egy
.my.cnf
nevű fájlt a felhasználói otthoni könyvtárban:sudo nano ~/.my.cnf
Másolja és illessze be a következő szöveget a.my.cnf fájlba.
user = dbuser password = dbpasswd
Ne felejtsd el kicserélni a
dbuser
és adbpasswd
az adatbázis felhasználójára és a jelszavára.Korlátozza a hitelesítő adatok fájljának engedélyeit, hogy csak a felhasználó férjen hozzá ehhez:
chmod 600 ~/.my.cnf
Hozzon létre egy könyvtárat a biztonsági mentések tárolására:
mkdir ~/db_backups
Nyissa meg a felhasználói crontab fájlt:
crontab -e
Adja hozzá a következő cron feladatot, amely minden nap 3 óráig biztonsági másolatot készít a
mydb
adatbázismydb
:0 3 * * * /usr/bin/mysqldump -u dbuser mydb > /home/username/db_backups/mydb-$(date +%Y%m%d).sql
Ne felejtsd el a
username
a tényleges felhasználónévvel cserélni.
Hozzon létre egy újabb cronjob-ot a 30 naposnál régebbi mentések törléséhez:
find /path/to/backups -type f -name "*.sql" -mtime +30 -delete
Természetesen a parancsot a biztonsági mentési hely és a fájlnevek szerint kell beállítania. Ha többet szeretne tudni a find parancsról, olvassa el a Hogyan keressünk fájlokat Linuxban a parancssori útmutató segítségével című részt.
Következtetés
Ez az oktatóanyag csak az alapokat tartalmazza, de jó kezdés lehet mindenkinek, aki meg akarja tanulni, hogyan kell a mysqldump segédprogrammal létrehozni és visszaállítani a MySQL adatbázisokat a parancssorból.
Ellenőrizheti azt is, hogy miként állíthat vissza egy MySQL root jelszót arra az esetre, ha elfelejtette.
mysql mariadb backup mysqldumpBiztonsági és vezeték nélküli hálózati profilok biztonsági mentése és visszaállítása Windows alatt
Ismerje meg a Windows WiFi vezeték nélküli hálózati profiljának biztonsági mentését és visszaállítását a netsh segítségével. A Windows 7/8 egy beépített funkcióval rendelkezik, amely lehetővé teszi.
Az Android alkalmazások biztonsági mentése / visszaállítása titán biztonsági másolat segítségével
Tudja meg, hogyan lehet biztonsági másolatot készíteni és visszaállítani az Android-alkalmazásokat a Titanium biztonsági másolat segítségével.
Az értesítések mentése és biztonsági mentése az androidban
Az Android készülékek értesítései nagyon bosszantóak lehetnek. De 2 nagyszerű alkalmazás segítségével menthet és menthet is azokat. Itt van, hogyan.