Autor | Zpráva | ||
---|---|---|---|
Marcel13333 Profil * |
#1 · Zasláno: 27. 9. 2015, 20:19:00
Zdravim, potreboval by som vylepsit mysqldump na export:
mysqldump --defaults-file=/cesta/heslu --protocol=socket -S /tmp/db50.sock --skip-opt --quote-names --complete-insert --extended-insert --quick --compact --lock-tables=false --skip-add-locks --net_buffer_length=50000 databaza | gzip > databaza.gz Mam tabulky MyISAM no pri importe maju default ako je mysql server nastaveny cize vsetky su innodb, import trva strasne dlho, predpokladam ze tam nemam nastaveny nejaky max. insert limit, ako by to slo spravit? |
||
juriad Profil |
#2 · Zasláno: 27. 9. 2015, 22:20:30
Asi bych přidal:
--disable-keys (zakáže klíče a indexy v průběhu insertů)
--create-options (nejspíš způsobí přidání klauzule ENGINE pro tvorbu MyISAM tabulek)
--order-by-primary (pokud chceš na cílové mašině mít InnoDB a nevadí ti delší dump)
Vyhodil bych: --compact (nepřijde mi užitečný, čas se tím neušetří)
--skip-opt (raději si nastav jednotlivé volby manuálně, některé se mi nelíbí a konfliktují s výše navrženými)
|
||
Marcel13333 Profil * |
#3 · Zasláno: 27. 9. 2015, 22:38:19
diky a ako vyriesit to aby nasledujuci import netrval tak strasne dlho? ak si zalohu spravim cez heidisql s vyssim max insert size, tak mi import cez mysqldump spravi ovela rychlejsie ako ked zalohujem databazu automaticky cez mysqldump
|
||
Kajman Profil |
#4 · Zasláno: 27. 9. 2015, 23:51:41
Pro velké tabulky může být rychlejší select into outfile do csv a následný import přes load data infile nebo mysqlimport. Jen je to potřeba dělat pro každou tabulku zvlášť a strukuru tabulky mít už načtenou.
|
||
Marcel13333 Profil * |
#5 · Zasláno: 28. 9. 2015, 11:46:07
To by som musel kazdu tabulku prepdokladam zvlast exportovat, to sa mi moc nechce a nema mysqldump nejaky parameter ako nastavit max dat na insert?
|
||
juriad Profil |
#6 · Zasláno: 28. 9. 2015, 12:00:04
Marcel13333:
Podívej se na výstup té HeidySQL a porovnej to s výstupem mysqldumpu. A pak si najdi parametr (popsané jsou na dev.mysql.com/doc/refman/5.0/en/mysqldump.html), který se tomu výstupu přiblíží. |
||
Marcel13333 Profil * |
#7 · Zasláno: 28. 9. 2015, 18:11:23
parameter -e mi stacil pozuti :-) diky
|
||
juriad Profil |
#8 · Zasláno: 28. 9. 2015, 18:14:46
-e je zkratka za --extended-insert , což už máš v [#1] uvedené, nejspíš se to tedy tluče s tím --quick, které je uvedené po něm.
|
||
Časová prodleva: 9 let
|
0