Ako exportovať dátové súbory z databázy Linux MySQL?export príkazu csv

Linux Databáza MySQLAko exportovať dátové súbory?export príkazu csv

MySQLexportovať dáta

V MySQL môžete použiťVYBERTE … DO OUTFILEpríkaz jednoducho exportovať údaje do textového súboru.


Exportujte údaje pomocou príkazu SELECT ... INTO OUTFILE

V nasledujúcom príklade exportujeme tabuľku údajov do súboru /tmp/tutorials.txt:

mysql > SELECT * FROM chenweiliang_tbl 
     - > INTO OUTFILE '/tmp/tutorials.txt' ;

Zadaný formát výstupu údajov môžete nastaviť pomocou možností príkazu. Nasledujúci príklad je pre export formátu CSV:

mysql > SELECT * FROM passwd INTO OUTFILE '/tmp/tutorials.csv' - > FIELDS TERMINATED BY ',' ENCLOSED BY ''' - > LINES TERMINATED BY '\ r \ n' ;
    
    

V nižšie uvedenom príklade sa vygeneruje súbor s hodnotami oddelenými čiarkami.Tento formát môže používať veľa programov.

SELECT a b a + b INTO OUTFILE '/tmp/result.text'FIELDS 
TERMINATED BY ',' OPTIONALLY ENCLOSED BY '''行
终止'\ 
n'FROM test_table ;

Príkaz SELECT ... INTO OUTFILE má nasledujúce atribúty:

  • LOAD DATA INFILE je inverzná operácia syntaxe SELECT ... INTO OUTFILE, SELECT.Na zápis údajov z databázy do súboru použite SELECT ... INTO OUTFILE a na načítanie súboru späť do databázy použite LOAD DATA INFILE.
  • SELECT ... INTO OUTFILE SELECT v tvare 'názov_súboru' môže zapísať vybrané riadky do súboru.Súbor je vytvorený na hostiteľovi servera, takže na použitie tejto syntaxe musíte mať povolenie FILE.
  • Výstupom nemôže byť existujúci súbor.Zabráňte manipulácii s údajmi súboru.
  • Potrebujete mať účet, aby ste sa mohli prihlásiť na server, aby ste mohli načítať súbory.V opačnom prípade SELECT ... INTO OUTFILE nebude mať žiadny účinok.
  • V systéme UNIX je súbor vytvorený tak, aby bol čitateľný, a povolenia vlastní server MySQL.To znamená, že aj keď si súbor môžete prečítať, možno ho nebudete môcť odstrániť.

Exportujte tabuľku ako nespracované údaje

Vytvára hlavne SQL skript obsahujúci príkazy CREATE TABLE INSERT atď. potrebné na opätovné vytvorenie databázy od začiatku.

Ak chcete exportovať údaje pomocou mysqldump, musíte použiť voľbu –tab na určenie adresára určeného exportným súborom a cieľ musí byť zapisovateľný.

Nasledujúci príklad exportuje tabuľku údajov chenweiliang_tbl do adresára /tmp:

$ mysqldump - u root - p - no - create - info
             - tab = / tmp chenweiliang chenweiliang_tbl
密码******

Export údajov vo formáte SQL

Exportujte údaje vo formáte SQL do zadaného súboru takto:

$ mysqldump - u root - p chenweiliang chenweiliang_tbl > dump 文本 
密码******

Obsah súboru vytvoreného vyššie uvedeným príkazom je nasledovný:

- 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' );

Ak potrebujete exportovať údaje celej databázy, môžete použiť nasledujúci príkaz:

$ mysqldump - u root - p chenweiliang > database_dump 文本
密码******

Ak potrebujete zálohovať všetky databázy, môžete použiť nasledujúci príkaz:

$ mysqldump - u root - p - all - databases > database_dump 文本
密码******

Voľba --all-databases bola pridaná v MySQL 3.23.12 a novších.

Túto metódu možno použiť na implementáciu stratégie zálohovania databázy.


Skopírujte dátové tabuľky a databázy do iných hostiteľov

Ak potrebujete skopírovať údaje na iný server MySQL, môžete zadať názov databázy a tabuľku v príkaze mysqldump.

Vykonajte na zdrojovom hostiteľovi nasledujúci príkaz na zálohovanie údajov do súboru dump.txt:

$ mysqldump - u root - p database_name table_name > dump 文本 
密码*****

Ak zálohujete databázu celú, nemusíte použiť konkrétny názov tabuľky.

Ak potrebujete importovať záložnú databázu na server MySQL, môžete použiť nasledujúci príkaz, pomocou nasledujúceho príkazu musíte potvrdiť, že databáza bola vytvorená:

$ mysql - u root - p database_name < dump 文本 
密码*****
你也可以使用以下命令将导出的数据直接导入到远程的服务器上,但请确保两台服务器是相通的,是可以相互访问的:</ p > 
$ mysqldump的- ü根- p DATABASE_NAME \
        | mysql - h other - host com database_name

Vyššie uvedený príkaz používa prepojenie na import exportovaných údajov do zadaného vzdialeného hostiteľa.

发表 评论

Vaša emailová adresa nebude zverejnená. 必填 项 已 用 * Štítok

Adresár článkov
Prejdite na začiatok