Si të konfiguroni telefonat inteligjentë dhe PC. Portali informativ
  • në shtëpi
  • Gabimet
  • Ne hedhim bazën e të dhënave MySQL dhe eksportojmë të dhënat në tastierë. Rivendosja e një hale të bërë nga mysqldump

Ne hedhim bazën e të dhënave MySQL dhe eksportojmë të dhënat në tastierë. Rivendosja e një hale të bërë nga mysqldump

Hidhni dhe rivendosni bazën e të dhënave Të dhënat e MySQLËshtë mjaft e thjeshtë dhe e përshtatshme për ta bërë nga distanca përmes SSH ose direkt përmes tastierës së serverit. Nga distanca, kjo mund të bëhet duke përdorur programet Putty/Kitty. Ju gjithashtu mund të kryeni shembujt e mëposhtëm në Windows duke ekzekutuar vijën e komandës ' cmd'. Më poshtë janë shembuj se si të krijoni deponime të bazës së të dhënave MySQL dhe më pas t'i rivendosni ato nëse është e nevojshme, për shembull për faqen tuaj të internetit, dyqanin online ose ndonjë projekt tjetër.

Krijimi i një baze të dhënash MySQL

Për të ekzekutuar këto komanda, lidheni nga distanca me serverin tuaj nëpërmjet SSH duke përdorur një nga programet e listuara më sipër. Pas lidhjes dhe autorizimit me serverin/hosting, mund të futni komandat më poshtë.

# Rezervoni një bazë të dhënash në skedarin dump_file.sql mysqldump -uroot -p your_base > dump_file.sql # On hale dritareshËshtë më mirë të krijosh një komandë paksa të ndryshme që parandalon # mbishkrimin aksidental të linjave dump për shkak të konvertimit të karaktereve të linjës së re "\r\n" në "\n" mysqldump -uroot -p your_base -r dump_file_utf8.sql # Nëse keni nevojë për kopje rezervë vetëm të tabelave individuale, dhe jo të gjithë bazës së të dhënave # (specifikoni emrat e tabelave të ndara me një hapësirë ​​pas emrit të bazës së të dhënave) mysqldump -uroot -p your_base TABLE1 TABLE2 TABLE3 > dump_file.sql # Nëse keni nevojë të krijoni një kopje rezervë vetëm të bazës së të dhënave struktura pa vetë të dhënat mysqldump -uroot -p -- no-data your_base > dump_file.sql # Rezervoni të gjitha bazat e të dhënave në skedarin aktual_date.gz mysqldump -uroot -p --all_bazat e të dhënave | gzip -c > "data "+%Y-%m-%d"".gz # Rezervimi, ku krijohet një INSERT i veçantë për çdo hyrje # dhe me tregues i qartë kodimi i bazës së të dhënave UTF-8 mysqldump -uroot -p --default-character-set=utf8 your_base --extended-insert=FALSE | gzip -c > "data "+%Y-%m-%d"".gz

# Rezervoni një bazë të dhënash në dump_file.sql

mysqldump - uroot - p your_base > dump_file . sql

# Në Windows është mirë të krijoni një hale me një komandë paksa të ndryshme që parandalon

# mbishkrim i rastësishëm i linjave të grumbulluara për shkak të konvertimit të karaktereve të linjës së re "\r\n" në "\n"

mysqldump - uroot - p your_base - r dump_file_utf8 . sql

# Nëse keni nevojë për kopje rezervë vetëm të tabelave individuale, dhe jo të gjithë bazës së të dhënave

# (tregoni emrat e tabelave të ndara me një hapësirë ​​pas emrit të bazës së të dhënave)

mysqldump - uroot - p your_base TABLE1 TABLE2 TABLE3 > dump_file . sql

# Nëse keni nevojë të bëni kopje rezervë vetëm të strukturës së bazës së të dhënave pa vetë të dhënat

mysqldump - uroot - p -- no - data your_base > dump_file . sql

# Rezervoni të gjitha bazat e të dhënave në skedarin aktual_date.gz

