Hoe kinne jo gegevensbestannen eksportearje fan Linux MySQL-database?eksportearje csv statement kommando

Hoe kinne jo gegevensbestannen eksportearje út in Linux MySQL-database ? Wat binne de kommando's foar it eksportearjen nei CSV?

MySQLeksportearje gegevens gegevens

Yn MySQL kinne jo de SELECT … INTO OUTFILE -opdracht brûke om maklik gegevens nei in tekstbestân te eksportearjen.


Eksportearje gegevens mei de SELECT ... INTO OUTFILE statement

Yn it folgjende foarbyld sille wy de gegevenstabel eksportearje nei it /tmp/tutorials.txt-bestân:

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

Jo kinne it oantsjutte formaat fan gegevensútfier ynstelle fia kommando-opsjes. It folgjende foarbyld is foar it eksportearjen fan CSV-formaat:

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

Yn it folgjende foarbyld wurdt in bestân generearre mei wearden skieden troch komma's.Dit formaat kin brûkt wurde troch in protte programma's.

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

De ferklearring SELECT ... INTO OUTFILE hat de folgjende attributen:

  • LOAD DATA INFILE is de ynverse operaasje fan SELECT ... INTO OUTFILE, SELECT syntaksis.Om gegevens fan in databank nei in bestân te skriuwen, brûk SELECT ... INTO OUTFILE, en om it bestân werom te lêzen yn 'e databank, brûk LOAD DATA INFILE.
  • SELECT ... INTO OUTFILE In SELECT fan 'e foarm 'file_name' kin de selektearre rigels nei in bestân skriuwe.De triem is oanmakke op de tsjinner host, dus jo moatte FILE tastimming hawwe om dizze syntaksis te brûken.
  • De útfier kin gjin besteande triem wêze.Foarkom dat triemgegevens wurde manipulearre.
  • Moatte jo in akkount hawwe om oan te melden by de tsjinner om bestannen op te heljen.Oars sil SELECT ... INTO OUTFILE gjin effekt hawwe.
  • Yn UNIX wurdt it bestân makke om lêsber te wêzen, en tagongsrjochten binne eigendom fan de MySQL-tsjinner.Dit betsjut dat wylst jo it bestân lêze kinne, jo it miskien net wiskje kinne.

Eksportearje tabel as rauwe gegevens

It produseart benammen in SQL-skript mei de kommando's CREATE TABLE INSERT ensfh.

Om gegevens te eksportearjen mei mysqldump, moatte jo de -tab-opsje brûke om de map oantsjutte troch it eksportbestân oan te jaan, en it doel moat skriuwber wêze.

It folgjende foarbyld eksportearret de gegevenstabel chenweiliang_tbl nei de /tmp-map:

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

Eksportearje gegevens yn SQL-formaat

Eksportearje gegevens yn SQL-formaat nei it oantsjutte bestân, as folget:

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

De ynhâld fan it bestân makke troch it boppesteande kommando is as folget:

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

As jo ​​​​de gegevens fan 'e folsleine databank moatte eksportearje, kinne jo it folgjende kommando brûke:

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

As jo ​​​​alle databases moatte reservekopy meitsje, kinne jo it folgjende kommando brûke:

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

De opsje --all-databases waard tafoege yn MySQL 3.23.12 en letter.

Dizze metoade kin brûkt wurde om in databank-backupstrategy út te fieren.


Kopiearje gegevenstabellen en databases nei oare hosts

As jo ​​​​gegevens moatte kopiearje nei in oare MySQL-tsjinner, kinne jo de databasenamme en tabel opjaan yn it mysqldump-kommando.

Fier it folgjende kommando út op 'e boarne host om de gegevens te bewarjen nei it dump.txt-bestân:

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

As jo ​​de databank folslein meitsje, hoege jo gjin spesifike tabelnamme te brûken.

As jo ​​​​de reservekopy-database moatte ymportearje nei de MySQL-tsjinner, kinne jo it folgjende kommando brûke, mei it folgjende kommando moatte jo befestigje dat de databank is oanmakke:

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

It boppesteande kommando brûkt in pipe om de eksportearre gegevens te ymportearjen nei de opjûne host op ôfstân.

发表 评论

您的邮箱地址不会被公开。必填项已用*标注

Scroll nei boppen