Eksportuokite ir importuokite duomenis iš mysql. Eksportuoti duomenų bazę (PHPMyAdmin)

Perkeliant svetainę iš vietinis serveris prieglobai viena iš privalomų procedūrų yra duomenų bazės (duomenų bazės) eksportas/importas. Todėl šiame straipsnyje pabandysiu kiek įmanoma išsamiau aprašyti duomenų bazės eksportavimo ir importavimo iš vietinio serverio, tai yra iš žiniatinklio sąsajos, procesą. PHPMyAdmin 3.2.3 versija, skirta prieglobai.

Pirmas dalykas, kurį reikia padaryti, yra paleisti vietinį serverį, šiuo atveju Denwer. Paleidę Denwer, turite atidaryti naršyklę ir į naršyklės eilutę įvesti: „http://localhost/tools/phpmyadmin“, po kurio priešais jus atsidarys langas.(1 pav.)su anksčiau sukurta duomenų bazės.

1 pav

Toliau turime pasirinkti duomenų bazę, kurią eksportuosime, mano atveju tai yra duomenų bazė Mybd. Galite pasirinkti duomenų bazę spustelėdami ją kairėje naršyklės lango pusėje, kur ji nurodyta „Prašome pasirinkti duomenų bazę“ (2 pav.).


2 pav

Pasirinkus norimą duomenų bazę, atsivers langas su duomenų bazės struktūra. Viršutiniame meniu yra elementas "Eksportuoti" kurio pagalba mes eksportuosime duomenų bazę į kompiuterį ir tada importuosime į hostingą. Taigi, eikite į elementą „Eksportuoti“. (3 pav.).


3 pav

Atsidariusiame lange turite atlikti kai kuriuos matavimus (4 pav.), būtent: bloke „Eksportuoti“ reikia pasirinkti visas duomenų bazės lenteles spustelėdami elementą "Pasirinkti viską" ir pažymėkite langelį šalia elemento SQL, šis elementas yra atsakingas už failo, kuris bus eksportuojamas, tipą. Be to, turite pažymėti langelį šalia "Išsaugoti kaip failą", kuri užtikrins, kad duomenų bazė būtų išsaugota faile. Jokių kitų nustatymų keisti nereikia, tiesiog paspauskite mygtuką "Eik".

4 pav

Dabar, jei viską padarėte teisingai, duomenų bazės failas turėtų atsisiųsti į jūsų kompiuterį. Naudodami šį failą importuosime duomenų bazę į prieglobą.

Taip pat turite pakeisti failo kodavimą į UTF-8 be BOM, kad pakeistumėte mano naudojamą kodavimą teksto redaktorius Notepad++(Parsisiųsti ) . Naudodami šią programą atidarote duomenų bazės failą ir meniu "Kodavimas" pasirinkti „Konvertuoti į UTF-8 be BOM“ (5 pav.), tada išsaugokite ir uždarykite.


5 pav

Ši procedūra apima duomenų perkėlimą iš vienos duomenų bazės (A) į kitą (B). Paprastai duomenų bazė B yra priegloboje (arba Denveryje), o duomenų bazė A yra vartotojo kompiuteryje ir yra failas su sql plėtiniu. Duomenų bazė A turi kitą pavadinimą – Dump.

Kaip importuoti duomenų bazę?

MySQL duomenų bazės importavimas naudojant SSH

Šis metodas naudojamas gana retai, bet mes jį apibūdinsime. Pirmiausia užpildykite duomenų bazę, iš kurios ją importuosite į prieglobos paslaugų teikėjo serverį, kuriame saugomi jūsų svetainės failai. Tada, norėdami importuoti duomenų bazę, naudokite komandą:

mysql -uUSERNAME -pUSERPASSWORD DBNAME< DUMPFILENAME.sql

mysql --user=USERNAME --password=USERPASSWORD DBNAME< DUMPFILENAME.sql

Vietoj žodžių, parašytų didžiosiomis raidėmis, pakeičiame:
USERNAME – duomenų bazės vartotojo vardas, pavyzdžiui, uhosting_databaseuser;