mysqldump - uroot - p -- të gjitha_bazat e të dhënave | gzip - c > "data "+%Y-%m-%d"" . gz

# Rezervimi, ku krijohet një INSERT i veçantë për çdo hyrje

# dhe duke specifikuar në mënyrë eksplicite bazën e të dhënave që kodon UTF-8

mysqldump - uroot - p -- default - karakter - set = utf8 your_base -- extensioned - insert = FALSE | gzip - c > "data "+%Y-%m-%d"" . gz

Në shembullin e mësipërm, programi përdoret për të krijuar një kopje rezervë mysqldump, e cila është përfshirë me mysql. Më poshtë janë parametrat për krijimin e një kopje rezervë të bazës së të dhënave, të cilat do t'i shqyrtojmë më në detaje:

  • -u– parametri specifikon hyrjen që do të përdoret për t'u lidhur me bazën e të dhënave. Në shembull, ne përdorim hyrjen rrënjësore, e cila duhet të specifikohet në këtë parametër pa hapësirë! Si rezultat, duket si -uroot
  • -fq- parametri tregon që ju duhet të vendosni një fjalëkalim për hyrjen e specifikuar. E lamë bosh, si rezultat i së cilës fjalëkalimi do të duhet të futet pasi të shtypni "Enter" gjatë ekzekutimit të komandës. Sidoqoftë, mund të specifikoni fjalëkalimin pikërisht këtu, si në parametrin e hyrjes, pa një hapësirë ​​​​pas -p, megjithatë, kjo metodë nuk është e sigurt, pasi tastiera ruan komandat tuaja në një skedar log dhe nëse nuk e pastroni rregullisht, mund të shihet nga një sulmues.
  • bazën tuaj– në vend të kësaj rreshti në shembull, duhet të specifikoni Emri i vërtetë Baza juaj e të dhënave për të cilën po krijoni një kopje rezervë.
  • > – një operator që tregon drejtimin e veprimit, d.m.th. sikur tregon se do të shkruani nga baza e të dhënave në një skedar.
  • dump_file.sql– ky është emri i skedarit tuaj .slq në të cilin duhet të ruani bazën e të dhënave. Tregohet me një hapësirë ​​pas operatorit ">". Ju mund të specifikoni ndonjë emër tjetër. Për shembull, në mënyrë që sistemi të futet automatikisht në emër koha aktuale, thjesht specifikoni një rresht si:

    "data "+%Y-%m-%d""

    "data "+%Y-%m-%d""


    pas kësaj rreshti në shembull, shtrirja e skedarit tregohet ' .gz'. Si rezultat, një skedar si ' 2014-11-15.gz‘.

    Kujdes! Nëse specifikoni vetëm emrin e skedarit, ai do të ruhet në të njëjtën direktori në lidhje me të cilën po ekzekutoni këtë komandë. Ato. nëse shihni diçka të tillë në vijën e komandës # , Ku root@dvs ky është emri i hyrjes dhe serverit, skedari do të krijohet në drejtori /shtëpi. Për të ndryshuar ruajtjen e skedarit në një shteg tjetër, specifikoni shtegun e plotë për të ruajtur skedarin në vend të emrit, për shembull: /var/www/backup/dump_file.sql.

  • Në shembullin e dytë, në vend të operatorit ' > Përdoret 'operator' | ’, që tregon nevojën për të kryer komandë shtesë gzip me parametrin ' -c' i cili ju lejon të paketoni menjëherë deponinë në një arkiv dhe vetëm atëherë ta ruani atë në një skedar si ' 2014-11-15.gz', siç raportohet nga operatori' > ‘.
  • Parametri -nuk ka të dhëna ju lejon të hidhni vetëm strukturën e bazës së të dhënave pa vetë të dhënat. Mjaft e dobishme në disa raste kur të dhënat nuk janë të nevojshme.
  • Opsione –default-character-set=utf8 Dhe –extended-insert=FALSE. E para ju lejon të specifikoni në mënyrë eksplicite kodimin që përdoret nga kjo bazë të dhënash, duke shmangur kështu ruajtjen e bazës së të dhënave në kodimin e gabuar, në vend të utf8, mund të specifikoni çdo kodim tjetër, për shembull cp1251. Parametri i dytë ju lejon të specifikoni që një komandë e veçantë INSERT duhet të krijohet për çdo rekord gjatë eksportimit. Në disa raste, kjo mund të kërkohet kur të rikthehen pjesërisht të dhënat nga një hale.
  • Rivendosja e një baze të dhënash nga një skedar MySQL Dump

    Tani le të shohim procesin e kundërt të rivendosjes së një baze të dhënash nga një skedar hale. Ky veprim kryhet duke përdorur programin mysql. Le të shohim një shembull menjëherë.

