Denna artikel är en spegelartikel om maskinöversättning, klicka här för att hoppa till originalartikeln.

Utsikt: 18434|Svar: 2

[Källa] MySQL använder mysqldump för att exportera data med villkor

[Kopiera länk]
Publicerad på 2019-04-26 16:07:23 | | | |

MySQL-databasbackup och export
https://www.itsvse.com/thread-4004-1-1.html
(Källa: Architect_Programmer)
MySQLDUMP importerar och exporterar databassammanfattningar
https://www.itsvse.com/thread-4353-1-1.html
(Källa: Architect_Programmer)
MySQLDUMP Exports Database "Access Denied"
https://www.itsvse.com/thread-4005-1-1.html
(Källa: Architect_Programmer)

Som visas i länken ovan exporteras innehållet i hela databasen, kan det exporteras med villkor? Självklart kan du det!


Befallning:

Parameteranalys:

  • -h: Ange databasadressen
  • --port: Ange databasporten, om det är standardporten 3306 kan den utelämnas
  • -u: kontonummer
  • -P: lösenord
  • db_name: Detta avser vilken databas som ska exporteras
  • tab_name: Detta avser vilken tabell som ska exporteras
  • --där: Datafilterkriterier
  • --no-create-info: exporterar endast data utan att lägga till ett CREATE TABLE-sats.


I slutet följer du vägen till platsen där du behöver exportera lagringen.

Illustrera:

-t: Endast vägledningsdata

--där: villkor

--triggers=false: Styr inte triggers

--ersätt: Byt ut INSERT INTO med REPLACE INTO



Parametrar:

--alla-databaser , -A

Exportera alla databaser.

mysqldump -uroot -p --all-databases

--alla-tabellrum , -Y

Exportera alla tabellutrymmen.

mysqldump -uroot -p --all-databases --all-tablespaces

--no-tablespaces , -y

Ingen tabellrymdsinformation exporteras.

mysqldump -uroot -p --all-databases --no-tablespaces

--add-drop-database

Lägg till en dropdatabas-sats innan varje databas skapas.

mysqldump -uroot -p --all-databases --add-drop-database

--add-drop-table

Lägg till en drop table-sats innan varje datatabell skapas. (Standard är öppet, använd --skip-add-drop-table to cancel)

mysqldump -uroot -p --all-databases (add drop-satsen som standard)

mysqldump -uroot -p --all-databases –skip-add-drop-table (unNStop-satsen)

--add-locks

Lägg till LÅSTABELLER före varje tabellexport och LÅS UPP TABELL efteråt. (standard är på, använd --skip-add-locks to cancel-alternativet)

mysqldump -uroot -p --all-databases (LOCK-satsen läggs till som standard)

mysqldump -uroot -p --all-databases –skip-add-locks (unlock-sats)

--tillåt-nyckelord

Tillåter skapandet av kolumnnamn som är nyckelord. Detta görs genom att förefästa tabellnamnet på varje kolumnnamn.

mysqldump -uroot -p --all-databases --allow-keywords

--apply-slave-satser

Lägg till 'STOP SLAVE' före 'BYT MÄSTARE' och 'START SLAVE' i slutet av exporten.

mysqldump -uroot -p --all-databases --apply-slave-statements

--teckenuppsättningar-dir.

Katalog över teckenuppsättningsfiler

mysqldump -uroot -p --all-databases --character-sets-dir=/usr/local/mysql/share/mysql/charsets

--kommentarer

Ytterligare information om anteckningar. Den är påslagen som standard och kan avbrytas med --skip-comments.

mysqldump -uroot -p --all-databases (standardkommentarer om posten)

mysqldump -uroot -p --all-databases --skip-comments (avkommentar)

--kompatibel

Den exporterade datan kommer att vara kompatibel med andra databaser eller äldre versioner av MySQL. Värdena kan vara ANSI, MySQL323, MySQL40, PostgreSQL, Oracle, MSSQL, DB2, MaxDB, no_key_options, no_tables_options, no_field_options, etc.

För att använda flera värden, sprid dem med kommatecken. Det är inte garanterat att vara helt kompatibelt, men så mycket som möjligt.

mysqldump -uroot -p --all-databases --compatible=ansi

--kompakt

