Artikulu direktorioa
Linux MySQL datu-baseaNola esportatu datu-fitxategiak?esportatu csv instrukzio komandoa
MySQLesportatu datuak datuak
MySQL-n erabil dezakezuHAUTATU… IRTEERAKO FITXATEGIAadierazpena datuak testu-fitxategi batera esportatzeko.
Esportatu datuak SELECT ... INTO OUTFILE instrukzioa erabiliz
Hurrengo adibidean datu-taula /tmp/tutorials.txt fitxategira esportatuko dugu:
mysql > SELECT * FROM chenweiliang_tbl - > INTO OUTFILE '/tmp/tutorials.txt' ;
Datuen irteeraren formatua zehaztu dezakezu komando aukeren bidez. Ondorengo adibidea CSV formatua esportatzeko da:
mysql > SELECT * FROM passwd INTO OUTFILE '/tmp/tutorials.csv' - > FIELDS TERMINATED BY ',' ENCLOSED BY ''' - > LINES TERMINATED BY '\ r \ n' ;
Beheko adibidean, fitxategi bat sortzen da komaz bereizitako balioekin.Formatu hau programa askok erabil dezakete.
SELECT a ,b ,a + b INTO OUTFILE '/tmp/result.text'FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '''行 终止'\ n'FROM test_table ;
SELECT ... INTO OUTFILE instrukzioak atributu hauek ditu:
- LOAD DATA INFILE SELECT ... INTO OUTFILE, SELECT sintaxiaren alderantzizko eragiketa da.Datu-base bateko datuak fitxategi batera idazteko, erabili SELECT ... INTO OUTFILE, eta fitxategia berriro datu-basean irakurtzeko, erabili LOAD DATA INFILE.
- SELECT ... INTO OUTFILE 'fitxategi_izena' formako SELECT BAT hautatutako lerroak fitxategi batean idatz ditzake.Fitxategia zerbitzariaren ostalarian sortzen da, beraz, sintaxi hau erabiltzeko FILE baimena izan behar duzu.
- Irteera ezin da lehendik dagoen fitxategi bat izan.Saihestu fitxategien datuak manipulatzea.
- Fitxategiak berreskuratzeko zerbitzarian saioa hasteko kontu bat izan behar al duzu.Bestela SELECT... INTO OUTFILE ez du eraginik izango.
- UNIX-en, fitxategia irakurtzeko sortu da, eta baimenak MySQL zerbitzariarenak dira.Horrek esan nahi du fitxategia irakur dezakezun bitartean, agian ezingo duzula ezabatu.
Esportatu taula datu gordina gisa
Batez ere SQL script bat sortzen du, datu-basea hutsetik berregiteko beharrezkoak diren CREATE TABLE INSERT eta abar komandoak dituena.
Mysqldump erabiliz datuak esportatzeko, –tab aukera erabili behar duzu esportazio-fitxategiak zehaztutako direktorioa zehazteko, eta helburuak idazteko modukoa izan behar du.
Adibide honek chenweiliang_tbl datu-taula esportatzen du /tmp direktoriora:
$ mysqldump - u root - p - no - create - info - tab = / tmp chenweiliang chenweiliang_tbl 密码******
Esportatu datuak SQL formatuan
Esportatu datuak SQL formatuan zehaztutako fitxategira, honela:
$ mysqldump - u root - p chenweiliang chenweiliang_tbl > dump 。文本 密码******
Goiko komandoak sortutako fitxategiaren edukia honako hau da:
- 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' );
Datu-base osoaren datuak esportatu behar badituzu, komando hau erabil dezakezu:
$ mysqldump - u root - p chenweiliang > database_dump 。文本 密码******
Datu-base guztien babeskopia egin behar baduzu, komando hau erabil dezakezu:
$ mysqldump - u root - p - all - databases > database_dump 。文本 密码******
--all-databases aukera MySQL 3.23.12 eta geroago gehitu zen.
Metodo hau datu-basearen babeskopia estrategia ezartzeko erabil daiteke.
Kopiatu datu-taulak eta datu-baseak beste ostalari batzuetara
Datuak beste MySQL zerbitzari batera kopiatu behar badituzu, mysqldump komandoan datu-basearen izena eta taula zehaztu ditzakezu.
Exekutatu komando hau iturburuko ostalarian datuen babeskopia dump.txt fitxategian egiteko:
$ mysqldump - u root - p database_name table_name > dump 。文本 密码*****
Zure datu-basearen babeskopia osoa egiten baduzu, ez duzu taula-izen zehatz bat erabili beharrik.
Babeskopia datu-basea MySQL zerbitzarira inportatu behar baduzu, komando hau erabil dezakezu, komando hau erabiliz datu-basea sortu dela baieztatu behar duzu:
$ mysql - u root - p database_name < dump 。文本 密码*****
你也可以使用以下命令将导出的数据直接导入到远程的服务器上,但请确保两台服务器是相通的,是可以相互访问的:</ p > $ mysqldump的- ü根- p DATABASE_NAME \ | mysql - h other - host 。com database_name
Goiko komandoak kanalizazio bat erabiltzen du esportatutako datuak zehaztutako urruneko ostalarira inportatzeko.
Hope Chen Weiliang bloga ( https://www.chenweiliang.com/ ) shared "Nola esportatu datu-fitxategiak Linux MySQL datu-basetik?Esportatu csv adierazpen komandoa" zuri laguntzeko.
Ongi etorri artikulu honen esteka partekatzera:https://www.chenweiliang.com/cwl-501.html
Trikimailu ezkutu gehiago desblokeatzeko🔑, ongi etorri gure Telegram kanalera!
Partekatu eta gustatu gustatzen bazaizu! Zure partekatzeak eta gustukoak dira gure etengabeko motibazioa!