./mysql -u -fq H < db_dump-file

2018-12-04T00:00Z

2018-12-11T00:00Z

Kur krijojmë një skedar hale me mysqldump, ai përmban një skript të madh SQL për të rikrijuar përmbajtjen e bazës së të dhënave. Prandaj, ne e rivendosim atë duke ekzekutuar klientin linja e komandës MySQL:

Mysql -uroot -p

(ku root është emri ynë i përdoruesit të administratorit për MySQL) dhe pas lidhjes me bazën e të dhënave na duhen komanda për të krijuar bazën e të dhënave dhe për të lexuar skedarin:

Krijo bazën e të dhënave new_db; përdorni new_db; \. dumpfile.sql

Detajet do të ndryshojnë në varësi të opsioneve të përdorura gjatë krijimit të skedarit hale.

2018-12-18T00:00Z

Ju vetëm duhet të ekzekutoni këtë:

mysql -p -u< db_backup.dump

Nëse hale përmban shumë baza të të dhënave, duhet të hiqni emrin e bazës së të dhënave:

mysql -p -u< db_backup.dump

Për të ekzekutuar këto komanda, hapni një komandë (në Windows) dhe cd në drejtorinë ku ndodhet mysql.exe skedari i ekzekutueshëm mysql.exe (mund t'ju duhet të mendoni pak për të, kjo do të varet nga mënyra se si keni instaluar mysql, d.m.th. i pavarur ose si pjesë e një pakete të tillë si WAMP). Kur jeni në këtë direktori, thjesht duhet të futni komandën.

2018-12-25T00:00Z

Duhet të jetë aq e thjeshtë sa të ekzekutoni këtë:

Mysql -u -fq< db_backup.dump

Nëse hale ka një bazë të dhënash të vetme, mund t'ju duhet të shtoni një rresht në krye të skedarit:

PËRDORIMI ;

Nëse është një hale e shumë bazave të të dhënave, deklaratat e përdorimit janë tashmë atje.

Për të ekzekutuar këto komanda, hapni një linjë komande (në Windows) dhe cd në direktorinë ku mysql.exe përmban ekzekutuesin mysql.exe (mund të duhet të mendoni pak për këtë, kjo do të varet nga mënyra se si keni instaluar mysql, d.m.th. i pavarur ose si pjesë e një pakete të tillë si WAMP). Pasi të jeni në atë drejtori, thjesht mund të shkruani komandën siç bëra më lart.

2019-01-01T00:00 Z

Komandë me një linjë për të rivendosur SQL të gjeneruar nga mysqldump

Mysql -u -fq E "burimi

2019-01-08T00:00Z

Duke përdorur një skedar hale 200 MB të krijuar në Linux për të rivendosur në Windows me mysql 5.5, kisha më shumë sukses Me

Dosja burimore.sql

qasje ekipore vargjet mysql sesa duke përdorur

mysql< file.sql

Qasja e linjës së komandës që shkakton një gabim të vitit 2006 "serveri ka lënë" (në Windows)

Mjaft e çuditshme, shërbimi i krijuar gjatë (mysql)instalimit i referohet një skedari my.ini që nuk ishte aty. Kam kopjuar skedarin e shembullit "të madh" në my.ini, të cilin e kisha modifikuar tashmë me rritjen e rekomanduar.

Vlerat e mia

Maksimumi i_lejuar_paketë = 64 milion interaktive_kohë = 250 kohë_pritje = 250

2019-01-15T00:00Z

Si shembull konkret përgjigja e mëparshme:

Më duhej të rivendosja kopjen rezervë që të mund ta importoja/transferoja atë SQL Server. Unë instalova vetëm MySql, por nuk e regjistrova si shërbim ose nuk e shtova në rrugën time pasi nuk kam nevojë ta ekzekutoj.

une e perdora Windows Explorer për të vendosur skedarin tim dump në C:\code\dump.sql. Pastaj hapni MySql nga artikulli i menysë Start. Krijoi DB-në, më pas ekzekutoi komandën e burimit me shtegun e plotë si kjo:

Mysql> krijoni bazën e të dhënave temp mysql> përdorni temp mysql> burimin c:\code\dump.sql

Është e çuditshme, por është mjaft e vështirë të gjesh këtë informacion në internet. Një grumbull i të gjitha llojeve të rekomandimeve të krahut të majtë. Por në fakt, gjithçka është e thjeshtë. Ju mund të rivendosni deponinë me komandën:

# mysql-u -p< mysql_dump.sql.

Në vend të kësaj, zëvendësoni emrin e përdoruesit, unë personalisht bëj rikuperimin nga root. Dhe në mysql_dump, sql, në fakt, hale është bërë mysqldump dobishmërisë. Opsioni -p tregon autorizimin me një fjalëkalim, pasi të shtypni enter, do t'ju kërkohet një fjalëkalim. Kjo është e gjitha, në fakt. Ju mund të bëni një hale me komandën:

# mysqldump-u rrënjë -p -f emri_bazës së të dhënave > file_with_dump.sql

Këtu parametri -f database_name specifikon emrin e bazës së të dhënave që po ruajmë. Nëse keni nevojë për gjithçka, ne e zëvendësojmë atë me -- të gjitha bazat e të dhënave. Ky opsion do të tregojë ruajtjen e të gjitha bazave të të dhënave në server. Për të mos futur fjalëkalimin çdo herë, mund ta specifikoni drejtpërdrejt në komandë (kjo është e nevojshme nëse jeni duke bërë një cron dump nga një skript), megjithatë, nga pikëpamja e sigurisë, këtu lindin pyetje, veçanërisht nëse fjalëkalimi është rrënjë për muskujt. Tani, sikur muskuli të kuptonte të paktën fjalëkalimet e md5... Megjithatë, nuk është fakt që ai nuk e kupton, thjesht ndoshta nuk e di :)