Exportera mindre utdata (för felsökning). Ta bort strukturer som anteckningar och krona och klave. Alternativet finns: --hoppa-lägga till-ned-tabell --hoppa-lägga till lås --hoppa-kommentarer--hoppa-avaktivera-nycklar

mysqldump -uroot -p --all-databases --compact

--komplett-insert, -c

Använd hela insättningssatsen (inklusive kolumnnamnet). Detta kan förbättra insättningseffektiviteten, men kan påverkas av max_allowed_packet parametrar och orsaka insättningsfel.

mysqldump -uroot -p --all-databases --complete-insert

--komprimera, -C

Aktivera komprimering för att skicka all information mellan klienten och servern

mysqldump -uroot -p --all-databases --compress

--skapa-alternativ, -a

Inkludera alla MySQL-funktioner i satsen CREATE TABLE. (Standard är på)

mysqldump -uroot -p --all-databases

--databaser, -B

Exportera flera databaser. Alla namnparametrar efter parametern behandlas som databasnamn.

mysqldump -uroot -p --databaser test mysql

--debug

Lämna ut felsökningsinformation för felsökning. Standardvärdet är: d:t:o,/tmp/mysqldump.trace

mysqldump -uroot -p --all-databases --debug

mysqldump -uroot -p --all-databaser --debug=" d:t:o,/tmp/debug.trace"

--debug-check

Kolla minnet, öppna filinstruktionerna och avsluta filerna.

mysqldump -uroot -p --all-databases --debug-check

--debug-info

Exportera felsökningsinformation och avsluta

mysqldump -uroot -p --all-databases --debug-info

--default-character-set

Ställ in standardteckenuppsättningen, standardvärdet är utf8

mysqldump -uroot -p --all-databases --default-character-set=latin1

--fördröjd-insättning

INFOGA FÖRDRÖJD för export av data

mysqldump -uroot -p --all-databases --delayed-insert

--delete-master-logs

Master Backup raderar loggar. Denna parameter aktiveras automatiskt --master-data.

mysqldump -uroot -p --all-databases --delete-master-logs

--inaktivera-nycklar

För varje tabell, använd /*!40000 ALTER TABLE tbl_name INAKTIVERA NYCKLAR */; och /*!40000 ALTER TABLE tbl_name ENABLE KEYS */; Uttalandet refererar till INSERT-satsen. Detta möjliggör snabbare import av dumpade filer, eftersom det skapar ett index efter att alla rader har infogats. Detta alternativ är endast tillgängligt för MyISAM-tabeller, som som standard är öppet läge.

mysqldump -uroot -p --all-databases

--dump-slave

Detta alternativ gör att huvudbinloggens plats och filnamn läggs till filen där den exporterade datan läggs till. När den är inställd på 1 används kommandot CHANGE MASTER för att skriva ut till datafilen. När du är inställd på 2, lägg till förklarande information före kommandot. Detta alternativ aktiverar --lås-alla-tabeller om inte --single-transaktion specificeras. Detta alternativ stänger automatiskt av --lås-tabeller-alternativet. Standardvärdet är 0.

mysqldump -uroot -p --all-databases --dump-slave=1

mysqldump -uroot -p --all-databases --dump-slave=2

--händelser, -E

Exportevenemang.

mysqldump -uroot -p --all-databases --events

--förlängd-insert, -e

Använd INSERT-syntaxen med flera VALUES-kolumner. Detta gör att exporten av filer blir mindre och snabbar upp importen. Som standard öppet tillstånd, använd --skip-extended-insert to cancel-alternativet.

mysqldump -uroot -p --all-databases

mysqldump -uroot -p --all-databases--skip-extended-insert (avoption)

--fält-avslutade-av

Ignorera de givna fälten i exportfilen. Används med --tab-alternativet, inte för --databaser och --all-databaser-alternativen

mysqldump -uroot -p testtest --tab="/home/mysql" --fields-terminated-by="#"

--fält-innesluten-av

De enskilda fälten i utdatafilen omsluts med de givna tecknen. Används med --tab-alternativet, inte för --databaser och --all-databaser-alternativen

mysqldump -uroot -p test test --tab="/home/mysql" --fields-enclosed-by="#"

--fält-valfritt-innesluten-av

Fälten i utdatafilen omslås selektivt med de givna tecknen. Används med --tab-alternativet, inte för --databaser och --all-databaser-alternativen

