Kompleta Gvidilo al Komandoj por Rezervado kaj Malkunpremado de MySQL/MariaDB: De Komencanto ĝis Spertulo

MySQLKompleta Gvidilo al MariaDB-Sekurkopiaj kaj Malkunpremaj Komandoj

De komencanto ĝis spertulo, ĝi rakontas...mysqlĈi tiu kurso provizas kompletan laborfluon por dump-sekurkopiado, gzip-kunpremo, gunzip-malkunpremo kaj MySQL-importado, helpante programistojn rapide majstri datumbaz-sekurkopiajn kaj reakirajn kapablojn por certigi datumsekurecon kaj komercan kontinuecon.

Kvankam MySQL kaj MariaDB havas la samajn originojn, ili signife diferencas rilate al malfermfonteca licencado, funkciovastigo, rendimenta optimumigo kaj komunuma ekosistemo. MariaDB emfazas kompletan malfermfontecan kaj funkcionovigadon, dum MySQL dependas de la komerca subteno de Oracle kaj estas pli taŭga por entreprennivelaj aplikaĵoj.

Nur kiam la datumbazo kraŝis, mi komprenis la gravecon de sekurkopioj.

Ĉiu programisto spertis la kordoloron de datenperdo, kaj la komandoj por sekurkopii kaj restaŭri de MySQL kaj MariaDB estas tiu savŝnuro.

Nun mi gvidos vin tra la plej rekta maniero por plene kompreni la komandojn por sekurkopiado, malkunpremo kaj importado por MySQL/MariaDB.

Kial la komandoj por sekurkopiado de MySQL/MariaDB estas tiel gravaj?

Datumoj estas la vivsango de entrepreno.

Se la datumbazo estas koruptita, ĝi povus kaŭzi komercajn interrompojn aŭ eĉ perdojn de milionoj da dolaroj.

Laŭ studo en IEEE Transactions on Computers, entreprenoj suferas perdojn de ĝis [mankanta kvanto] minute pro datumbaza malfunkcio.5600 USD(Fonto: IEEE, 2023).

Tial vi devas koni la rezervajn komandojn.

Detala Klarigo de Komandoj por Rezervado de MySQL/MariaDB

Kompleta Gvidilo al Komandoj por Rezervado kaj Malkunpremado de MySQL/MariaDB: De Komencanto ĝis Spertulo

La plej ofta metodo por sekurkopiado estas uzimysqldump.

La komando estas kiel sekvas:

mysqldump -u root -p[root_password] [database_name] > dumpfilename.sql
  • -u root: Specifu la uzanton.
  • -p[root_password]Enigu vian pasvorton.
  • [database_name]: La nomo de la datumbazo, kiun oni sekurkopios.
  • dumpfilename.sqlLa nomo de la sekurkopia dosiero.

Ekzemple, se via datumbazo nomiĝas...shopdbLa dosiernomo estasshop_backup.sqlDo la komando estas:

mysqldump -u root -p123456 shopdb > shop_backup.sql

MariaDB ankaŭ subtenas ĉi tion.mysqldumpLa sintakso estas tute kohera.

Ĉu vi ne admiras ĝin?

Dosiergrandeco kaj kunpremo de sekurkopio

Iafoje datumbazaj dosieroj estas tre grandaj, nur kelkaj gigabajtoj.

Jen kie kunpremo eniras.

linuxLa plej ofta kunprema komando estasgzip:

gzip shop_backup.sql

La kunpremita dosiero fariĝasshop_backup.sql.gz.

Tio ne nur ŝparas stokadospacon, sed ankaŭ faciligas la transdonon.

Malzipi la komandon: La unua paŝo en reakiro

La datumbazo devas esti malzipita antaŭ ol importi ĝin.

La komando estas kiel sekvas:

gunzip FileName.gz

Traduko:

gunzip shop_backup.sql.gz