Autori

Alex Razgibalov

Një burrë i çmendur, në moshë të papërcaktuar, që gëzon një iluzion persekutimi. Patologjikisht mosbesues, egoist, autoritar. Diagnoza dytësore - programues dhe asistent. Zotëron gjuhe angleze në një nivel rreth bisedave të ndyra. Njohur gjithashtu me disa gjuhë të tjera. Ai është i interesuar për të gjithë dhe për gjithçka, për shkak të së cilës njohuritë e tij në çdo fushë janë sipërfaqësore dhe të cekëta. Personazhi është i pakontrollueshëm. Forca - 55 gradë.

Nga autori: Erdha për të vizituar një mik, dhe gruaja e tij ishte histerike, papagalli po bërtiste: "Mai-es-qu-el-dump". Vetë miku shtrihet me një dhimbje koke dhe një dëshirë maniake për të zbuluar se çfarë po ndodh në të Rimëkëmbja e MySQL nga hale. Për të shpëtuar kokat e pjesës tjetër të "injorantëve", nervat e grave të tyre dhe kordat vokale të papagajve, le ta shqyrtojmë këtë temë më në detaje.

Rreziku "All inclusive"

Miku im, si shumë fillestarë, përdor paketat softuerike"Gjithpërfshirëse". Më e zakonshme në RuNet është grupi i zotërinjve "Denver". Dhe me "kompleksitetin" e tij (përfshin server lokal, një guaskë për të punuar me një DBMS, Serveri MySQL) po këta “zotërinj” i çon deri në çmenduri.

