Hvernig á að taka öryggisafrit og endurheimta MySQL/MariaDB gagnagrunna í Linux


Þessi grein sýnir þér nokkur hagnýt dæmi um hvernig á að framkvæma ýmsar öryggisafrit af MySQL/MariaDB gagnagrunnum með mysqldump skipuninni og einnig munum við sjá hvernig á að endurheimta þær með hjálp mysql og mysqlimport skipunarinnar í Linux.

mysqldump er skipanalínubiðlaraforrit, það er notað til að henda staðbundnum eða ytri MySQL gagnagrunnum eða söfnum gagnagrunna til öryggisafrits í eina flata skrá.

Við gerum ráð fyrir að þú hafir nú þegar MySQL uppsett á Linux kerfinu með stjórnunarréttindi og við teljum að þú hafir nú þegar smá þekkingu á MySQL.

Ef þú ert ekki með MySQL uppsett eða hefur enga útsetningu fyrir MySQL skaltu lesa greinarnar okkar hér að neðan.

  • Hvernig á að setja upp MySQL á RHEL-undirstaða dreifingar
  • Hvernig á að setja upp MySQL á Rocky Linux og AlmaLinux
  • Hvernig á að setja upp MySQL í Ubuntu Linux
  • Hvernig á að setja upp MySQL á Debian
  • 20 MySQL (Mysqladmin) skipanir fyrir gagnagrunnsstjórnun í Linux
  • 12 MySQL/MariaDB öryggisaðferðir fyrir Linux

Hvernig á að taka öryggisafrit af MySQL gagnagrunni í Linux?

Til að taka öryggisafrit af MySQL gagnagrunnum eða gagnagrunnum verður gagnagrunnurinn að vera til á gagnagrunnsþjóninum og þú verður að hafa aðgang að honum. Snið skipunarinnar væri.

# mysqldump -u [username] –p[password] [database_name] > [dump_file.sql]

Færibreytur nefndrar skipunar eru sem hér segir.

  • [notendanafn] : Gilt MySQL notendanafn.
  • [lykilorð] : Gilt MySQL lykilorð fyrir notandann.
  • [database_name] : Gilt gagnagrunnsheiti sem þú vilt taka öryggisafrit.
  • [dump_file.sql]: Heiti öryggisafritaskrárinnar sem þú vilt búa til.

Til að taka öryggisafrit af einum gagnagrunni skaltu nota skipunina sem hér segir. Skipunin mun henda gagnagrunninum [rsyslog] uppbyggingu með gögnum á eina dump skrá sem kallast rsyslog.sql.

# mysqldump -u root -ptecmint rsyslog > rsyslog.sql

Ef þú vilt taka öryggisafrit af mörgum gagnagrunnum skaltu keyra eftirfarandi skipun. Eftirfarandi dæmi skipun tekur öryggisafrit af gagnagrunnum [rsyslog, syslog] uppbyggingu og gögnum í eina skrá sem kallast rsyslog_syslog.sql.

# mysqldump -u root -ptecmint --databases rsyslog syslog > rsyslog_syslog.sql

Ef þú vilt taka öryggisafrit af öllum gagnagrunnum, notaðu þá eftirfarandi skipun með valkostinum –all-database. Eftirfarandi skipun tekur afrit af öllum gagnagrunnum með uppbyggingu þeirra og gögnum í skrá sem kallast all-databases.sql.

# mysqldump -u root -ptecmint --all-databases > all-databases.sql

Ef þú vilt aðeins taka öryggisafrit af gagnagrunnsbyggingunni án gagna, notaðu þá valkostinn –no-data í skipuninni. Neðangreind skipun flytur út gagnagrunn [rsyslog] uppbyggingu í skrána rsyslog_structure.sql.

# mysqldump -u root -ptecmint -–no-data rsyslog > rsyslog_structure.sql

Til að taka öryggisafrit af gögnum án uppbyggingar notaðu valkostinn –no-create-info með skipuninni. Þessi skipun tekur gagnagrunninn [rsyslog] Gögn inn í skrána rsyslog_data.sql.

# mysqldump -u root -ptecmint --no-create-db --no-create-info rsyslog > rsyslog_data.sql

Með skipuninni hér að neðan geturðu tekið öryggisafrit af einni töflu eða tilteknum töflum í gagnagrunninum þínum. Til dæmis tekur eftirfarandi skipun aðeins afrit af wp_posts töflunni úr gagnagrunninum wordpress.

# mysqldump -u root -ptecmint wordpress wp_posts > wordpress_posts.sql

Ef þú vilt taka öryggisafrit af mörgum eða ákveðnum töflum úr gagnagrunninum skaltu aðskilja hverja töflu með plássi.

# mysqldump -u root -ptecmint wordpress wp_posts wp_comments > wordpress_posts_comments.sql

Skipunin hér að neðan tekur afrit af ytri netþjóni [172.16.25.126] gagnagrunni [gallerí] inn á staðbundinn netþjón.

# mysqldump -h 172.16.25.126 -u root -ptecmint gallery > gallery.sql

Hvernig á að endurheimta MySQL gagnagrunn?

Í kennslunni hér að ofan höfum við séð hvernig á að taka öryggisafrit af gagnagrunnum, töflum, mannvirkjum og gögnum, nú munum við sjá hvernig á að endurheimta þau með eftirfarandi sniði.

# # mysql -u [username] –p[password] [database_name] < [dump_file.sql]

Til að endurheimta gagnagrunn verður þú að búa til tóman gagnagrunn á markvélinni og endurheimta gagnagrunninn með msyql skipuninni. Til dæmis mun eftirfarandi skipun endurheimta rsyslog.sql skrána í rsyslog gagnagrunninn.

# mysql -u root -ptecmint rsyslog < rsyslog.sql

Ef þú vilt endurheimta gagnagrunn sem þegar er til á vélinni sem þú miðar á, þá þarftu að nota mysqlimport skipunina.

# mysqlimport -u root -ptecmint rsyslog < rsyslog.sql

Á sama hátt geturðu einnig endurheimt gagnagrunnstöflur, mannvirki og gögn. Ef þér líkaði við þessa grein, deildu henni þá með vinum þínum.