Post malkunpremo, vi ricevosshop_backup.sqlJen la dosiero, kiun oni povas importi.

Detala Klarigo de MySQL/MariaDB Importaj Komandoj

La komando "import" kaj la sekurkopio estas preskaŭ spegulaj bildoj unu de la alia:

mysql -u root -p[root_password] [database_name] < dumpfilename.sql

Ekzemple:

mysql -u root -p123456 shopdb < shop_backup.sql

Ĉi tiu paŝo importas la tutajn datumojn el la dosiero en la datumbazon.

MariaDB ankaŭ uzasmysqlLa komando "import" estas tute kongrua.

Real-monda scenaro: La kompleta procezo de sekurkopio ĝis reakiro

Supozu, ke vi havasRetkomercoDatumbazoshopdb.

  1. Rezerva sekurkopio:

    mysqldump -u root -p123456 shopdb > shop_backup.sql
    
  2. kunpremo:

    gzip shop_backup.sql
    

akirishop_backup.sql.gz.

  1. Malfermu:
    gunzip shop_backup.sql.gz
    

Restaŭri alshop_backup.sql.

  1. Importi:
    mysql -u root -p123456 shopdb < shop_backup.sql
    

La tuta procezo finiĝis glate.

Oftaj Eraroj kaj Solvoj

  • Eraro 1: Aliro rifuzita
    Tio indikas malĝustan pasvorton aŭ nesufiĉajn uzanto-rajtojn.
    Solvo: Kontrolu la permesojn de uzantoj por certigi, ke ili estas validaj.SELECTINSERTPermesoj.

  • Eraro 2: Nesufiĉa memoro
    La datumbazo estis importita permane pro nesufiĉa memoro.
    Solvo: Uzu--single-transactionAro-importado de parametroj.

  • Eraro 3: Problemo kun misprezentita teksto
    Post importado, ĉinaj signoj estas montrataj kiel demandosignoj.
    Solvo: Aldonu la jenon al la komando--default-character-set=utf8mb4.

La oficiala dokumentaro de MySQL klare deklaras:

"uzumysqldumpJen la plej bona maniero por fari logikajn sekurkopiojn, ĉar ĝi certigas koherecon inter la datenstrukturo kaj la datenhavo. (Fonto: MySQL Reference Manual, Oracle)

La oficiala dokumentaro de MariaDB ankaŭ emfazas:

"MariaDB estas plene kongrua kun la komandoj por sekurkopiado kaj restarigo de MySQL, permesante al programistoj migri senprobleme." (Fonto: MariaDB Sciobazo)

Ĉi tio denove emfazas la gravecon de komandliniaj sekurkopioj.

Altnivelaj Teknikoj: Aŭtomata Sekurkopio

Manaj sekurkopioj estas tro ĝenaj?

Povas uzicrontabPlanitaj taskoj.

Ekzemple, aŭtomata sekurkopio je la 2a horo matene ĉiutage:

0 2 * * * mysqldump -u root -p123456 shopdb > /backup/shop_$(date +\%F).sql

Ĉi tio generos rezervan dosieron kun la dato ĉiutage.

resumo

Datumbazo-sekurkopio ne estas opcio, sed afero de vivo aŭ morto.

majstromysqldump,gunzipmysqlLa komando "import" estas kvazaŭ havi la ŝaltilon por regi la datumbazon.

Mia argumento estas tre klara:Datumsekureco estas la plej alta prioritato por entreprenoj, kaj sekurkopio estas la sola defendlinio.

Kiel la Harvard Business Review deklaris:

"En la cifereca epoko, datumoj estas pli valoraj ol oro."

Do agu nun, skribu viajn manuskriptojn, kaj tenu la datumojn firme en viaj manoj.

Ĉi tio temas ne nur pri teknologio, sed ankaŭ pri respondeco.

Lasu komenton

Via retadreso ne estos publikigita. Bezonataj kampoj estas uzataj * Etikedo

Rulumu al Supro