Lista e Denverit përfshin vetëm disa shërbimet standarde për të punuar me MySQL. Dhe meqë ne të gjithë njerëzit modernë, pastaj për informacionin që mungon (për të kuptuar thelbin e diçkaje) shkojmë në internet. Por materialet e publikuara në internet nuk thonë se për të ekzekutuar grupe të caktuara komandash, prania e paketë standarde MySQL shërbimet e specializuara. Për shembull, për të krijuar një hale të një baze të dhënash MySQL, ju nevojitet programi MySQLDump.

Prandaj, nëse përdorni gjithashtu Denwer për të trajnuar dhe testuar kodin tuaj, dhe pyetjet e përshkruara në këtë material nuk do të ekzekutohen në vijën e komandës, atëherë shkoni te: D:\Webserver\usr\local\mysql-5.5\bin

Dhe shikoni se cilat shërbime për të punuar me serverin DBMS janë të disponueshme "në bord" makinë klient. E përsëris edhe një herë, sot na duhet programi MySQLDump.

Duke punuar me MySQLDump

Ky mjet është një skedar i rregullt "i ekzekutueshëm", i cili pas shkarkimit duhet të vendoset në dosjen e koshit (rruga drejt tij tregohet në seksionin e parë të materialit). Kjo aplikim i vogël ju lejon të zgjidhni problemet "globale" - rivendosni nga një hale në MySQL, krijoni kopje rezervë dhe konfiguroni parametrat rezervë.

Shërbimi nuk ka ndërfaqen e vet, kështu që ju punoni me të përmes CMD standarde të përfshirë në set standard programet e Windows(nisni përmes menysë Start). Dhe tani hap pas hapi:

Së pari, shkojmë te disku virtual (i krijuar pas lëshimit të Apache, i cili është pjesë e Denverit).

Nëse nuk përdorni një set “zotëri”, nuk do të thotë që nuk jeni zotëri. Thjesht duhet të kaloni këtë hap të udhëzimeve.

Më pas, duke përdorur komandën cd (change directory), specifikoni shtegun për në dosjen ku është instaluar MySQL. Në Denver kjo direktori gjendet këtu: Z:\usr\local\mysql-5.5\bin

Kur instaloni veçmas sistemin e menaxhimit të bazës së të dhënave, kjo dosje ndodhet: C:\Program Files…

Meqenëse jemi tashmë në diskun e dëshiruar (virtual), duhet të specifikojmë vetëm një pjesë të shtegut pas komandës cd:

Le të kontrollojmë funksionalitetin e aplikacionit dhe të krijojmë Deponia e MySQL bazën e të dhënave, e cila ndodhet në serverin tonë. Për shembull, baza e të dhënave "wordpress". Për ta bërë këtë, ne do të përdorim komandën mysqldump me të njëjtin emër si mjeti. Këtu është sintaksa e saj:

mysqldump -u emri i përdoruesit -p fjalëkalimi emri_database > backup- database.sql

mysqldump - u username - p password name_database > backup - database . sql

Shembull i përdorimit të komandës:

mysqldump -uroot wordpress>Z:\home\localhost\dump\wp_copy.sql

mysqldump - uroot wordpress > Z:\home\localhost\dump\wp_copy. sql

Si rezultat, ne morëm një depo të bazës së të dhënave të faqes WordPress:

Çfarë është një hale?

Nëse nuk dini asgjë për një deponim të bazës së të dhënave MySQL dhe e keni të vështirë të merrni me mend se çfarë është, atëherë këtë seksion për ty. Një hale është një lloj rezervimi i bazës së të dhënave. Më saktësisht, skedarët e kopjimit të bazës së të dhënave (në varësi të llojit dhe mjetit të krijimit) mund të përmbajnë linja të dhënash lloj i caktuar, dhe gjithashtu përfshini pyetjet SQL për të rindërtuar informacionin e humbur, strukturën e tij dhe vlerat e parametrave.

Për të mos qenë të pabazuar, le të hapim kopjen e wp_copy që krijuam duke përdorur Notepad standard. Pas një studimi të shkurtër të përmbajtjes së tij, do të shohim se ai përbëhet pothuajse tërësisht nga pyetje që mund të përdoren për të rikrijuar strukturën e tabelave të bazës së të dhënave dhe përmbajtjen e tyre.

