Article Directory
Linux MySQL baza podatakaKako izvesti datoteke sa podacima?izvoz csv naredbe
MySQLizvoz podataka
U MySQL možete koristitiSELECT ... INTO OUTFILEizjavu da jednostavno izvezete podatke u tekstualnu datoteku.
Izvezite podatke koristeći izraz SELECT ... INTO OUTFILE
U sljedećem primjeru ćemo izvesti tablicu podataka u /tmp/tutorials.txt datoteku:
mysql > SELECT * FROM chenweiliang_tbl - > INTO OUTFILE '/tmp/tutorials.txt' ;
Možete podesiti specificirani format izlaza podataka putem opcija naredbe.Sljedeći primjer je za izvoz CSV formata:
mysql > SELECT * FROM passwd INTO OUTFILE '/tmp/tutorials.csv' - > FIELDS TERMINATED BY ',' ENCLOSED BY ''' - > LINES TERMINATED BY '\ r \ n' ;
U sljedećem primjeru, datoteka je generirana s vrijednostima odvojenim zarezima.Ovaj format mogu koristiti mnogi programi.
SELECT a ,b ,a + b INTO OUTFILE '/tmp/result.text'FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '''行 终止'\ n'FROM test_table ;
Naredba SELECT ... INTO OUTFILE ima sljedeće atribute:
- LOAD DATA INFILE je inverzna operacija SELECT ... INTO OUTFILE, SELECT sintaksa.Za pisanje podataka iz baze podataka u datoteku koristite SELECT ... INTO OUTFILE, a za čitanje datoteke natrag u bazu podataka koristite LOAD DATA INFILE.
- SELECT ... INTO OUTFILE SELECT u obliku 'file_name' može upisati odabrane redove u datoteku.Datoteka je kreirana na hostu servera, tako da morate imati FILE dozvolu za korištenje ove sintakse.
- Izlaz ne može biti postojeća datoteka.Spriječite neovlašteno mijenjanje podataka u fajlovima.
- Da li je potrebno da imate nalog da biste se prijavili na server da biste preuzeli fajlove.U suprotnom SELECT ... INTO OUTFILE neće imati efekta.
- U UNIX-u, fajl je kreiran da bude čitljiv, a dozvole su u vlasništvu MySQL servera.To znači da, iako možete čitati datoteku, možda nećete moći da je izbrišete.
Izvezi tabelu kao neobrađene podatke
Uglavnom proizvodi SQL skriptu koja sadrži naredbe CREATE TABLE INSERT itd. potrebne za ponovno kreiranje baze podataka od nule.
Da biste izvezli podatke koristeći mysqldump, trebate koristiti opciju –tab da navedete direktorij naveden u eksport datoteci, a cilj mora biti upisiv.
Sljedeći primjer izvozi tablicu podataka chenweiliang_tbl u /tmp direktorij:
$ mysqldump - u root - p - no - create - info - tab = / tmp chenweiliang chenweiliang_tbl 密码******
Izvoz podataka u SQL formatu
Izvezite podatke u SQL formatu u navedenu datoteku, kako slijedi:
$ mysqldump - u root - p chenweiliang chenweiliang_tbl > dump 。文本 密码******
Sadržaj datoteke kreirane gornjom naredbom je sljedeći:
- MySQL 转储8.23 - - 主机:localhost 数据库:chenweiliang ----------------------------------- ---------------------- - 服务器版本 3.23 。58 - - 表结构为表`chenweiliang_tbl` - CREATE TABLE chenweiliang_tbl ( chenweiliang_id INT (11 )NOT NULL的auto_increment , chenweiliang_title VARCHAR (100 )NOT NULL 默认'' , chenweiliang_author VARCHAR (40 )NOT NULL 默认'' , submission_date日期默认NULL , PRIMARY KEY (chenweiliang_id ), UNIQUE KEY AUTHOR_INDEX (chenweiliang_author ))TYPE = MyISAM ; - - 转储数据的表`chenweiliang_tbl` - INSERT INTO chenweiliang_tbl VALUES (1 ,'Learn PHP' ,'John Poul' ,'2007-05-24' ); INSERT INTO chenweiliang_tbl VALUES (2 ,'学习MySQL' ,'Abdul S' ,'2007-05-24' ); INSERT INTO chenweiliang_tbl VALUES (3 ,'JAVA Tutorial' ,'Sanjay' ,'2007-05-06' );
Ako trebate izvesti podatke cijele baze podataka, možete koristiti sljedeću naredbu:
$ mysqldump - u root - p chenweiliang > database_dump 。文本 密码******
Ako trebate napraviti sigurnosnu kopiju svih baza podataka, možete koristiti sljedeću naredbu:
$ mysqldump - u root - p - all - databases > database_dump 。文本 密码******
Opcija --all-databases dodata je u MySQL 3.23.12 i novijim verzijama.
Ova metoda se može koristiti za implementaciju strategije sigurnosnog kopiranja baze podataka.
Kopirajte tablice podataka i baze podataka na druge hostove
Ako trebate kopirati podatke na drugi MySQL server, možete odrediti ime baze podataka i tablicu u naredbi mysqldump.
Izvršite sljedeću naredbu na izvornom hostu da napravite sigurnosnu kopiju podataka u datoteku dump.txt:
$ mysqldump - u root - p database_name table_name > dump 。文本 密码*****
Ako napravite sigurnosnu kopiju baze podataka u cijelosti, ne morate koristiti određeno ime tablice.
Ako trebate uvesti rezervnu bazu podataka na MySQL server, možete koristiti sljedeću naredbu, koristeći sljedeću naredbu trebate potvrditi da je baza podataka kreirana:
$ mysql - u root - p database_name < dump 。文本 密码*****
你也可以使用以下命令将导出的数据直接导入到远程的服务器上,但请确保两台服务器是相通的,是可以相互访问的:</ p > $ mysqldump的- ü根- p DATABASE_NAME \ | mysql - h other - host 。com database_name
Gornja naredba koristi cijev za uvoz izvezenih podataka na specificirani udaljeni host.
Hope Chen Weiliang Blog ( https://www.chenweiliang.com/ ) shared "Kako izvesti datoteke podataka iz Linux MySQL baze podataka?Izvezi naredbu csv izraza" da vam pomogne.
Dobrodošli da podijelite link ovog članka:https://www.chenweiliang.com/cwl-501.html
Da biste otključali još skrivenih trikova🔑, dobrodošli da se pridružite našem Telegram kanalu!
Podijelite i lajkujte ako vam se sviđa! Vaša dijeljenja i lajkovi su naša stalna motivacija!