Ovaj članak može biti od pomoći ako imate web stranicu koja koristi sistem za upravljanje sadržajem (Joomla, WordPress, OpenCart, itd.) i odlučite se prebacite na drugi server... To zahtijeva ne samo prijenos datoteka web mjesta, već i prijenos. Prije nego što nastavite s prijenosom web stranice, morate pronaći dobar i naručiti ga kako biste dobili pristup novom hosting računu. Na primjer, nudimo samostalne, Joomla i PrestaShop. Ako želite prenijeti svoju web stranicu pod novo ime i trebate, uzmite si vremena. Naš S4 Shared Hosting Plan će vam dati i domenu besplatno. Ako virtuelni hosting nije dovoljan za vašu stranicu, uvijek možete naručiti VPS ili.
Da biste prenijeli bazu podataka, prvo morate kreirati njen dump, odnosno smjestiti sadržaj u posebnu sql datoteku. Ovo se radi u meniju phpMyAdmin na hostingu sa kojeg prenosite stranicu. Idite na phpMyAdmin, odaberite bazu podataka koju želite prenijeti na lijevoj strani i kliknite na dugme “ Izvoz»U gornjem meniju.
Otvoriće se dijaloški okvir u kojem obavezno odaberite tip SQL baze podataka, a zatim kliknite na dugme uredu... Sačekajte da se datoteka baze podataka preuzme na vaš računar.
Sada ovaj fajl mora biti ispravno postavljen na naš hosting. Da biste to učinili, prvo morate kreirati MySQL bazu podataka u cPanel nalogu, dodati joj korisnika i dodijeliti joj privilegije. U nastavku, redom, opisano je kako kreirati bazu podataka u MySQL-u.
Idite na cPanel i pronađite odjeljak " Baza podataka", Odaberite" ".
Otvoriće se novi prozor. U koraku 1 unesite naziv baze. Imajte na umu da će ime baze podataka uvijek imati prefiks, a prva polovina imena će sadržavati ime cPanel naloga.
Nakon što unesete ime, kliknite na dugme " Sljedeći korak».
U koraku 2, potrebno je kreirati MySQL korisnika za bazu podataka i postaviti lozinku za nju. Nakon što unesete sve podatke, pritisnite dugme " Kreiraj korisnika».
Prilikom konfiguriranja privilegija kreiranog korisnika, odaberite " SVA PRAVA”I idite na sljedeći korak.
Ako je sve urađeno kako treba u prethodnim koracima, čarobnjak baze podataka će vas obavijestiti o uspješnom završetku kreiranja baze podataka na hostingu.
Sada kreiranu bazu podataka možete pronaći na listi dostupnih MySQL baza podataka u istoimenom meniju kontrolne table.
Sada, da bismo vratili MySQL bazu podataka, uvozimo u kreiranu bazu podataka sadržaj datoteke sačuvane sa starog hostinga sa ekstenzijom .sql... Da biste to učinili, na glavnoj stranici cPanela odaberite stavku menija “ phpMyAdmin"U istom dijelu" Baza podataka”. U prozoru koji se otvori, u meniju na lijevoj strani, odaberite novokreiranu bazu podataka i kliknite na " Uvoz»U gornjem meniju.
Kliknite na " izaberite datoteku", U dijaloškom okviru odaberite prethodno sačuvanu sql datoteku i prenesite je na hosting. Provjerite je li tip kodiranja utf-8. Nakon što kliknete na OK, pričekajte poruku da je baza podataka uspješno uvezena.
Ovim se završavaju svi koraci potrebni za prijenos baze podataka na drugu.
Ideja članka je stvoriti visokokvalitetan priručnik za instalaciju i rad s programom mysqldump. Primjena puno primjera i prikupljanje svih korisnih opcija i parametara za rad s ovim uslužnim programom. Teško je sve uklopiti u jedan članak, pa će sve biti kratko i jasno. Ako neko nešto pogrešno shvati, pogledajte komentare na članak.
Odjeljci:
Instalacijamysqldump:
Šta je mysqldump?
MySQLdump Je serverska aplikacija koja vam omogućava da napravite sigurnosnu kopiju (u daljem tekstu dump) baza podataka i pohranite ih u posebnu datoteku. Istovremeno, možete implementirati fleksibilne postavke dumpa: nekoliko ili sve baze podataka, arhiviranje u gzip-u, dodavanje zaključavanja, ispuštanje komandi i još mnogo toga. Obrnuti uvoz rezervnih kopija baze podataka je također moguć. To se može uraditi pomoću PHP-a, ali to je neprihvatljivo za velike projekte koji imaju veliku težinu podataka.
Ovaj program je vrlo koristan za izvoz i uvoz podataka iz baze podataka. Može se standardno instalirati na vaš hosting (tačnije, na mysql server). Ali da biste usavršili svoje vještine u radu sa mysqldumpom i naučili kako se instalirati, možete ga instalirati na denwer. Šta ćemo sada.
Preuzmite mysqldump
Program mysqldump uvijek možete preuzeti na našoj web stranici, dok je preuzimanje aplikacije potpuno besplatno. Preuzmite mysqldump sa direktnog linka ispod.
Kako da instaliram mysqldump?
Instalirat ćemo ga na lokalni Denwer server. Instalacija aplikacije je laka i jednostavna, da biste to učinili, slijedite upute i snimke ekrana date u nastavku.
1. Kopirajte datoteku mysqldump.exe u denver folder:
D: \ WebServers \ usr \ local \ mysql5 \ bin \
U ovom slučaju, možda ćete imati nešto drugačije ime za mysql5 folder, na primjer, mysql-5.1 ili malo izmijenjen. Stoga, radi jasnoće, u nastavku je dat snimak ekrana:
2. Pokrenite Denver
Sigurno i sami znate kako da vodite Denwer.
3. Pokrenite konzolu:
Start-> Run->cmd.exe ili na Windows 7: Start-> Search-> Entercmd.exe->Enter kao što je prikazano na snimku ekrana:
4. Testiranje:
Koristeći komande u konzoli, idite na denver virtuelni disk (imam W: \) i u folder sa aplikacijom mysqldump. Da biste potvrdili izvršenje naredbe, pritisnite Enter.
Unesite naredbe:
W:- idite na denver virtualni disk
cdusr \lokalni \mysql5 \bin- idite u folder sa aplikacijom
mysqldump -uroot your_db_name> filename.sql- testiramo, izbacujemo proizvoljnu bazu podataka u datoteku koja će biti sačuvana u folderu bin.
Moja instalacija je bila uspješna, nadam se da i vaša. Pronađite datoteku sigurnosne kopije baze podataka u mapi bin. Da biste naučili kako koristiti program šire, pročitajte sljedeće dijelove članka.
Početak: Izvoz i uvoz baze podataka
Izvoz baze podataka
Već smo instalirali aplikaciju i naučili kako koristiti konzolu. Već smo uradili probni dump. Sada napravimo jednostavan dump baze podataka u direktorij koji nam je potreban. Da bih to učinio, kreirao sam prethodno korištenu bazu podataka pod nazivom “test”. Nalazi se na lokalnom serveru. Ispod su korak-po-korak naredbe konzole za dumpovanje testne baze podataka u željenu mapu i datoteku.
W: cdusr \ local \ mysql5 \ bin mysqldump -uroot test> D: \ test \ easydump.sql
Snimak ekrana ispod prikazuje dump fajl u test folderu:
Izvoz je bio uspješan. Sada pokušajmo da uvezemo ovu datoteku nazad na naš server.
Uvoz baze podataka
Da biste uvezli bazu podataka, obrišite bazu podataka u phpmyadmin-u i koristite sljedeću naredbu u cmd.exe:
Mysql -uroot test Važna napomena: ako smo prilikom izvoza koristili mysqldump ..., onda kada uvozite, trebate započeti naredbu sa mysql... Ovaj primjer je osnovna upotreba aplikacije mysqldump za kreiranje sigurnosnih kopija (sigurnosnih kopija) baza podataka. Naći ćete još više naredbi i primjera u odjeljku i članku. Ispod su neki od najčešće korištenih primjera korištenja mysqldump. Uz pomoć kojih ne samo da možete napraviti sigurnosnu kopiju, već i dodati neke sigurnosne opcije: kompresiju pomoću gzipa, dodavanje datuma sigurnosne kopije, izbacivanje samo nekoliko tabela ili strukture baze podataka, koristite fleksibilne postavke. Ove opcije vam omogućavaju da povećate brzinu izvršavanja dump-a i uštedite prostor na disku. -u ili --user = ...- Korisničko ime -h ili --host = ...- udaljeni host (za lokalni host možete izostaviti ovaj parametar) -p ili --lozinka- zatražite lozinku baza podataka- naziv izvezene baze podataka /path/to/file/dump.sql- putanja i datoteka za dump Izbacujemo nekoliko baza podataka, za ovo koristimo atribut --databases ili skraćeno -B, pogledajte primjer ispod: Mysqldump -uroot -h82.82.82.82 -p -B baza podataka1 baza podataka2 baza podataka3> baze podataka.sql Ako želite da kreirate dump svih baza podataka, morate koristiti parametar –all-databases ili skraćeno –A, pogledajte primjer: Mysqldump -uroot -h82.82.82.82 -p -A> all-databases.sql Da biste to učinili, trebate koristiti parametar --no-data kao što je prikazano u primjeru ispod: Mysqldump --no-data - uUSER -pPASSWORD DATABASE> /path/to/file/schema.sql Kao što je ranije spomenuto, ovi atributi smanjuju rezultujuću veličinu datoteke i ubrzavaju proces izrade sigurnosne kopije. Preciznije: -Q omota imena sa pozadinskim kvačicama -c vrši potpuno umetanje uključujući nazive kolona -e radi prošireni umetak. Ovaj post sadrži najčešće korišćene komande za kreiranje ili postavljanje rezervnih kopija MySQL baza podataka. Pa, samo sam umoran od stalnog guglanja ključeva kada mi "odjednom" zatrebaju. Malo teorije.. MySQLDUMP je alat koji vam omogućava da kreirate rezervne kopije MySQL baza podataka. Na izlazu dobijamo .sql fajl sa dumpom baze podataka. Ovaj fajl sadrži SQL kod u obliku teksta, tj. uvijek ga možete otvoriti u uređivaču teksta da pogledate, uredite, itd... Usput, postoji i takav uslužni program kao što je MySqlHotCopy, koji se najbolje koristi za kreiranje vrućih sigurnosnih kopija, jer stavlja bazu podataka na zaključavanje i kopira datoteke baze podataka na željenu lokaciju. Ali ova stvar će raditi samo ako je pokrenete na samom serveru, radi samo sa MyISAM i Archive tabelama i pogodnija je za velike baze podataka. Ali, generalno, ne radi se o njoj ... možda ću pisati o "vrućoj kopiji" u drugom članku ... Počnimo s najčešćom naredbom za ispis stranice site.ru u datoteku site.ru: Mysqldump -uroot -h10.30.30.10 -p site_ru> site_ru.sql Da biste napravili rezervnu kopiju nekoliko baza podataka, možete koristiti ključ -B i navedite više baza podataka, evo primjera: Mysqldump -uroot -h10.30.30.10 -p site_en site2_en site3_en> sites.sql Ako vam situacija ne daje vremena za razmišljanje i morate napraviti sigurnosnu kopiju svih baza podataka, tada u ovoj situaciji možete koristiti ključ —Sve baze podataka, evo primjera: Mysqldump -uroot -h10.30.30.10 -p -A> sve-db.sql Usput, postoji nijansa. Ako napravite sigurnosnu kopiju baze podataka na radnom, i osim toga, aktivno korištenom serveru, tada rizikujete da dobijete kršenje logičkih veza. Postoji nekoliko načina da to izbjegnete. Prvi način je zaključavanje stolova, tj. možete koristiti parametar --lock-tables, evo primjera: Mysqldump -uroot -h10.30.30.10 -p --lock-tables site_en> site_ru.sql Ali u vrijeme kreiranja sigurnosne kopije, zahtjevi klijenata će biti suspendovani... i stoga može doći do isteka. Drugi način je korištenje prekidača –flush-log prilikom kreiranja sigurnosne kopije. Ovaj ključ će zatvoriti stari dnevnik aktivnosti i kreirati novi. Ako neko nešto napiše u procesu kreiranja kopije, to će se odraziti na početku dnevnika i biće moguće prenijeti ovu promjenu u bazu podataka. Dalje, da biste bili sigurni, nakon završetka sigurnosne kopije, morate pokrenuti naredbu mysqladmin -flush-logs i ostaviti kopiju pretposljednjeg binarnog dnevnika. Uslužni program "mysql" će već vladati ovdje. Evo primjera: Mysql -uroot -h10.30.30.10 -p site_ru< site_ru.sql
Drugi način, pedantičniji: Mysql -uroot -p Unesite lozinku: Dobro došli na MySQL monitor. Komande završavaju sa; ili \ g. Vaš ID MySQL veze je 35 Verzija servera: 5.6.35-1 + deb.sury.org ~ xenial + 0.1 (Ubuntu) Autorska prava (c) 2000, 2016, Oracle i/ili njegove podružnice. Sva prava zadržana. Oracle je registrovani zaštitni znak kompanije Oracle Corporation i/ili njenih filijala. Druga imena mogu biti zaštitni znaci njihovih vlasnika. Upišite "help;" ili "\ h" za pomoć. Otkucajte "\ c" da obrišete trenutni unos. mysql> koristi site_ru; mysql> izvor site_ru.sql; Pa, ako je vaša baza podataka sačuvana u gz-arhivi, onda možete kombinovati naredbe mysql i zcat ovako: Zcat site_ru.sql.gz | mysql -uroot -h10.30.30.10 -p site_ru Na primjer, potrebna nam je baza podataka u dev zoni, da tako kažem, sandbox, a veličina glavne baze podataka je vrlo velika. Možete koristiti -where = "true limit 150" ključ, za koji ćemo eksplicitno navesti izbor podataka od najviše 150 zapisa. Evo primjera: Mysqldump -uroot -h10.30.30.10 -p --where = "true limit 150" site_en> site_en.sql Ako nam je potrebna samo struktura bez podataka, onda možemo koristiti -no-data ključ, evo primjera Mysqldump -uroot -h10.30.30.10 -p --bez podataka site_ru> site_ru.sql Ako nam je potrebna samo kopija jedne tabele, evo primjera naredbe: Mysqldump -u root -p testdb ime tablice> testdb_table_backup.sql Ako nam je potrebna kopija okidača, procedura i događaja (ugrađeni planer), evo primjera: Mysqldump --bez-kreirati-info --bez podataka --okidači --routine --događaji -uroot -p site_en | gzip> ~ / baza podataka.sql.gz Također možete odmah kreirati arhiviranu bazu podataka. Možete to učiniti ovako: Mysqldump -uroot -p site_en | gzip> /path/to/site_ru.sql.gz A možete odrediti i datum kada je arhiva kreirana, ovako: Mysqldump -uroot -p site_en | gzip> `datum + / putanja / do / site_ru.sql.% Y% m% d.% H% M% S.gz` Najpopularniji mysqldump prekidači će biti navedeni u nastavku: Proširite listu... Sasvim je lako i zgodno dampirate i vratite MySQL bazu podataka na daljinu preko SSH-a ili direktno preko serverske konzole. Daljinski, to se može učiniti pomoću programa Putty / Kitty. Također možete pokrenuti sljedeće primjere na Windows-u pokretanjem komandne linije ‘ cmd‘. Ispod su primjeri kako kreirati dumpove MySQL baze podataka, a zatim ih vratiti ako je potrebno, na primjer, za vašu web stranicu, online trgovinu ili bilo koji drugi projekat. Da biste izvršili ove komande, povežite se na daljinu sa svojim serverom preko SSH-a koristeći jedan od gore navedenih programa. Nakon povezivanja i autorizacije na server/hosting, možete unijeti naredbe ispod. # Napravite sigurnosnu kopiju jedne baze podataka u datoteci dump_file.sql mysqldump -uroot -p your_base> dump_file.sql # Na windows-u je najbolje napraviti dump sa malo drugačijom naredbom koja sprječava # slučajno prepisivanje redova damp-a zbog konverzije feed feeda znakovi "\ r \ n" u "\ n" mysqldump -uroot -p your_base -r dump_file_utf8.sql # Ako trebate napraviti sigurnosnu kopiju samo pojedinačnih tablica, a ne cijele baze podataka # (navedite imena tablica odvojene razmakom nakon baze podataka ime) mysqldump -uroot -p your_base TABLE1 TABLE2 TABLE3> dump_file.sql # Ako trebate napraviti sigurnosnu kopiju samo strukture baze podataka bez samih podataka mysqldump -uroot -p --no-data your_base> dump_file.sql # Sigurnosna kopija svih baze podataka u datoteku current_date.gz mysqldump -uroot -p --all_databases | gzip -c> "datum" +% Y-% m-% d "". gz # Sigurnosna kopija, gdje se kreira poseban INSERT # za svaki zapis i sa eksplicitnim naznakom UTF-8 baze podataka koja kodira mysqldump -uroot - p --default- skup znakova = utf8 vaša_baza --prošireni-insert = FALSE | gzip -c> "datum" +% Y-% m-% d ". gz # Napravite sigurnosnu kopiju jedne baze podataka u dump_file.sql datoteku mysqldump - uroot - p vaša_baza> dump_file. sql # Na Windowsima, najbolje je kreirati dump sa malo drugačijom komandom koja sprečava # slučajno prepisivanje dump linija zbog konverzije znakova za unos reda "\ r \ n" u "\ n" mysqldump - uroot - p vaša_baza - r dump_file_utf8. sql # Ako trebate napraviti sigurnosnu kopiju samo pojedinačnih tablica, a ne cijele baze podataka # (naznačavamo imena tabela odvojene razmakom iza naziva baze podataka) mysqldump - uroot - p vaša_baza TABLE1 TABLE2 TABLE3> dump_file. sql # Ako trebate napraviti sigurnosnu kopiju samo strukture baze podataka bez samih podataka mysqldump - uroot - p - ne - podaci vaša_baza> dump_file. sql # Napravite sigurnosnu kopiju svih baza podataka u datoteku current_date.gz mysqldump - uroot - p - sve_baze podataka | gzip - c> "datum" +% Y-% m-% d "". gz # Sigurnosna kopija, gdje se kreira poseban INSERT za svaki zapis # i eksplicitno specificirajući UTF-8 kodiranje baze podataka mysqldump - uroot - p - default - character - set = utf8 your_base - extended - insert = FALSE | gzip - c> "datum" +% Y-% m-% d "". gz U gornjem primjeru, uslužni program se koristi za kreiranje sigurnosne kopije mysqldump koji je uključen u mysql. Slijede parametri za kreiranje sigurnosne kopije baze podataka, koje ćemo detaljnije analizirati: "datum" +% Y-% m-% d "" "datum" +% Y-% m-% d "" Pažnja! Ako navedete samo ime datoteke, ona će biti sačuvana u istom direktorijumu u odnosu na koji izvršavate ovu naredbu. One. ako vidite nešto slično #
, gdje [email protected]
ovo je prijava i ime servera, tada će datoteka biti kreirana u direktoriju / Dom... Da biste promijenili pohranjivanje datoteke na drugu putanju, zamijenite ime punom putanjom za spremanje datoteke, na primjer: /var/www/backup/dump_file.sql. Sada pogledajmo obrnuti proces vraćanja baze podataka iz dump datoteke. Ova radnja se izvodi pomoću mysql programa. Pogledajmo odmah primjer.MySQLdump primjeri
Kreiranje deponije
mysqldump –uUSER -h82.82.82.82 -pPASSWORD DATABASE> /path/to/file/dump.sql Kreirajte strukturu baze podataka bez podataka
Kreirajte dump samo jedne ili više tablica baze podataka
mysqldump -uUSER -pPASSWORD BAZA PODATAKA TABLICA1 TABELA2 TABELA3> dump.sql Napravite dump i arhivirajte gagzip
mysqldump -u KORISNIK -pPASSWORD BAZA PODATAKA | gzip> /path/to/outputfile.sql.gz Kreirajte dump s datumom u nazivu datoteke
mysqldump -uUSER -pPASSWORD BAZA PODATAKA | gzip> `datum + dump.sql.% Y% m% d.% H% M% S.gz` Korištenje dodatnih atributa
mysqldump -Q -c -e -uUSER -pPASSWORD DATABASE> /path/to/file/dump.sql
Takav dump možete vratiti koristeći mysql uslužni program preko STDIN-a.
Možete oporaviti podatke kopiranjem sačuvanih datoteka u MySQL direktorij podataka.Kreiranje sigurnosne kopije baze podataka
Više o ključevima:
Vraćanje sigurnosne kopije baze podataka
Više slučajeva upotrebe za mysqldump
Ključevi za korištenje mysqldump
Izbacivanje MySQL baze podataka
nakon ovog reda, primjer navodi ekstenziju datoteke ' .gz‘. Ovo će kreirati fajl kao što je ' 2014-11-15.gz‘.
Oporavak baze podataka iz MySQL Dump datoteke