mysqldump -uroot -p testtest --tab="/home/mysql" --fields-enclosed-by="#" --fields-optionally-enclosed-by ="#"

--fält-rymt-förbi

De enskilda fälten i utdatafilen ignorerar de givna tecknen. Används med --tab-alternativet, inte för --databaser och --all-databaser-alternativen

mysqldump -uroot -p mysql user --tab="/home/mysql" --fields-escaped-by="#"

--flush-logs

Uppdatera loggarna innan du startar exporten.

Observera: om du exporterar flera databaser samtidigt (med alternativet --databaser eller --alla-databaser) kommer loggarna att uppdateras databas för databas. Förutom genom att använda --lock-all-tables eller --master-data. I detta fall uppdateras loggen en gång och motsvarande tabell låses samtidigt. Därför, om du avser att exportera och rensa loggar samtidigt, bör du använda --lock-all-tables eller --master-data och --flush-logs.

mysqldump -uroot -p --all-databases --flush-logs

--flush-privilegier

Efter att ha exporterat MySQL-databasen, utfärda en FLUSH PRIVILEGES-sats. För korrekt återställning bör detta alternativ användas för att exportera MySQL-databaser och beroende MySQL-databasdata när som helst.

mysqldump -uroot -p --all-databases --flush-privileges

--kraft

Ignorera SQL-fel som uppstår under exporten.

mysqldump -uroot -p --all-databases --force

--Hjälp

Visa hjälpinformation och avsluta.

mysqldump --hjälp

--hex-blob

Exportera binärsträngfält med hexformat. Detta alternativ måste användas om binär data finns tillgänglig. De drabbade fälttyperna är BINÄR, VARBINÄR och BLOB.

mysqldump -uroot -p --all-databases --hex-blob

--värd, -h

Värdinformation som behöver exporteras

mysqldump -uroot -p --host=localhost --all-databases

--ignorera-tabell

Den angivna tabellen exporteras inte. När man specificerar att flera tabeller ignoreras, måste det upprepas flera gånger, en tabell i taget. Varje tabell måste ange både databasen och tabellnamnet. Till exempel: --ignore-table=database.table1 --ignore-table=database.table2 ......

mysqldump -uroot -p --host=localhost --all-databases --ignore-table=mysql.user

--inkludera-master-host-port

'BYT MASTER TILL..' genererat av --dump-slave Lägg till 'MASTER_HOST=<host>,MASTER_PORT=<port>' i påståendet  

mysqldump -uroot -p --host=localhost --all-databases --include-master-host-port

--insert-ignorer

Använd satsen INSERT IGNORE när du infogar en rad.

mysqldump -uroot -p --host=localhost --all-databases --insert-ignore

--linjer-avslutade-av

Varje rad i utdatafilen delas av en given sträng. Används med --tab-alternativet, inte för --databaser och --alla-databaser-alternativen.

mysqldump -uroot -p --host=localhost test test --tab="/tmp/mysql" --lines-terminated-by="##"

--lås-alla-tabeller, -x

Skicka in en begäran om att låsa alla tabeller i alla databaser för att säkerställa datakonsistens. Detta är ett globalt läslås, och alternativen --single-transaction och --lock-tables stängs automatiskt av.

mysqldump -uroot -p --host=localhost --all-databases --lock-all-tables

--låsbord, -l

Lås alla tabeller innan du startar exporten. Lås tabellen med READ LOCAL för att tillåta att MyISAM-tabeller kan infogas parallellt. För tabeller som stödjer transaktioner, såsom InnoDB och BDB,--är single-transaction ett bättre alternativ eftersom det inte kräver låsning av tabeller alls.

Observera att när man exporterar flera databaser,-- låser låstabeller tabeller för varje databas separat. Därför garanterar detta alternativ inte logisk konsistens mellan databaser för tabeller i den exporterade filen. Exportstatusen för olika databastabeller kan vara helt olika.

mysqldump -uroot -p --host=localhost --all-databases --lock-tables

--log-error

Bifoga varningar och felmeddelanden till en given fil

mysqldump -uroot -p --host=localhost --all-databases --log-error=/tmp/mysqldump_error_log.err

--master-data