Rimëkëmbja e testit

Nëse duart tuaja kruhen dhe sapuni nuk ju ndihmon, atëherë ne do të bëjmë një "provim" të mjetit. Si fillim, përmes phpMyAdmin (për ta bërë më të shpejtë) do të krijojmë një bazë të dhënash testuese “Auto” me dy tabela. Le ta quajmë njërën "makinë" dhe tjetrën "ngjyrë". Shtoni disa rreshta të dhënash në secilën për qartësi.

Tani le të krijojmë një skedar MySQL të bazës së të dhënave që na intereson. Ne do ta ruajmë kopjen rezervë në i njejti vend. Kërko kodin:

mysqldump -uroot auto>Z:\home\localhost\dump\auto_copy.sql

mysqldump - uroot auto > Z:\home\localhost\dump\auto_copy. sql

Duke shkuar te dosja e hale, shohim që mjeti ka krijuar një kopje "auto_copy".

Bërja e një databaze dump (backup) është shumë e rëndësishme. Kështu bëra disa komente me shembuj për këtë dobishmëri e shkëlqyer si mysqldump.

mysqldump - një mjet që ju lejon të hidhni përmbajtjen e një baze të dhënash ose një grup bazash të dhënash për të krijuar kopje rezervë ose dërgimi i të dhënave në një server tjetër të bazës së të dhënave SQL (jo domosdoshmërisht një server MySQL). Deponia do të përmbajë një grup komandash SQL për të krijuar dhe/ose mbushur tabelat.

mysqldump-u rrënjë -p -f emri_baza e të dhënave >

Me këtë komandë ne bëjmë një kopje rezervë të bazës së të dhënave nën emrin name_database në diskun C në skedarin mydb_backup_name_database.txt

Ju nuk keni nevojë të krijoni skedarin MySQL do ta krijojë atë vetë.

mysql-u rrënjë -p -f emri_baza e të dhënave< C:\mydb_backup_name_database.txt

Me këtë komandë ne importojmë të dhëna rezervë nga skedari C:\mydb_backup_name_database.txt

Shënim: -f, --force është një opsion që specifikon të vazhdojë edhe nëse merret një gabim SQL, d.m.th. injoroni gabimet. Për shembull, nëse një rresht identik ekziston tashmë në tabelë.

Për të shmangur kërkesën për një fjalëkalim, duhet ta shkruani menjëherë pas -p, domethënë pa hapësira. Nëse fjalëkalimi Pwd, atëherë shembulli do të duket si ky:

mysqldump-u rrënjë -p Pwd-f emri_baza e të dhënave > C:\mydb_backup_name_database.txt

Nëse e përdorni shpesh këtë komandë, atëherë është më mirë të krijoni një përdorues të veçantë me të drejtat e nevojshme për të zvogëluar dukshmërinë e fjalëkalimit rrënjë.

Le të shqyrtojmë më shumë cilësimet e shkëlqyera mysqldump:

-- bazat e të dhënave lejon mysqldump të përfshijë komandat CREATE DATABASE /*!33333 IF NUK EKSISTS*/ DBNAME dhe USE DBNAME në skriptin e rikuperimit. Kjo do t'ju lejojë të krijoni bazat e të dhënave të punës nga e para. Kjo do të thotë, pa përdorur --database, supozohet se përdoruesi është duke rivendosur një bazë të dhënash të vetme dhe duke specifikuar në mënyrë eksplicite se ku duhet të vendosen të dhënat e restauruara. Nëse krijohet një kopje rezervë me qëllimin për të bërë një kopje plotësisht funksionale të të dhënave, për shembull, në një server tjetër MySQL, atëherë duhet të përdorni këtë çelës;

-- të gjitha bazat e të dhënave ju lejon të bëni kopje të të gjitha bazave të të dhënave që ekzistojnë në një server të caktuar MySQL. Nëse ju duhet të bëni kopje të vetëm disa bazave të të dhënave, ju vetëm duhet t'i specifikoni ato të ndara me një hapësirë ​​kur thirrni mysqldump nga linja e komandës (shih më lart);

