Kot je prikazano na zgornji povezavi, se vsebina celotne baze podatkov izvozi, ali jo je mogoče izvoziti z določenimi pogoji? Seveda lahko!
Ukaz:
Analiza parametrov:
- -h: Določite naslov baze podatkov
- --port: Določite podatkovni port, če je privzeti port 3306, ga lahko izpustite
- -u: številka računa
- -p: geslo
- db_name: To se nanaša na to, katero bazo podatkov izvoziti
- tab_name: To se nanaša na to, katero tabelo izvoziti
- --kjer: kriteriji za filtriranje podatkov
- --no-create-info: izvaža le podatke brez dodajanja stavka CREATE TABLE.
Na koncu sledi poti do lokacije, kjer moraš izvoziti shrambo.
Ponazoritev:
-t: Samo vodilni podatki
--kjer: stanje
--triggers=false: Ne vodite sprožilcev
--zamenjaj: Zamenjaj INSERT INTO z REPLACE INTO
Parametri:
--vse-baze podatkov, -A
Izvozite vse baze podatkov.
mysqldump -uroot -p --all-databases
--vse-mizni prostori , -Y
Izvozi vse tabele.
mysqldump -uroot -p --all-databases --all-tablespaces
--brez mizičnih prostorov , -y
Informacije iz namiznega prostora se ne izvozijo.
mysqldump -uroot -p --all-databases --no-tablespaces
--dodaj-spusti-bazo podatkov
Dodajte ukaz za drop database, preden je vsaka baza ustvarjena.
mysqldump -uroot -p --all-databases --add-drop-databases
--add-drop-table
Dodajte stavek drop table pred ustvarjanjem vsake podatkovne tabele. (Privzeto je odprto, uporabi --preskoči-dodaj-spusti-tabelo za preklic)
mysqldump -uroot -p --all-databases (add drop stavek privzeto)
mysqldump -uroot -p --all-databases –skip-add-drop-table (undrop stavek)
--add-locks
Pred vsakim izvozom tabele dodajte LOCK TABLES in nato UNLOCK TABLE. (privzeto je vklopljeno, uporabi --preskoči-dodaj-zaklepanje za preklic možnosti)
mysqldump -uroot -p --all-databases (ukaz LOCK je privzeto dodan)
mysqldump -uroot -p --all-databases –skip-add-locks (unlock stavek)
--dovoljeno-ključne besede
Omogoča ustvarjanje imen stolpcev, ki so ključne besede. To se izvede tako, da se ime tabele predpona vsakemu imenu stolpca.
mysqldump -uroot -p --all-databases --allow-keywords
--apply-slave-stavki
Dodajte 'STOP SLAVE' pred 'CHANGE MASTER' in 'START SLAVE' na koncu izvoza.
mysqldump -uroot -p --all-databases --apply-slave-statements
--nabori znakov-dir
Imenik datotek znakovnega nabora
mysqldump -uroot -p --all-databases --character-sets-dir=/usr/local/mysql/share/mysql/charsets
--komentarji
Dodatne informacije. Privzeto je vklopljen in ga je mogoče preklicati z --skip-comments
mysqldump -uroot -p --all-databases (privzeti komentarji zapisov)
mysqldump -uroot -p --all-databases --skip-comments (uncomment)
--združljiv
Izvoženi podatki bodo združljivi z drugimi bazami podatkov ali starejšimi različicami MySQL. Vrednosti so lahko ANSI, MySQL323, MySQL40, PostgreSQL, Oracle, MSSQL, DB2, MaxDB, no_key_options, no_tables_options, no_field_options itd.
Če želite uporabiti več vrednosti, jih razmikajte z vejicami. Ni zagotovljeno, da bo popolnoma združljiv, a kolikor je mogoče.
Mysqldump -uroot -p --all-databases --compatible=ansi
--kompaktno
Izvozi manj izhodnih podatkov (za razhroščevanje). Odstranite strukture, kot so opombe ter glave in cifra. Na voljo je možnost: --preskoči-dodaj-spusti-tabelo --preskoči-dodaj-zaklepe --preskoči-komentarje --preskoči-onemogoči ključe
mysqldump -uroot -p --all-databases --compact
--popolno-vstavljaj, -c
Uporabite celoten insert stavek (vključno z imenom stolpca). To lahko izboljša učinkovitost vstavljanja, vendar je lahko prizadeto zaradi max_allowed_packet parametrov in povzroči neuspehe vstavljanja.
mysqldump -uroot -p --all-databases --complete-insert
--stisni, -C
Omogočite kompresijo za prenos vseh informacij med odjemalcem in strežnikom
mysqldump -uroot -p --all-databases --compress
--create-options, -a
Vse možnosti funkcij MySQL vključite v ukaz CREATE TABLE. (Privzeto je vklopljeno)
mysqldump -uroot -p --all-databases
--baze podatkov, -B
Izvozite več baz podatkov. Vsi parametri imen po parametru se obravnavajo kot imena baz podatkov.
mysqldump -uroot -p --databases test mysql
--debug
Izpisujte informacije o odpravljanju napak za razhroščevanje. Privzeta vrednost 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
Preveri pomnilnik in odpri navodila za odpiranje datoteke ter izhod.
mysqldump -uroot -p --all-databases --debug-check
--debug-info
Izhod informacij o razhroščevanju in izhod
mysqldump -uroot -p --all-databases --debug-info
--privzeti-nabor znakov
Nastavite privzeti nabor znakov, privzeta vrednost je utf8
mysqldump -uroot -p --all-databases --default-character-set=latin1
--zakasnjena vstavitev
INSERT DELAYED za izvoz podatkov
mysqldump -uroot -p --all-databases --delayed-insert
--delete-master-logs
Glavna varnostna kopija briše dnevnike. Ta parameter bo samodejno aktiviral --master-data.
mysqldump -uroot -p --all-databases --delete-master-logs
--disable-keys
Za vsako tabelo uporabite /*!40000 ALTER TABLE tbl_name DISABLE KEYS */; in /*!40000 ALTER TABLE tbl_name OMOGOČITVENE KLJUČE */; Izjava se nanaša na izjavo INSERT. To omogoča hitrejši uvoz izpisanih datotek, saj po vstavljanju vseh vrstic ustvari indeks. Ta možnost je na voljo le za MyISAM tabele, ki privzeto nastavijo odprto stanje.
mysqldump -uroot -p --all-databases
--dump-slave
Ta možnost bo povzročila, da se glavna lokacija binloga in ime datoteke dodata datoteki, iz katere so izvoženi podatki. Ko je nastavljen na 1, se za izhod v podatkovno datoteko uporabi ukaz CHANGE MASTER. Ko je nastavljeno na 2, dodajte pojasnjevalne informacije pred ukazom. Ta možnost bo vklopila --zakleni vse tabele, razen če ni določena --enojna transakcija. Ta možnost samodejno izklopi možnost --lock-tables. Privzeta vrednost je 0.
mysqldump -uroot -p --all-databases --dump-slave=1
mysqldump -uroot -p --all-databases --dump-slave=2
--dogodkov, -E
Izvoz dogodkov.
mysqldump -uroot -p --all-databases --events
--podaljšano-vstavljanje, -e
Uporabite sintakso INSERT z več stolpci VALUES. To poenostavi izvoz datotek in pospeši uvoz. Privzeto v odprto stanje uporabite možnost --skip-extended-insert za preklic.
mysqldump -uroot -p --all-databases
mysqldump -uroot -p --all-databases--skip-extended-insert (unoption)
--polja-terminirana-z
Ignorirajte podata polja v izvozni datoteki. Uporablja se z možnostjo --zavihek, ne pa za možnosti --baze podatkov in --vse baze podatkov
mysqldump -uroot -p test test --tab="/home/mysql" --fields-terminated-by="#"
--polja-obdana
Posamezna polja v izhodni datoteki so ovita z danimi znaki. Uporablja se z možnostjo --zavihek, ne pa za možnosti --baze podatkov in --vse baze podatkov
mysqldump -uroot -p test test --tab="/home/mysql" --fields-enclosed-by="#"
--polja-opcijsko-zaprto-z
Polja v izhodni datoteki se selektivno ovijejo z danimi znaki. Uporablja se z možnostjo --zavihek, ne pa za možnosti --baze podatkov in --vse baze podatkov
mysqldump -uroot -p test test --tab="/home/mysql" --fields-enclosed-by="#" --fields-optionally-enclosed-by ="#"
--polja-pobegni-stran
Posamezna polja v izhodni datoteki ignorirajo dane znake. Uporablja se z možnostjo --zavihek, ne pa za možnosti --baze podatkov in --vse baze podatkov
mysqldump -uroot -p mysql user --tab="/home/mysql" --fields-escaped-by="#"
--flush-log
Pred začetkom izvoza osvežite dnevnike.
Prosimo, upoštevajte: če izvažate več baz podatkov hkrati (z uporabo možnosti --databases ali --all-databases), se bodo dnevniki osveževali za vsako bazo podatkov. Razen z uporabo --lock-all-tables ali --master-data. V tem primeru se dnevnik osveži enkrat, ustrezna tabela pa se hkrati zaklene. Zato, če nameravate istočasno izvoziti in izpočiti dnevnike, uporabite --lock-all-tables ali --master-data in --flush-logs.
mysqldump -uroot -p --all-databases --flush-logs
--privilegije flusha
Po izvozu baze mysql izdajte ukaz FLUSH PRIVILEGES. Za pravilno obnovitev je treba to možnost uporabiti za izvoz MySQL baze podatkov in odvisnih MySQL podatkovnih podatkov kadarkoli.
mysqldump -uroot -p --all-databases --flush-privileges
--sila
Ignorirajte SQL napake, ki se pojavijo med izvozom.
mysqldump -uroot -p --all-databases --force
--pomoč
Prikaži informacije o pomoči in izhod.
mysqldump --pomoč
--hex-blob
Izvozite binarna polja nizov z uporabo heksadecimalnega formata. To možnost je treba uporabiti, če so na voljo binarni podatki. Prizadeti tipi polj so BINARY, VARBINARY in BLOB.
mysqldump -uroot -p --all-databases --hex-blob
--voditelj, -h
Informacije o gostitelju, ki jih je treba izvoziti
mysqldump -uroot -p --host=localhost --all-databases
--ignore-table
Določena tabela ni izvožena. Ko določamo, da se več tabel ignorira, je treba to ponoviti večkrat, eno tabelo naenkrat. Vsaka tabela mora navesti tako podatkovno bazo kot ime tabele. Na primer: --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 V..' ustvarjeno s strani --dump-slave Dodajte 'MASTER_HOST<host>=,MASTER_PORT<port>=' v izjavo
mysqldump -uroot -p --host=localhost --all-databases --include-master-host-port
--vstavi-ignoriraj
Pri vstavljanju vrstice uporabite ukaz INSERT IGNORE.
mysqldump -uroot -p --host=localhost --all-databases --insert-ignore
--linije-zaključene z
Vsaka vrstica izhodne datoteke je razdeljena z določenim nizom. Uporablja se z možnostjo --zavihek, ne pa za --baze podatkov in --vse-baze podatkov.
mysqldump -uroot -p --host=localhost test test --tab="/tmp/mysql" --lines-terminated-by="##"
--zakleni-vse-mize, -x
Pošljite zahtevo za zaklepanje vseh tabel v vseh podatkovnih bazah, da zagotovite skladnost podatkov. To je globalno zaklepanje branja, možnosti --enkratna transakcija in --zaklepne tabele pa sta samodejno izklopljeni.
mysqldump -uroot -p --host=localhost --all-databases --lock-all-tables
--zaklenjene mize, -l
Zakleni vse mize pred začetkom izvoza. Zaklenite tabelo z READ LOCAL, da omogočite vstavljanje MyISAM tabel vzporedno. Za tabele, ki podpirajo transakcije, kot sta InnoDB in BDB,--ena transakcija je boljša možnost, ker sploh ne zahteva zaklepanja tabel.
Upoštevajte,-- da pri izvozu več baz podatkov zaklepanje tabel za vsako bazo ločeno zaklene tabele. Zato ta možnost ne zagotavlja logične skladnosti med podatkovnimi bazami za tabele v izvoženi datoteki. Status izvoza različnih tabel baze podatkov je lahko popolnoma različen.
mysqldump -uroot -p --host=localhost --all-databases --lock-tables
--log-napaka
Na določeno datoteko pripnite opozorila in sporočila o napakah
mysqldump -uroot -p --host=localhost --all-databases --log-error=/tmp/mysqldump_error_log.err
--master-data
Ta možnost doda lokacijo in ime datoteke binloga izhodni datoteki. Če je 1, se izpiše ukaz CHANGE MASTER; Če je 2, dodajte komentar pred izhodnim ukazom CHANGE MASTER. Možnost bo vklopila možnost --zakleni vse-tabele, razen če je določena tudi --enkratna- transakcija (v tem primeru globalna zaklep za branje dobi kratek čas, ko se izvoz začne; Za drugo vsebino si oglejte možnost --enkratna transakcija spodaj). Ta možnost je samodejno izklopljena --možnost zaklepanja tabel.
mysqldump -uroot -p --host=localhost --all-databases --master-data=1;
mysqldump -uroot -p --host=localhost --all-databases --master-data=2;
--max_allowed_packet
Največja dolžina paketa, ki ga strežnik pošlje in sprejme.
mysqldump -uroot -p --host=localhost --all-databases --max_allowed_packet=10240
--net_buffer_length
Velikost predpomnilnika za TCP/IP in socket povezave.
mysqldump -uroot -p --host=localhost --all-databases --net_buffer_length=1024
--no-autocommit
Uporabite stavek autocommit/commit za ovijanje tabele.
mysqldump -uroot -p --host=localhost --all-databases --no-autocommit
--no-create-db, -n
Izvozite le podatke brez dodajanja ukaza CREATE DATABASE.
mysqldump -uroot -p --host=localhost --all-databases --no-create-db
--no-create-info, -t
Izvozite le podatke brez dodajanja ukaza CREATE TABLE.
mysqldump -uroot -p --host=localhost --all-databases --no-create-info
--no-data, -d
Podatki se ne izvozijo, izvozi se le struktura tabele baze podatkov.
mysqldump -uroot -p --host=localhost --all-databases --no-data
--brez določenih imen, -N
Ekvivalent --skip-set-charset
mysqldump -uroot -p --host=localhost --all-databases --no-set-names
--opt
Ekvivalent --dodaj-spusti-tabelo, --dodaj-zaklepov, --ustvari-možnosti, --hitro, --razširjeno-vstavi, --zaklenitve-tabele, --nastavi- likov, --one-one-keys Ta možnost je privzeto omogočena in jo je mogoče onemogočiti z --skip-opt.
mysqldump -uroot -p --host=localhost --all-databases --opt
--red-po-primarni
Če obstaja primarni ključ ali prvi edinstven ključ, razvrstite zapise za vsako tabelo. To deluje pri izvozu MyISAM tabel v InnoDB tabele, vendar postopek izvoza traja dolgo.
mysqldump -uroot -p --host=localhost --all-databases --order-by-primary
--geslo, -p
Povežite geslo za bazo podatkov
--cev (na voljo za okna)
Povežite se z mysql z uporabo poimenovanega cevovoda
mysqldump -uroot -p --host=localhost --all-databases --pipe
--levo, -P
Povežite se s številko priključka baze podatkov
--protokol
Uporabljeni protokoli povezave, vključno z: tcp, socket, pipe, pomnilnik.
mysqldump -uroot -p --host=localhost --all-databases --protocol=tcp
--hitro, -q
Izvozite neposredno na standardni izhod brez predpomnilnika poizvedb. Privzeto je vklopljeno, uporabi --skip-quick za preklic te možnosti.
mysqldump -uroot -p --host=localhost --all-databases
mysqldump -uroot -p --host=localhost --all-databases --skip-quick
--citati-imena,-Q
Uporabite (') za povzročanje imen tabel in stolpcev. Privzeto je vklopljeno, uporabite --skip-quote-names za preklic te možnosti.
mysqldump -uroot -p --host=localhost --all-databases
mysqldump -uroot -p --host=localhost --all-databases --skip-quote-names
--zamenjaj
Uporabi REPLACE INTO za zamenjavo INSERT INTO.
mysqldump -uroot -p --host=localhost --all-databases --replace
--datoteka rezultatov, -r
Izhod neposredno v določeno datoteko. To možnost je treba uporabljati na sistemih, ki uporabljajo ovijanje novih vrstic (npr. DOS, Windows). Ta možnost zagotavlja, da se uporablja le ena vrstica.
mysqldump -uroot -p --host=localhost --all-databases --result-file=/tmp/mysqldump_result_file.txt
--rutine, -R
Izvozite shranjene postopke in prilagojene funkcije.
mysqldump -uroot -p --host=localhost --all-databases --routines
--set-charset
Dodajte 'SET NAMES default_character_set' v izhodno datoteko. Privzeto v odprtem stanju uporabi --skip-set-charset za zapiranje možnosti.
mysqldump -uroot -p --host=localhost --all-databases
mysqldump -uroot -p --host=localhost --all-databases --skip-set-charset
--enkratna transakcija
Ta možnost pred izvozom podatkov pošlje BEGIN SQL stavek, ki ne blokira nobene aplikacije in zagotavlja dosledno stanje baze podatkov ob izvozu. Deluje samo z večverzijskimi pogoni za shranjevanje, samo z InnoDB. Ta možnost in možnost --lock-tables sta medsebojno izključujoči, saj LOCK TABLES implicitno potrdi vsako čakajočo transakcijo. Če želite izvoziti veliko tabelo, uporabite možnost --quick v kombinaciji.
mysqldump -uroot -p --host=localhost --all-databases --single-transaction
--datum odlaganja
Dodaj čas izvoza v izhodno datoteko. Privzeto na odprto stanje, uporabi možnost --skip-dump-date za zaprtje.
mysqldump -uroot -p --host=localhost --all-databases
mysqldump -uroot -p --host=localhost --all-databases --skip-dump-date
--skip-opt
Onemogoči možnost –opt.
mysqldump -uroot -p --host=localhost --all-databases --skip-opt
--vtičnica,-S
Določite lokacijo socket datoteke, ki se povezuje z mysql, privzeta pot pa je /tmp/mysql.sock
mysqldump -uroot -p --host=localhost --all-databases --socket=/tmp/mysqld.sock
--tab,-T
Za vsako tabelo v določeni poti ustvarite besedilno datoteko, razdeljeno na tabulature. Opomba: Samo za strežnike mysqldump in mysqld, ki tečeta na istem računalniku.
mysqldump -uroot -p --host=localhost test test --tab="/home/mysql"
--mize
Preglasite parameter --databases (-B) in določite ime tabele, ki jo želimo izvoziti.
mysqldump -uroot -p --host=localhost --databases test --tables test
--sprožilci
Sprožilci izvoza. Ta možnost je privzeto omogočena, onemogočite jo z --skip-triggers.
mysqldump -uroot -p --host=localhost --all-databases --triggers
--tz-utc
Nastavite časovni pas TIME_ZONE='+00:00' na vrhu izvoza, da zagotovite pravilnost podatkov TIMESTAMP, izvoženih v različnih časovnih pasovih ali ob premiku podatkov v drug časovni pas.
mysqldump -uroot -p --host=localhost --all-databases --tz-utc
--uporabnik, -u
Določite uporabniško ime povezave.
--besedno, --v
Izhod informacij o več platformah.
--version, -V
Izhod informacij o različici mysqldump in izhod
--kje, -w
Izločijo se le zapisi, izbrani za dano stanje WHERE. Upoštevajte, da če pogoj vsebuje razmik ali znak, specifičen za interpretatorja ukazov, se prepričajte, da ga navedete.
mysqldump -uroot -p --host=localhost --all-databases -where=" user='root'"
--xml, -X
Izvoz XML formata.
mysqldump -uroot -p --host=localhost --all-databases --xml
--plugin_dir
Imenik vtičnikov na strani odjemalca za združljivost z različnimi različicami vtičnikov.
mysqldump -uroot -p --host=localhost --all-databases --plugin_dir="/usr/local/lib/plugin"
--default_auth
Odjemalski vtičniki privzeto uporabljajo dovoljenja.
mysqldump -uroot -p --host=localhost --all-databases --default-auth="/usr/local/lib/plugin/<PLUGIN>"
|