Ako je ukázané na odkaze vyššie, obsah celej databázy sa exportuje, dá sa exportovať s podmienkami? Samozrejme, že môžeš!
Príkaz:
Analýza parametrov:
- -h: Špecifikovať adresu databázy
- --port: Špecifikujte databázový port, ak je to predvolený port 3306, môže byť vynechaný
- -u: číslo účtu
- -p: heslo
- db_name: Toto sa týka toho, ktorú databázu exportovať
- tab_name: Toto sa týka toho, ktorú tabuľku exportovať
- --kde: kritériá filtra dát
- --no-create-info: exportuje iba dáta bez pridania príkazu CREATE TABLE.
Na konci sledujte cestu na miesto, kde potrebujete exportovať úložisko.
Ilustrovať:
-t: Iba orientačné údaje
--kde: stav
--triggers=false: Neviesť spúšťače
--nahradiť: Nahradiť INSERT INTO za REPLACE INTO
Parametre:
--všetko-databázy, -A
Exportujte všetky databázy.
mysqldump -uroot -p --all-databases
--všetky stolové priestory , -Y
Exportujte všetky tabuľkové priestory.
mysqldump -uroot -p --all-databases --all-tablespaces
--no-tablespaces , -y
Neexportujú sa žiadne informácie o stolovom priestore.
mysqldump -uroot -p --all-databases --no-tablespaces
--add-drop-database
Pridajte príkaz drop database pred vytvorením každej databázy.
mysqldump -uroot -p --all-databases --add-drop-databases
--add-drop-table
Pridajte príkaz drop table pred vytvorením každej dátovej tabuľky. (Predvolené je otvorené, použite možnosť --skip-add-drop-table na zrušenie)
mysqldump -uroot -p --all-databases (predvolene pridať príkaz drop)
mysqldump -uroot -p --all-databases –skip-add-drop-table (príkaz undrop)
--add-locks
Pred každým exportom tabuľky pridajte LOCK TABLES a potom UNLOCK TABLE. (predvolené je zapnuté, použite --skip-add-locks na zrušenie možnosti)
mysqldump -uroot -p --all-databases (príkaz LOCK je predvolene pridaný)
mysqldump -uroot -p --all-databases –skip-add-locks (príkaz unlock príkazu)
--povoliť-kľúčové slová
Umožňuje vytváranie názvov stĺpcov, ktoré sú kľúčové slová. To sa robí tak, že sa názov tabuľky pridáva každému názvu stĺpca.
mysqldump -uroot -p --all-databases --allow-keywords
--apply-slave-príkazy
Pridajte 'STOP SLAVE' pred 'ZMENIŤ MASTER' a 'ZAČAŤ SLAVE' na koniec exportu.
mysqldump -uroot -p --all-databases --apply-slave-príkazy
--character-sets-dir
Adresár súborov znakov
mysqldump -uroot -p --all-databases --character-sets-dir=/usr/local/mysql/share/mysql/charsets
--komentáre
Ďalšie poznámky. Je zapnutý predvolene a dá sa zrušiť pomocou --skip-comments
mysqldump -uroot -p --all-databases (predvolené komentáre záznamu)
mysqldump -uroot -p --all-databases --skip-comments (uncomment)
--kompatibilné
Exportované dáta budú kompatibilné s inými databázami alebo staršími verziami MySQL. Hodnoty môžu byť ANSI, MySQL323, MySQL40, PostgreSQL, Oracle, MSSQL, DB2, MaxDB, no_key_options, no_tables_options, no_field_options atď.
Ak chcete použiť viacero hodnôt, rozostupujte ich čiarkami. Nie je zaručené, že bude úplne kompatibilný, ale pokiaľ je to možné.
mysqldump -uroot -p --all-databases --compatible=ansi
--kompaktný
Exportujte menej výstupných informácií (na ladenie). Odstráňte štruktúry ako anotácie a hlavy a znaky. Možnosť je dostupná: --preskočiť-pridať-vypustiť-tabuľku --preskočiť-pridať-zámky --preskočiť-komentáre --preskočiť-vypnúť-kľúče
mysqldump -uroot -p --all-databases --compact
--úplné-vložiť, -c
Použite celý insert príkaz (vrátane názvu stĺpca). To môže zlepšiť účinnosť vkladania, ale môže byť ovplyvnené max_allowed_packet parametrami a spôsobiť zlyhanie zavádzania.
mysqldump -uroot -p --all-databases --complete-insert
--komprimovať, -C
Povoliť kompresiu na prenos všetkých informácií medzi klientom a serverom
mysqldump -uroot -p --all-databases --compress
--create-options, -a
Zahrňte všetky možnosti funkcií MySQL do príkazu CREATE TABLE. (Predvolené nastavenie je zapnuté)
mysqldump -uroot -p --all-databases
--databázy, -B
Exportujte niekoľko databáz. Všetky názvy parametrov po parametri sa považujú za názvy databáz.
mysqldump -uroot -p --databases test mysql
--debug
Výstup informácií o ladení na ladenie. Predvolená hodnota je: d:t:o,/tmp/mysqldump.trace
mysqldump -uroot -p --all-databases --debug
mysqldump -uroot -p --all-databases --debug=" d:t:o,/tmp/debug.trace"
--debug-check
Skontroluj pamäť a otvor súbor a ukonči to.
mysqldump -uroot -p --all-databases --debug-check
--debug-info
Výstupné informácie o ladení a výstup
mysqldump -uroot -p --all-databases --debug-info
--default-znaková sada
Nastavte predvolenú znakovú sadu, predvolená hodnota je utf8
mysqldump -uroot -p --all-databases --default-character-set=latin1
--oneskorené vloženie
INSERT DELAYED na export dát
mysqldump -uroot -p --all-databases --delayed-insert
--delete-master-logs
Hlavná záloha maže logy. Tento parameter automaticky aktivuje --master-data.
mysqldump -uroot -p --all-databases --delete-master-logs
--disaktiv-keys
Pre každú tabuľku použite /*!40000 ALTER TABLE tbl_name DISABLE KEYS */; a /*!40000 ALTER TABLE tbl_name POVOLIŤ KĽÚČE */; Vyhlásenie odkazuje na príkaz INSERT. To umožňuje rýchlejší import dumpovaných súborov, pretože po vložení všetkých riadkov vytvorí index. Táto možnosť je dostupná iba pre MyISAM tabuľky, ktoré predvolene nastavujú otvorený stav.
mysqldump -uroot -p --all-databases
--dump-slave
Táto možnosť spôsobí, že sa k súboru, z ktorého sú exportované dáta pripojené, pridá hlavný binlog a názov súboru. Keď je nastavený na 1, príkaz CHANGE MASTER sa použije na výstup do dátového súboru. Keď je nastavené na 2, pridajte vysvetľujúce informácie pred príkazom. Táto možnosť zapne --uzamknúť-všetky tabuľky, pokiaľ nie je špecifikovaná --single-transaction. Táto možnosť automaticky vypne možnosť --lock-tables. Predvolená hodnota je 0.
mysqldump -uroot -p --all-databases -dump-slave=1
mysqldump -uroot -p --all-databases -dump-slave=2
--udalosti, -E
Exportné podujatia.
mysqldump -uroot -p --all-databases --events
--rozšírené-insert, -e
Použite syntax INSERT s viacerými stĺpcami VALUES. To zmenšuje export súborov a urýchľuje import. Predvolene na otvorený stav, použite --skip-extended-insert na zrušenie možnosti.
mysqldump -uroot -p --all-databases
mysqldump -uroot -p --all-databases--skip-extended-insert (unoption)
--polia-ukončené-
Ignorujte dané polia v exportnom súbore. Používa sa s možnosťou --tab, nie pre možnosti --databázy a --all-databases
mysqldump -uroot -p test --tab="/home/mysql" --fields-terminated-by="#"
--polia-uzavreté
Jednotlivé polia vo výstupnom súbore sú obalené zadanými znakmi. Používa sa s možnosťou --tab, nie pre možnosti --databázy a --all-databases
mysqldump -uroot -p test --tab="/home/mysql" --fields-enclosed-by="#"
--fields-optionally-enclosed-by-by
Polia vo výstupnom súbore sú selektívne zabalené do daných znakov. Používa sa s možnosťou --tab, nie pre možnosti --databázy a --all-databases
mysqldump -uroot -p test test --tab="/home/mysql" --fields-enclosed-by="#" --fields-optionally-enclosed-by ="#"
--polia-uniknuté-
Jednotlivé polia vo výstupnom súbore ignorujú dané znaky. Používa sa s možnosťou --tab, nie pre možnosti --databázy a --all-databases
mysqldump -uroot -p mysql user --tab="/home/mysql" --fields-escaped-by="#"
--flush-logs
Obnovte logy pred začatím exportu.
Upozorňujeme: ak exportujete viacero databáz naraz (pomocou možností --databases alebo --all-databases), logy sa budú aktualizovať podľa jednotlivých databáz. Okrem použitia --lock-all-tables alebo --master-data. V takom prípade sa log obnoví raz a zodpovedajúca tabuľka sa zároveň uzamkne. Preto, ak plánujete súčasne exportovať a vyčistiť logy, mali by ste použiť --lock-all-tables alebo --master-data a --flush-logs.
mysqldump -uroot -p --all-databases --flush-logs
--flush-privilégiá
Po exporte databázy mysql vydajte príkaz FLUSH PRIVILEGES. Pre správne obnovenie by sa táto možnosť mala kedykoľvek použiť na export databázy MySQL a závislých dát databázy MySQL.
mysqldump -uroot -p --all-databases --flush-privileges
--sila
Ignorujte SQL chyby, ktoré sa vyskytujú počas exportu.
mysqldump -uroot -p --all-databases --force
--pomoc
Zobraziť informácie o pomoci a odísť.
mysqldump --pomoc
--hex-blob
Exportujte binárne reťazce pomocou hexadecimalného formátu. Táto možnosť sa musí použiť, ak sú dostupné binárne údaje. Postihnuté typy polí sú BINARY, VARBINARY a BLOB.
mysqldump -uroot -p --all-databases --hex-blob
--moderátor, -h
Informácie o hostiteľovi, ktoré je potrebné exportovať
mysqldump -uroot -p --host=localhost --all-databases
--ignore-table
Špecifikovaná tabuľka sa neexportuje. Pri špecifikovaní, že sa ignoruje viacero tabuliek, je potrebné to opakovať viackrát, po jednej tabuľke naraz. Každá tabuľka musí špecifikovať databázu aj názov tabuľky. Napríklad: --ignore-table=database.table1 --ignore-table=database.table2 ......
mysqldump -uroot -p --host=localhost --all-databases --ignore-table=mysql.user
--include-master-host-port
'CHANGE MASTER NA..' generované --dump-slave Pridajte do <host>výroku 'MASTER_HOST=,MASTER_PORT<port>='
mysqldump -uroot -p --host=localhost --all-databases --include-master-host-port
--insert-ignore
Pri vkladaní riadku použite príkaz INSERT IGNORE.
mysqldump -uroot -p --host=localhost --all-databases --insert-ignore
--riadky-ukončené
Každý riadok výstupného súboru je rozdelený daným reťazcom. Používa sa s možnosťou --tab, nie pre --databázy a --all-databases.
mysqldump -uroot -p --host=localhost test test --tab="/tmp/mysql" --lines-terminated-by="##"
--zamknúť-všetky-stoly, -x
Požiadajte o uzamknutie všetkých tabuliek vo všetkých databázach, aby ste zabezpečili konzistentnosť dát. Ide o globálny zámok čítania a možnosti --single-transaction a --lock-tables sú automaticky vypnuté.
mysqldump -uroot -p --host=localhost --all-databases --lock-all-tables
--zámkové stoly, -l
Zamknite všetky stoly pred začatím exportu. Uzamknite tabuľku pomocou READ LOCAL, aby sa MyISAM tabuľky vkladali paralelne. Pre tabuľky, ktoré podporujú transakcie, ako InnoDB a BDB,--single-transaction je lepšou voľbou, pretože vôbec nevyžaduje zamykanie tabuliek.
Všimnite si,-- že pri exporte viacerých databáz lock-tables uzamkne tabuľky pre každú databázu samostatne. Preto táto možnosť nezaručuje logickú konzistenciu medzi databázami pre tabuľky v exportovanom súbore. Stav exportu rôznych databázových tabuliek môže byť úplne odlišný.
mysqldump -uroot -p --host=localhost --all-databases --lock-tables
--log-chyba
Priložte varovania a chybové hlásenia k danému súboru
mysqldump -uroot -p --host=localhost --all-databases --log-error=/tmp/mysqldump_error_log.err
--master-data
Táto možnosť pridáva polohu a názov súboru binlogu k výstupnému súboru. Ak je to 1, zobrazí sa príkaz CHANGE MASTER; Ak je to 2, pridajte komentár pred výstupný príkaz ZMENIŤ MASTER. Možnosť zapne možnosť --lock-all-tables, pokiaľ nie je špecifikovaná aj --single- transakcia (v tomto prípade má globálny read lock krátky čas pri začiatku exportu; Pre iný obsah si prosím pozrite možnosť --single-transaction nižšie). Táto možnosť sa automaticky vypne – možnosť lock-tables.
mysqldump -uroot -p --host=localhost --all-databases --master-data=1;
mysqldump -uroot -p --host=localhost --all-databases --master-data=2;
--max_allowed_packet
Maximálna dĺžka paketu, ktorý server odoslal a prijal.
mysqldump -uroot -p --host=localhost --all-databases --max_allowed_packet=10240
--net_buffer_length
Veľkosť cache pre TCP/IP a socket pripojenia.
mysqldump -uroot -p --host=localhost --all-databases --net_buffer_length=1024
--no-autocommit
Použite príkaz autocommit/commit na zabalenie tabuľky.
mysqldump -uroot -p --host=localhost --all-databases --no-autocommit
--no-create-db, -n
Exportujte iba dáta bez pridania príkazu CREATE DATABASE.
mysqldump -uroot -p --host=localhost --all-databases --no-create-db
--no-create-info, -t
Exportujte iba dáta bez pridania príkazu CREATE TABLE.
mysqldump -uroot -p --host=localhost --all-databases --no-create-info
--no-data, -d
Neexportujú sa žiadne dáta, exportuje sa iba štruktúra databázovej tabuľky.
mysqldump -uroot -p --host=localhost --all-databases --no-data
--ne-názvy, -N
Ekvivalent --skip-set-charset
mysqldump -uroot -p --host=localhost --all-databases --no-set-names
--opt
Ekvivalent --pridaj-vypúšťaj-tabuľky, --pridávaj-zámkov, --vytváraj- možností, --rýchle, --rozšírené-vkladanie, --uzamknuteľné tabuľky, --nastaviť- postavy, --vypnúť-kľúče Táto možnosť je predvolene povolená a dá sa deaktivovať pomocou --skip-opt.
mysqldump -uroot -p --host=localhost --all-databases --opt
--poradie-po-primárnym
Ak existuje primárny kľúč alebo prvý unikátny kľúč, zoradite záznamy pre každú tabuľku. Toto funguje pri exporte MyISAM tabuliek do InnoDB tabuliek, ale proces exportu trvá dlho.
mysqldump -uroot -p --host=localhost --all-databases --order-by-primary
--heslo, -p
Pripojte heslo k databáze
--rúra (dostupná pre okná)
Pripojte sa k mysql pomocou pomenovaného pipeline
mysqldump -uroot -p --host=localhost --all-databases --pipe
--ľavo, -P
Pripojte sa na číslo portu databázy
--protokol
Používané protokoly spojenia, vrátane: tcp, socket, pipe, memory.
mysqldump -uroot -p --host=localhost --all-databases --protocol=tcp
--rýchlo, -q
Exportujte priamo do štandardného výstupu bez ukladania dopytov. Predvolené nastavenie je zapnuté, použite --skip-quick na zrušenie tejto možnosti.
mysqldump -uroot -p --host=localhost --all-databases
mysqldump -uroot -p --host=localhost --all-databases --skip-quick
--citáty-mená,-Q
Použite (') na spôsobenie názvov tabuliek a stĺpcov. Predvolené nastavenie je zapnuté, použite --skip-quote-names na zrušenie tejto možnosti.
mysqldump -uroot -p --host=localhost --all-databases
mysqldump -uroot -p --host=localhost --all-databases --skip-quote-names
--nahradiť
Použite REPLACE INTO na nahradenie INSERT INTO.
mysqldump -uroot -p --host=localhost --all-databases --replace
--result-file, -r
Výstup priamo do špecifikovaného súboru. Táto možnosť by sa mala používať na systémoch, ktoré používajú wrapovanie nových riadkov (napr. DOS, Windows). Táto možnosť zabezpečuje, že sa použije iba jeden riadok.
mysqldump -uroot -p --host=localhost --all-databases --result-file=/tmp/mysqldump_result_file.txt
--rutiny, -R
Exportujte uložené procedúry aj vlastné funkcie.
mysqldump -uroot -p --host=localhost --all-databases --routines
--set-charset
Pridajte do výstupného súboru 'SET NAMES default_character_set'. Predvolene na otvorený stav, použite --skip-set-charset na zatvorenie tejto možnosti.
mysqldump -uroot -p --host=localhost --all-databases
mysqldump -uroot -p --host=localhost --all-databases --skip-set-charset
--jednorazová transakcia
Táto možnosť odošle príkaz BEGIN SQL pred exportom dát, ktorý neblokuje žiadnu aplikáciu a zaručuje konzistentný stav databázy v čase exportu. Funguje len s viacverziami úložiskových enginov, iba s InnoDB. Táto možnosť a možnosť --lock-tables sa navzájom vylučujú, pretože LOCK TABLES implicitne zaviaže akúkoľvek čakajúcu transakciu. Ak chcete exportovať veľkú tabuľku, mali by ste použiť možnosť --quick v kombinácii.
mysqldump -uroot -p --host=localhost --all-databases --single-transaction
--dátum odchodu
Pridajte čas exportu do výstupného súboru. Predvolene nastavte otvorený stav, použite možnosť --skip-dump-date na zatvorenie.
mysqldump -uroot -p --host=localhost --all-databases
mysqldump -uroot -p --host=localhost --all-databases --skip-dump-date
--skip-opt
Vypnite možnosť –opt.
mysqldump -uroot -p --host=localhost --all-databases --skip-opt
--zásuvka,-S
Zadajte umiestnenie socket súboru, ktorý sa pripája k mysql, a predvolená cesta je /tmp/mysql.sock
mysqldump -uroot -p --host=localhost --all-databases --socket=/tmp/mysqld.sock
--tab,-T
Vytvorte textový súbor rozdelený tabulátormi pre každú tabuľku v danej ceste. Poznámka: Len pre servery mysqldump a mysqld bežiace na tom istom stroji.
mysqldump -uroot -p --host=localhost test test --tab="/home/mysql"
--tabuľky
Prepíšte parameter --databases (-B) a zadajte názov tabuľky, ktorý sa má exportovať.
mysqldump -uroot -p --host=localhost --databases test --tables test
--spúšťače
Exportné spúšťače. Táto možnosť je predvolene zapnutá, vypnite ju pomocou --skip-triggers.
mysqldump -uroot -p --host=localhost --all-databases --triggers
--tz-utc
Nastavte časové pásmo TIME_ZONE='+00:00' na začiatku exportu, aby ste zabezpečili správnosť údajov TIMESTAMP exportovaných v rôznych časových pásmach alebo pri presune údajov do iného časového pásma.
mysqldump -uroot -p --host=localhost --all-databases --tz-utc
--užívateľ, -u
Zadajte používateľské meno spojenia.
--rozvláčne, --v
Výstup informácií o viacerých platformách.
--verzia, -V
Výstup a výstup informácií o verzii mysqldump
--kde, -w
Dumpujú sa iba záznamy vybrané pre danú podmienku WHERE. Všimnite si, že ak podmienka obsahuje medzeru alebo znak špecifickú pre interpret príkazov, nezabudnite na túto podmienku odkazovať.
mysqldump -uroot -p --host=localhost --all-databases --where=" user='root'"
--xml, -X
Exportujte XML formát.
mysqldump -uroot -p --host=localhost --all-databases --xml
--plugin_dir
Adresár pluginov na strane klienta pre kompatibilitu s rôznymi verziami pluginov.
mysqldump -uroot -p --host=localhost --all-databases --plugin_dir="/usr/local/lib/plugin"
--default_auth
Klientské pluginy používajú povolenia ako predvolené.
mysqldump -uroot -p --host=localhost --all-databases --default-auth="/usr/local/lib/plugin/<PLUGIN>"
|