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.