Detta alternativ lägger till platsen och filnamnet för binloggen i utdatafilen. Om det är 1 kommer kommandot CHANGE MASTER att skrivas ut; Om det är 2, lägg till en kommentar innan utdatakommandot BYT MASTER. Alternativet aktiverar --lock-all-tables-alternativet om inte --single- transaktion också anges (i detta fall får det globala läslåset en kort tid när exporten startar; För annat innehåll, se alternativet --enkeltransaktion nedan). Detta alternativ stängs automatiskt av – lås-bords-val.

mysqldump -uroot -p --host=localhost --all-databases --master-data=1;

mysqldump -uroot -p --host=localhost --all-databases --master-data=2;

--max_allowed_packet

Den maximala paketlängden som skickas och accepteras av servern.

mysqldump -uroot -p --host=localhost --all-databases --max_allowed_packet=10240

--net_buffer_length

Cachestorlek för TCP/IP och socketanslutningar.

mysqldump -uroot -p --host=localhost --all-databases --net_buffer_length=1024

--no-autocommit

Använd autocommit/commit-satsen för att wrappa tabellen.

mysqldump -uroot -p --host=localhost --all-databases --no-autocommit

--no-create-db, -n

Exportera endast data utan att lägga till CREATE DATABASE-satsen.

mysqldump -uroot -p --host=localhost --all-databases --no-create-db

--ingen-skapa-info, -t

Exportera endast data utan att lägga till CREATE TABLE-satsen.

mysqldump -uroot -p --host=localhost --all-databases --no-create-info

--ingen-data, -d

Ingen data exporteras, endast databastabellstrukturen exporteras.

mysqldump -uroot -p --host=localhost --all-databases --no-data

--ingen-set-namn, -N

Ekvivalent med --skip-set-charset

mysqldump -uroot -p --host=localhost --all-databases --no-set-names

--opt

Ekvivalent med --add-drop-table, --add-locks, --create- options, --quick, --extended-insert, --lock-tables, --set- charset, --disable-keys Detta alternativ är aktiverat som standard och kan inaktiveras med --skip-opt.

mysqldump -uroot -p --host=localhost --all-databases --opt

--ordning för-primär

Om en primärnyckel finns, eller den första unika nyckeln, sortera posterna för varje tabell. Detta fungerar när man exporterar MyISAM-tabeller till InnoDB-tabeller, men gör att exportprocessen tar lång tid.

mysqldump -uroot -p --host=localhost --all-databases --order-by-primary

--lösenord, -p

Koppla databaslösenordet

--rör (tillgängligt för fönster)

Koppla till MySQL med en namngiven pipeline

mysqldump -uroot -p --host=localhost --all-databases --pipe

--port, -P

Koppla till databasens portnummer

--protokoll

Anslutningsprotokoll som användes, inklusive: tcp, sockel, rör, minne.

mysqldump -uroot -p --host=localhost --all-databases --protocol=tcp

--snabbt, -q

Exportera direkt till standardutdata utan att buffra frågor. Standard är på, använd --skip-quick för att avbryta detta alternativ.

mysqldump -uroot -p --host=localhost --all-databases

mysqldump -uroot -p --host=localhost --all-databases --skip-quick

--citatnamn,-Q