USERPASSWORD - duomenų bazės vartotojo slaptažodis, pavyzdžiui, Rjkweuik12;

DBNAME – duomenų bazės, į kurią bus importuojama, pavadinimas, pvz., uhosting_databasename

DUMPFILENAME – iškeltos failo, iš kurio bus importuojami duomenys, pavadinimas. Čia taip pat turime nurodyti kelią į duomenų bazę, kurią įkėlėme į prieglobos paslaugų teikėjo serverį.

Daugumos svetainių duomenų bazės (arba sutrumpintai DB) yra kelių dešimčių MB (megabaitų) dydis (svoris). Pradinis duomenų bazės dydis įvairių projektų pradžioje priklauso nuo pačios svetainės (TVS) struktūros, tačiau vėliau jų svoris didėja su kiekvienu nauju įrašu.

Įrašuose gali būti informacija apie vartotojo registraciją, komentarai, asmeniniai pranešimai, produktai, naujienos ir kiti svetainės duomenų bazėje saugomi duomenys.

Turėjau galimybę dirbti su keliomis svetainėmis, kurių duomenų bazės dydis viršijo 500 MB (magabaitų), o kai kuriose net siekė 2 GB (gigabaitus). Kadangi tokio dydžio duomenų bazes sunku perkelti naudojant standartinius metodus (dėl hostingo ir naršyklės apribojimų), pasidalinsiu su jumis keliais darbo metodais, kurie padės išspręsti tokias problemas (didelių duomenų bazių migracija).

Eksportuokite (atsisiųskite) dideles MySQL duomenų bazes per Sypex Dumper

Taigi, pradėkime svarstyti, kaip išspręsti iškilusias problemas nuo paprastesnio varianto, būtent nuo paruošto sprendimo.

„Sypex savivartis“ – programinė įranga, parašyta PHP, leidžianti dirbti su duomenų bazėmis nenaudojant phpMyAdmin. „Sypex Dumper“ pranašumai yra šie:

  1. Daugiakalbis (palaiko daugybę kalbų).
  2. Valgyk nemokama versija scenarijus (to visiškai pakanka mūsų užduotims).
  3. Didelis užduoties atlikimo greitis.
  4. Darbas su didelėmis duomenų bazėmis.
  5. Patogi ir intuityvi sąsaja.
  6. Ir daug kitų įdomių „čipsų“.

Tai mes naudosime norėdami atsisiųsti (perkelti) dideles duomenų bazes.

Norėdami eksportuoti (gauti, atsisiųsti) konkrečios savo svetainės duomenų bazę tolesniam naudojimui, turite atlikti šiuos veiksmus.

1. nemokamai iš mūsų svetainės.

2. sxd jums patogiu būdu.

