Kaip sukurti atsarginę kopiją ir atkurti „MySQL“/„MariaDB“ duomenų bazes „Linux“.
Šiame straipsnyje pateikiami keli praktiniai pavyzdžiai, kaip atlikti įvairias MySQL/MariaDB duomenų bazių atsargines kopijas naudojant komandą mysqldump, taip pat pamatysime, kaip jas atkurti naudojant mysql ir mysqlimport komandos Linux.
mysqldump yra komandinės eilutės kliento programa, ji naudojama vietinėms arba nuotolinėms MySQL duomenų bazėms arba duomenų bazių rinkiniams, kad būtų sukurtos atsarginės kopijos, į vieną vientisą failą.
Manome, kad MySQL jau įdiegėte Linux sistemoje su administratoriaus teisėmis ir manome, kad jau turite šiek tiek žinių apie MySQL .
Jei nesate įdiegę MySQL arba neturite kontakto su MySQL, skaitykite toliau pateiktus straipsnius.
- Kaip įdiegti „MySQL“ paskirstytuose RHEL pagrindu
- Kaip įdiegti „MySQL“ „Rocky Linux“ ir „AlmaLinux“.
- Kaip įdiegti „MySQL“ „Ubuntu Linux“.
- Kaip įdiegti „MySQL“ „Debian“.
- 20 MySQL (Mysqladmin) komandų, skirtų duomenų bazės administravimui sistemoje Linux
- 12 MySQL/MariaDB saugos geriausios praktikos, skirtos Linux
Kaip sukurti atsarginę „MySQL“ duomenų bazės kopiją „Linux“?
Norint sukurti MySQL duomenų bazių arba duomenų bazių atsarginę kopiją, duomenų bazė turi egzistuoti duomenų bazės serveryje ir turėti prieigą prie jos. Komandos formatas būtų toks.
mysqldump -u [username] –p[password] [database_name] > [dump_file.sql]
Minėtos komandos parametrai yra tokie.
- [naudotojo vardas] : galiojantis MySQL naudotojo vardas.
- [slaptažodis] : galiojantis naudotojo MySQL slaptažodis.
- [duomenų bazės_pavadinimas] : galiojantis duomenų bazės pavadinimas, kurio atsarginę kopiją norite sukurti.
- [dump_file.sql]: atsarginės kopijos iškelties failo, kurį norite sugeneruoti, pavadinimas.
Kaip sukurti vienos MySQL duomenų bazės atsarginę kopiją?
Norėdami sukurti atsarginę vienos duomenų bazės kopiją, naudokite komandą taip. Komanda iškels duomenų bazės [rsyslog] struktūrą su duomenimis į vieną iškelties failą, pavadintą rsyslog.sql.
mysqldump -u root -ptecmint rsyslog > rsyslog.sql
Kaip sukurti atsargines kelių MySQL duomenų bazių kopijas?
Jei norite sukurti kelių duomenų bazių atsargines kopijas, paleiskite šią komandą. Ši pavyzdinė komanda sukuria atsarginę duomenų bazių [rsyslog, syslog] struktūros ir duomenų kopiją į vieną failą, pavadintą rsyslog_syslog.sql.
mysqldump -u root -ptecmint --databases rsyslog syslog > rsyslog_syslog.sql
Kaip sukurti visų MySQL duomenų bazių atsarginę kopiją?
Jei norite sukurti atsarginę visų duomenų bazių kopiją, naudokite šią komandą su parinktimi –visi duomenų bazė. Ši komanda sukuria atsargines visų duomenų bazių kopijas su jų struktūra ir duomenimis į failą, pavadintą all-databases.sql.
mysqldump -u root -ptecmint --all-databases > all-databases.sql
Kaip sukurti tik MySQL duomenų bazės struktūros atsarginę kopiją?
Jei norite tik duomenų bazės struktūros atsarginės kopijos be duomenų, komandoje naudokite parinktį –no-data. Toliau pateikta komanda eksportuoja duomenų bazę [rsyslog] Struktūra į failą rsyslog_structure.sql.
mysqldump -u root -ptecmint -–no-data rsyslog > rsyslog_structure.sql
Kaip sukurti tik „MySQL“ duomenų bazės duomenų atsarginę kopiją?
Norėdami sukurti atsarginę duomenų bazės duomenų be struktūros kopiją, su komanda naudokite parinktį –no-create-info. Ši komanda perkelia duomenų bazę [rsyslog] duomenis į failą rsyslog_data.sql.
mysqldump -u root -ptecmint --no-create-db --no-create-info rsyslog > rsyslog_data.sql
Kaip sukurti atsarginę vienos duomenų bazės lentelės kopiją?
Naudodami toliau pateiktą komandą galite pasidaryti vienos lentelės arba konkrečių duomenų bazės lentelių atsarginę kopiją. Pavyzdžiui, ši komanda sukuria tik wp_posts lentelės atsarginę kopiją iš duomenų bazės wordpress.
mysqldump -u root -ptecmint wordpress wp_posts > wordpress_posts.sql
Kaip sukurti atsargines kelių duomenų bazės lentelių kopijas?
Jei norite iš duomenų bazės pasidaryti kelių ar tam tikrų lentelių atsarginę kopiją, kiekvieną lentelę atskirkite tarpu.
mysqldump -u root -ptecmint wordpress wp_posts wp_comments > wordpress_posts_comments.sql
Kaip sukurti atsarginę nuotolinės MySQL duomenų bazės kopiją
Toliau pateikta komanda perkelia nuotolinio serverio [172.16.25.126] duomenų bazės [galery] atsarginę kopiją į vietinį serverį.
mysqldump -h 172.16.25.126 -u root -ptecmint gallery > gallery.sql
Kaip atkurti MySQL duomenų bazę?
Aukščiau pateiktame vadove matėme, kaip sukurti tik duomenų bazių, lentelių, struktūrų ir duomenų atsargines kopijas, dabar pamatysime, kaip juos atkurti naudojant šį formatą.
# mysql -u [username] –p[password] [database_name] < [dump_file.sql]
Kaip atkurti vieną MySQL duomenų bazę
Norėdami atkurti duomenų bazę, turite sukurti tuščią duomenų bazę tiksliniame kompiuteryje ir atkurti duomenų bazę naudodami komandą msyql. Pavyzdžiui, ši komanda atkurs rsyslog.sql failą į rsyslog duomenų bazę.
mysql -u root -ptecmint rsyslog < rsyslog.sql
Jei norite atkurti duomenų bazę, kuri jau yra tiksliniame kompiuteryje, turėsite naudoti komandą mysqlimport.
mysqlimport -u root -ptecmint rsyslog < rsyslog.sql
Taip pat galite atkurti duomenų bazių lenteles, struktūras ir duomenis. Jei jums patiko šis straipsnis, pasidalykite juo su draugais.