Använd (') för att skapa tabell- och kolumnnamn. Standard är på, använd --skip-citate-names för att avbryta detta alternativ.

mysqldump -uroot -p --host=localhost --all-databases

mysqldump -uroot -p --host=localhost --all-databases --skip-quote-names

--ersätta

Använd REPLACE INTO för att ersätta INSERT INTO.

mysqldump -uroot -p --host=localhost --all-databases --replace

--result-file, -r

Skriv ut direkt till den angivna filen. Detta alternativ bör användas på system som använder radbrytningar (t.ex. DOS, Windows). Detta alternativ säkerställer att endast en rad används.

mysqldump -uroot -p --host=localhost --all-databases --result-file=/tmp/mysqldump_result_file.txt

--rutiner, -R

Exportera lagrade procedurer samt anpassade funktioner.

mysqldump -uroot -p --host=localhost --all-databases --routines

--set-charset

Lägg till 'SET NAMES default_character_set' i utdatafilen. Som standard öppna tillstånd, använd --skip-set-charset för att stänga alternativet.

mysqldump -uroot -p --host=localhost --all-databases

mysqldump -uroot -p --host=localhost --all-databases --skip-set-charset

--enkel-transaktion

Detta alternativ skickar in en BEGIN SQL-sats innan datan exporteras, vilket inte blockerar någon applikation och garanterar ett konsekvent tillstånd för databasen vid exporttillfället. Det fungerar bara med lagringsmotorer med flera versioner, endast InnoDB. Detta alternativ och --lock-tables-alternativet är ömsesidigt uteslutande, eftersom LOCK TABLES gör att varje väntande transaktion implicit blir committed. Om du vill exportera en stor tabell bör du använda --quick-alternativet i kombination.

mysqldump -uroot -p --host=localhost --all-databases --single-transaction

--dump-datum

Lägg till exporttiden i utdatafilen. Ställ till öppet tillstånd som standard, använd --skip-dump-date to close-alternativet.

mysqldump -uroot -p --host=localhost --all-databases

mysqldump -uroot -p --host=localhost --all-databases --skip-dump-date

--skip-opt

Inaktivera –opt-alternativet.

mysqldump -uroot -p --host=localhost --all-databases --skip-opt

--sockel,-S

Ange socketfilens plats som ansluter till mysql, och standardsökvägen är /tmp/mysql.sock

mysqldump -uroot -p --host=localhost --all-databases --socket=/tmp/mysqld.sock

--tab,-T

Skapa en tab-splitad textfil för varje tabell i en given sökväg. Notera: Endast för mysqldump- och mysqld-servrar som körs på samma maskin.

mysqldump -uroot -p --host=localhost test test --tab="/home/mysql"

--tabeller

Överstyr parametern --databases (-B) för att specificera tabellnamnet som ska exporteras.

mysqldump -uroot -p --host=localhost --databases test --tables test

--triggers

Exportera triggers. Detta alternativ är aktiverat som standard, inaktivera det med --skip-triggers.

mysqldump -uroot -p --host=localhost --all-databases --triggers

--tz-utc

Ställ in tidszonen TIME_ZONE='+00:00' högst upp i exporten för att säkerställa korrektheten i TIDSSTÄMPEL-data som exporteras i olika tidszoner eller när datan flyttas till en annan tidszon.

mysqldump -uroot -p --host=localhost --all-databases --tz-utc

--användare, -u

Ange användarnamnet på anslutningen.

--ordrik, --v

Exportera information om flera plattformar.

--version, -V

Exportera mysqldump-versionsinformation och avsluta

--där, -w

Endast de poster som valts för det givna VAR-villkoret dumpas. Observera att om villkoret innehåller ett kommando-tolkarspecifikt utrymme eller tecken, se till att referera till villkoret.

mysqldump -uroot -p --host=localhost --all-databases --where=" user='root'"

--xml, -X

Exportera XML-format.

mysqldump -uroot -p --host=localhost --all-databases --xml

--plugin_dir

En katalog över klientbaserade plugins för kompatibilitet med olika pluginversioner.

mysqldump -uroot -p --host=localhost --all-databases --plugin_dir="/usr/local/lib/plugin"

--default_auth

Klientplugins använder behörigheter som standard.

mysqldump -uroot -p --host=localhost --all-databases --default-auth="/usr/local/lib/plugin/<PLUGIN>"





Föregående:Jag kan inte få värdet av Json i bootstrap-tabellen
Nästa:Konvertera frågeresultat till Json-formatets skriptdelning
Publicerad på 2019-06-01 02:16:47 |
Tack för att du delade med dig
 Hyresvärd| Publicerad på 2021-02-07 10:01:20 |
MySQL exporterar frågeresultaten till en fil
https://www.itsvse.com/thread-9557-1-1.html
Friskrivning:
All programvara, programmeringsmaterial eller artiklar som publiceras av Code Farmer Network är endast för lärande- och forskningsändamål; Ovanstående innehåll får inte användas för kommersiella eller olagliga ändamål, annars kommer användarna att bära alla konsekvenser. Informationen på denna sida kommer från internet, och upphovsrättstvister har inget med denna sida att göra. Du måste helt radera ovanstående innehåll från din dator inom 24 timmar efter nedladdning. Om du gillar programmet, vänligen stöd äkta programvara, köp registrering och få bättre äkta tjänster. Om det finns något intrång, vänligen kontakta oss via e-post.

Mail To:help@itsvse.com