Celës --ndihmë. Programi mysqldump ka shumë versione. Ju mund të shihni se cilat veçori mbështeten në mënyrë specifike nga versioni juaj duke përdorur këtë çelës;

--add-drop-tabela- një ndërprerës që do të detyrojë mysqldump të shtojë një komandë të tabelës drop në skriptin që rezulton përpara se të krijojë tabela. Kjo do t'ju lejojë të shmangni disa gabime kur rivendosni një bazë të dhënash nga një kopje rezervë. Natyrisht, duhet të keni parasysh që tabelat e vendosura në kopjen e punës (nëse tabelat me të njëjtin emër ekzistojnë në kopje rezervë) do të fshihen nga baza e të dhënave kryesore dhe do të rikrijohen nga kopja rezervë përpara se të rikthehen nga rezervimi;

--nuk ka të dhëna. Duke përdorur këtë çelës, mund të bëni shpejt një kopje të strukturës së tabelës/bazës së të dhënave pa vetë të dhënat. Për shembull, ju keni krijuar një tabelë komplekse dhe dëshironi të ruani strukturën e saj për të ardhmen, por nuk ju nevojiten vetë të dhënat që janë në këtë tabelë në një kopje rezervë;

--skedari-rezultati=...- ky ndërprerës mund të përdoret për të ridrejtuar daljen në një skedar. Ju mund të përdorni ridrejtimin e rregullt të Unix me komandën ">", ose mund të përdorni këtë çelës. Kush pëlqen çfarë;

Një tjetër shumë këshilla të dobishme në përdorimin e mysqldump në një mjedis pritës. Si rregull, kur përdorni hostimin, përdoruesit i vendosen disa kufizime. Për shembull, nuk mund të huazoni më shumë se një shumë e caktuar kujtesa fizike(RAM, RAM). mysqldump si parazgjedhje vendos të gjitha të dhënat e marra nga serveri MySQL në memorie dhe më pas i shkruan të gjitha në disk. Prandaj, nëse ofruesi ju lejon të huazoni, për shembull, 30 MB memorie, dhe baza e të dhënave, të cilën po kopjoni duke përdorur mysqldump, zë 50 MB, natyrisht, këtu do të lindë një gabim - mysqldump nuk do të jetë në gjendje të funksionojë siç duhet dhe do të rrëzohet, për të cilën do t'ju informojë. Për të "detyruar" mysqldump të shkruajë të dhënat direkt në disk, në vend që t'i ruajë ato, qoftë edhe përkohësisht, në memorie, përdorni çelësin -- shpejt. Kjo do ta zgjidhë problemin.

Këtu janë disa shembuj më të dobishëm:

mysqldump -u rrënjë -p Pwd-f --default-character-set=cp1251 DBNAME| gzip -c > filename.txt .gz

Ju mund ta shpaketoni një arkiv të tillë me komandën:

gunzip filename.txt.gz

Për të ditur se në cilën datë është bërë rezervimi, mund të shkruani komandën e mëposhtme:

mysqldump -uLOGIN -PPORT -hHOST -pPASS DBNAME | gzip -c > `data "+%Y-%m-%d"`.gz

dhe nëse duhet të bëni hale me kodime të ndryshme, atëherë është e përshtatshme të përdorni variabla:

vendosur DBKARAKTER= utf8

vendosur DBNAME= shkelje

mysqldump -u rrënjë -p Pwd-f --default-character-set=$ DBKARAKTER $DBNAME| bzip2 -c > sql. $DBNAME.`datë "+%Y-%m-%d"`.bz2

Nëse dëshironi të automatizoni heqjen e arkivave të vjetra, provoni të përdorni cron dhe komandën find, e cila zakonisht gjendet në unix. Vrapimi periodikisht

Gjej~/directory-with-archives -emri "*.gz" -mtime +7 -exec rm -f () \;

Kështu, ju do të fshini arkivat që janë "më të vjetër" se shtatë ditë.

Artikujt më të mirë mbi këtë temë