MySQL Database Export -. Backup Methods

Den enkleste måten å eksportere en tabelldata til en tekstfil bruker SELECT ... INTO utfil uttalelse som eksporterer et søkeresultatet direkte til en fil på serveren verten

Eksportere data med SELECT ... INTO utfil Uttalelse:

Syntaksen for denne uttalelsen kombinerer en vanlig SELECT med INTO utfil filnavn
på slutten. Standard output format er det samme som for LOAD DATA, så følgende uttalelse eksporterer tutorials_tbl tabellen i /tmp/tutorials.txt som en tabulatordelt, linjeskift-terminert file:
mysql > SELECT * FROM tutorials_tbl - > INTO utfil '/tmp/tutorials.txt';

You endre output format ved hjelp av alternativene for å angi hvordan du sitere og avgrense kolonner og poster. Å eksportere tutorial_tbl tabellen i CSV-format med CRLF terminerte linjer, bruk denne uttalelsen:
mysql > SELECT * FROM passwd INTO utfil '/tmp/tutorials.txt' - > Felter avsluttet med ',' omsluttet av '"' - > LINJER avsluttet med '\\ r \\ n';

SELECT ... INTO utfil
har følgende egenskaper:

Utgangen filen er opprettet direkte av MySQL server, så filnavnet bør angi hvor du vil at filen skal skrives på serveren vert. Det er ingen lokal versjon av uttalelsen analogt til den lokale versjonen av LOAD DATA.

Du må ha MySQL FIL privilegium å utføre SELECT ... INTO-.

output file må ikke allerede eksisterer. Dette forhindrer MySQL fra clobbering filer som kan være viktig.

Du bør ha en påloggingskonto på serveren vert eller noen måte å hente filen fra den verten. Ellers SELECT ... INTO utfil sannsynlig vil være til ingen verdi for deg.

Under UNIX, blir filen skapt verden lesbar og eies av MySQL server. Dette betyr at selv om du vil være i stand til å lese filen, kan du ikke være i stand til å slette den

Eksportere tabeller som rådata.

mysqldump
Programmet brukes til å kopiere eller sikkerhetskopiere tabeller og databaser. Den kan skrive table output enten som en rå datafile eller som et sett av INSERT-setninger som gjenskaper postene i tabellen.

Å dumpe en tabell som en datafil, må du angi en --tab alternativ som indikerer katalog, hvor du vil at MySQL server for å skrive filen

For eksempel vil dumpe tutorials_tbl tabellen fra Tutorials database til en fil i katalogen /tmp, bruk en kommando som dette.
$ mysqldump -u root -p --no skape-info \\ --tab = /tmp Tutorials tutorials_tblpassword ******
Eksportere Tabell Innhold eller Definisjoner i SQL Format:

For å eksportere en tabell i SQL-format til en fil, kan du bruke en kommando som dette:
$ mysqldump -u root -p Tutorials tutorials_tbl > dump.txtpassword ******

Dette vil en skape fil med innhold som følger: Anmeldelser - MySQL dumpe 8,23 ---- Host: localhost Database: Tutorials ---------- ------------------------------------------------- Server versjon 3.23.58 ---- tabell struktur for tabell `tutorials_tbl` - CREATE TABLE tutorials_tbl (tutorial_id int (11) NOT NULL AUTO_INCREMENT, tutorial_title varchar (100) NOT NULL standard '', tutorial_author varchar (40) NOT NULL standard» ', submission_date dato standard NULL, PRIMARY KEY (tutorial_id), unik nøkkel AUTHOR_INDEX (tutorial_author)) TYPE = MyISAM; ---- Dumping data for tabell `tutorials_tbl` - INSERT INTO tutorials_tbl VERDIER (1," Lær PHP', ' John Poul ',' 2007-05-24 '); INSERT INTO tutorials_tbl VERDIER (2, "Lær MySQL', 'Abdul S', '2007-05-24'); INSERT INTO tutorials_tbl VERDIER (3, 'JAVA Tutorial' «Sanjay ',' 2007-05-06 ');

For å dumpe flere bord, navngi dem alle følgende databasenavnet argument. Å dumpe en hel database, ikke nevne noen tabeller etter database som følger:
$ mysqldump -u root -p Guider > database_dump.txtpassword ******

Hvis du vil sikkerhetskopiere alle tilgjengelige databaser på verts, bruker du følgende:
$ mysqldump -u root -p --Alle-databaser > database_dump.txtpassword ******

--Alle-databaser alternativet er tilgjengelig fra og med MySQL 3.23.12.

Denne metoden kan brukes til å implementere en database backup strategi.
< h2> Kopiere tabeller eller databaser til en annen Vert:

Hvis du vil kopiere tabeller eller databaser fra en MySQL server til en annen, og deretter bruke mysqldump med databasenavn og tabellnavn

Kjør følgende. kommando ved kilden vert. Dette vil dumpe hele databasen til dump.txt filen:
$ mysqldump -u root -p database table_name > dump.txtpassword *****

Du kan kopiere hele databasen uten å bruke en bestemt tabellnavn som forklart ovenfor.

Nå, ftp dump.txt filen på en annen vert og bruke følgende kommando. Før du kjører denne kommandoen, sørg for at du har opprettet database på målserveren
$ mysql -u root -p database <.; dump.txtpassword *****

En annen måte å gjøre dette uten å bruke en mellommann fil er å sende produksjonen av mysqldump direkte via nettverket til den eksterne MySQL server. Hvis du kan koble til både servere fra verts hvor kilden databasen ligger, bruker du denne kommandoen (Kontroller at du har tilgang på begge serverne):
$ mysqldump -u root -p database \\ | mysql -h other-host.com database

mysqldump halvparten av kommandoen kobles til den lokale serveren og skriver dump utgang til røret. De resterende mysql halvparten av kommandoen kobler til den eksterne MySQL server på other-host.com. Den leser røret for innspill og sender hver uttalelse til other-host.com server. Anmeldelser