3. Tada eikite į adresą (Kur your_site.ru Įeiti».

4. Atsidariusiame puslapyje (jei autorizacija sėkminga) vieną kartą spustelėkite skyrių „ Eksportuoti» viršutiniame meniu. Jei vartotojui prieinamos kelios duomenų bazės, išskleidžiamajame sąraše pasirinkite tą, kurią eksportuosime (atsisiunčiame). Likusius nustatymus galite palikti nepakeistus ir spustelėti „ Vykdyti».


Noriu pastebėti, kad pagal poreikį galite eksportuoti ne visą duomenų bazę, o tik kai kurias jos lenteles.

5. Baigę duomenų bazės išsaugojimo procesą (tai galite suprasti iš eigos juostos), galite atsisiųsti reikiamą duomenų bazę spustelėdami atitinkamą mygtuką.


Be to, visos eksportuotos duomenų bazės bus saugomos jūsų svetainėje /sxd/backup/. Jei nepavyksta išsaugoti duomenų bazės, patikrinkite, ar aplankas atsarginė kopija Rašymo leidimai yra 777.

Tai užbaigia duomenų bazės eksportavimą (atsiuntimą).

Didelių MySQL duomenų bazių importavimas (atsiuntimas) per Sypex Dumper

Aukščiau paaiškinome, kaip gauti reikiamą duomenų bazę, dabar ją reikia perkelti (importuoti) į kitą projektą, o tam mes atliekame šiuos veiksmus.

1. nemokamai iš mūsų svetainės.

2. Išpakuokite archyvą ir įkelkite aplanką į svetainę sxd jums patogiu būdu.

3. Į aplanką /sxd/backup/įkelti anksčiau gautą (parsisiųstą) duomenų bazę.

4. Toliau eikite į adresą http://your_site.ru/sxd/index.php(Kur your_site.ru– jūsų svetainės domenas), po kurio prieš jus atsidarys duomenų įvedimo forma. Jame nurodote vartotojo, turinčio teisę valdyti jums reikalingą duomenų bazę, duomenis ir spustelėkite „ Įeiti».

5. Atsidariusiame puslapyje (jei autorizacija sėkminga) vieną kartą spustelėkite skyrių „ Importuoti» viršutiniame meniu. Jei vartotojui prieinamos kelios duomenų bazės, išskleidžiamajame sąraše pasirinkite tą, į kurią importuosime (įkelsime) duomenis. Likusius nustatymus galite palikti nepakeistus ir spustelėti „ Vykdyti».


Noriu pastebėti kad pagal poreikį galite importuoti ne visą duomenų bazę, o tik kai kurias jos lenteles.

6. Baigę duomenų bazės importavimo (įkėlimo) procesą (tai galite suprasti iš eigos juostos), užduotis gali būti laikoma baigta.


Eksportuokite (atsisiųskite) dideles MySQL duomenų bazes per SSH terminalą

SSH – tinklo protokolas, kuri leidžia nuotoliniu būdu (per specialios komandos) valdyti sistemą arba serverį. „Windows“ sistemoje yra daug programų, skirtų darbui su šiuo protokolu, iš kurių populiariausias yra „PuTTY“.

Kai kuriose prieglobos svetainėse, pavyzdžiui, valdymo skydelyje yra įtaisytas terminalas. Neeikime toli ir apsvarstykime pavadinime aprašytą problemą remdamiesi jo pavyzdžiu. Tai nieko neverta kad toliau aprašytas operacijas galima atlikti atskirame SSH kliente.

1. Paleiskite terminalą. Tai atrodo taip:


2. Jei prisijungiate prie serverio per trečiosios šalies programa– prisijunkite prie jo įvesdami atitinkamus duomenis (juos galite gauti savo prieglobos valdymo skydelyje arba iš savo prieglobos paslaugų teikėjo).

antra- Tai:

Mysqldump -u VARTOTOJAS -p DUOMENŲ BAZĖ > atsarginė kopija.sql

tiesiogiai pats eksportas, kur:

VARTOTOJO VARDAS– vartotojo, turinčio prieigą prie duomenų bazės, prisijungimas.

DUOMENŲ BAZĖ– duomenų bazės, kurią norime eksportuoti, pavadinimas.

atsarginė kopija.sql– failo, kuriame bus išsaugota duomenų bazė, pavadinimas ir kelias, susijęs su . Naudojant šį dizainą, duomenų bazė bus išsaugota prieglobos šaknyje.

4. trečiame žingsnyjeĮeikite“ klaviatūroje. pastaba

Kai serveris vėl bus pasirengęs priimti komandas per SSH, tai reikš, kad duomenų bazės eksportas bus baigtas ir galėsite ją atsisiųsti per FTP arba per failų tvarkyklė priegloba.

Eksportavimo (ir importavimo) procesas netransliuojamas SSH, o jei jūsų duomenų bazė yra gana didelė, būkite kantrūs, nes atsakymą iš serverio galite gauti po daugiau nei 20 minučių.

Didelių MySQL duomenų bazių importavimas (atsiuntimas) per SSH terminalą

Mes jau išsiaiškinome, kas yra aukščiau, o dabar pradėkime ieškoti, kaip importuoti anksčiau atsisiųstą duomenų bazę į kitą projektą.

1. Iki savo šaknų priegloba, atsisiųskite anksčiau atsisiųstą duomenų bazę jums patogiu būdu.

2. Prisijunkite prie prieglobos / serverio per SSH.

todėl neabejotinai pereiname prie prieglobos šaknų ir antra- Tai:

Taigi gauname visas sąrašas dabartinio katalogo failus ir katalogus. Įsitikinkite, kad tarp jų yra mūsų anksčiau atsisiųsta duomenų bazė.

4. Jei viskas gerai ir bazė yra vietoje, įveskite paskutinę komandą:

Mysql -u VARTOTOJAS -p DUOMENŲ BAZĖ< backup.sql

VARTOTOJO VARDAS– vartotojo, turinčio prieigą prie duomenų bazės, prisijungimas.

DUOMENŲ BAZĖ– duomenų bazės, į kurią importuosime duomenis, pavadinimas.

atsarginė kopija.sql– failo, kuris bus atsiųstas, pavadinimas ir kelias, susijęs su . Naudojant šį dizainą, duomenų bazė bus importuojama iš prieglobos šaknies.

5. Įvedę komandą būsite paraginti įvesti nurodyto vartotojo slaptažodį ketvirtame žingsnyje. Įveskite slaptažodį ir spustelėkite " Įeikite“ klaviatūroje. pastaba kad slaptažodžio įvedimas SSH terminale nerodomas, tai ar įvedate slaptažodį, ar įklijuojate, jo vietoje visada bus tuščia vieta.

Po to, kai serveris vėl bus pasirengęs priimti komandas per SSH, tai reikš, kad duomenų bazės importas bus baigtas ir galėsite atlikti tolesnis darbas apie projektą.

Manęs dažnai klausia, kaip į serverį importuoti didelę duomenų bazę MySQL duomenys. Yra žinoma, kad phpMyAdmin pagal nutylėjimą turi apribojimus importuojamos duomenų bazės dydžiui.

Jei jūsų sąvartynas nėra daug didesnis nei priimtina riba, galite padalyti jį į kelias dalis ir importuoti keliais važiavimais. Tai pateisinama, jei, pavyzdžiui, limitas yra 2 MB, o jūsų duomenų bazė yra 5–10 MB dydžio. Akivaizdu, kad 100 MB duomenų bazės „supjaustymas“ į 50 dalių yra gana daug darbo ir laiko reikalaujantis procesas.

Yra keletas šios problemos sprendimo variantų.

Redaguoti žiniatinklio serverio konfigūraciją

VDS/VPS su tuo nėra jokių ypatingų problemų, tereikia pataisyti konfigūraciją. Būtent, php.ini padidinkite leistinas didžiausias į serverį įkeltų failų vertes, maksimalus dydis failams, perkeltiems naudojant POST metodą:

Didžiausias įrašo_dydis = 2000 mln. įkėlimo_didžiausias_failo dydis = 2000 mln.

Be to, jei jūsų duomenų bazė yra labai didelė, turėtumėte padidinti maksimalų leistiną scenarijaus vykdymo laiką.

Maksimalus_vykdymo_laikas = 32000 maksimalus_įvesties_laikas = 32000

Ir tik tuo atveju galite padidinti leistiną RAM kiekį:

Atminties_riba = 512M

Atlikę pakeitimus būtinai iš naujo paleiskite žiniatinklio serverį.

Akivaizdu, kad virtualiam prieglobai šis būdas netinka, nes... tai nereiškia galimybės redaguoti konfigūracijas.

Sypex savivartis

Galite naudoti trečiosios šalies programinę įrangą. Ir pirmoji programa, į kurią verta atkreipti dėmesį, yra „Sypex Dumper“.

Pirmą kartą jį panaudojęs prieš daugelį metų ir įvertinęs visas jo galimybes bei privalumus, galiu drąsiai pažymėti „Must Have“. Sypex Dumper yra PHP serverio programa, kurios nereikia įdiegti. Pakanka nukopijuoti jį, pavyzdžiui, į savo svetainės šaknį sxd kataloge ir iškviesti naršyklėje: http://Your_Site/sxd/. Verta paminėti, kad pirmiausia turėtumėte į atsarginių kopijų katalogą patalpinti savo duomenų bazės sąvartyną. Pradėję scenarijų, pamatysite prieigos prie duomenų bazės prieigos skydelį. Įveskite savo vartotojo vardą ir slaptažodį. Pagrindinis kompiuteris ir prievadas yra neprivalomi, tik jei jie yra konkretūs.

Po autorizacijos galite pereiti tiesiai prie duomenų bazės importavimo. Lauke "Duomenų bazė" bus pasirinkta duomenų bazė, prie kurios esate prisijungę, ir lauke "Failas" pamatysite iškrovą, kurią anksčiau įkėlėte į atsarginių kopijų katalogą.

Daugeliu atvejų nė vienas papildomi nustatymai nebereikalingi ir galite saugiai pradėti importuoti spustelėję mygtuką „Vykdyti“. Importavimas, atsižvelgiant į duomenų bazės dydį ir interneto ryšio greitį, gali užtrukti. Importavimo metu galite matyti, į kurias lenteles importuojamos Šis momentasį duomenų bazę. Kai scenarijus bus baigtas, pamatysite vykdymo žurnalą. Tai atrodo maždaug taip:

Tiesą sakant, tai ir viskas – duomenų bazė importuota!

Konsolė

Nesvarstysime importavimo per konsolę. Manau, kad žmonės, kurie naudojasi konsole be manęs, žino, kaip importuoti bet kokią duomenų bazę. Ir paprasti vartotojai be specialus mokymas Geriau ten neiti. Kadangi kai kurių komandų vykdymas gali sukelti rimtų pasekmių, įskaitant visišką serverio gedimą.

Pagaliau

Nesakau, kad Sydex Dumper yra vienintelis ir teisingas sprendimas. Yra ir kitų elegantiškesnių metodų, kurie reikalauja, kad vartotojas turėtų tam tikrų žinių ir atitinkamą prieigą prie serverio nustatymų.

Tačiau bendrojo prieglobos aplinkoje Sydex Dumper tikrai bus nepakeičiamas jūsų padėjėjas.

Prenumeruokite mano telegramą ir būkite pirmasis, kuris gaus naują medžiagą, įskaitant ir esančią svetainėje.

Kai tik pradedate kurti svetainę, dažniausiai tai darote vietiniame serveryje. Kai jis bus paruoštas, jį reikės perkelti nuotolinis serveris. Failus kopijuoti nėra sunku, bet štai kaip importo duomenų bazėį nuotolinį serverį? Tik apie kaip importuoti duomenų bazę į PHPMyAdmin, paaiškinsiu jums šiame straipsnyje.

Yra daug būdų duomenų bazės importas Tačiau aš jums pasakysiu, koks, mano manymu, yra paprasčiausias ir kurį naudoju pats.

1 žingsnis

Pirmas dalykas, kurį reikia padaryti, yra eksporto duomenų bazė iš dabartinės vietos (ypač vietinio serverio). Mūsų tikslas – gauti SQL užklausa mūsų duomenų bazėje. Norėdami tai padaryti, turite atlikti šiuos veiksmus:

2 žingsnis

Antrasis ir paskutinis žingsnis yra padaryti SQL užklausa, į kurį nukopijavote PHPMyAdmin, kuris yra serveryje, kur jums reikia importo duomenų bazė. Norėdami tai padaryti, atlikite šiuos veiksmus:

Dėl to visos jūsų lentelės su visais įrašais bus sukurtos naujame serveryje.

Kaip matote, procesas duomenų bazės eksportavimas ir importavimas PHPMyAdmin supaprastinta iki minimumo, todėl problemų dėl to nekils.

Galiausiai norėčiau duoti dar vieną patarimą. Faktas yra tas, kad labai dažnai būna situacija, kai reikia neimportuokite visos duomenų bazės, bet, pavyzdžiui, tik viena lentelė. Tada principas absoliučiai tas pats, tik eksportuojant reikia pasirinkti ne tik duomenų bazę, bet ir lentelę eksportuoti. Ir tada vėl viršutiniame meniu spustelėkite " Eksportuoti“. Tada viskas yra taip pat duomenų bazės importas.

Dalintis