Com exportar fitxers de dades de la base de dades MySQL de Linux?ordre d'exportació de declaracions csv

Linux Base de dades MySQLCom exportar fitxers de dades?ordre d'exportació de declaracions csv

MySQLexportar dades de dades

A MySQL podeu utilitzarSELECCIONA... A OUTFILEdeclaració per exportar simplement dades a un fitxer de text.


Exporteu les dades mitjançant la instrucció SELECT ... INTO OUTFILE

En l'exemple següent exportarem la taula de dades al fitxer /tmp/tutorials.txt:

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

Podeu establir el format especificat de sortida de dades mitjançant les opcions d'ordres. L'exemple següent és per exportar el format CSV:

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

En l'exemple següent, es genera un fitxer amb valors separats per comes.Aquest format pot ser utilitzat per molts programes.

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

La instrucció SELECT ... INTO OUTFILE té els atributs següents:

  • LOAD DATA INFILE és l'operació inversa de la sintaxi SELECT ... INTO OUTFILE, SELECT.Per escriure dades d'una base de dades a un fitxer, utilitzeu SELECT ... INTO OUTFILE i per tornar a llegir el fitxer a la base de dades, feu servir LOAD DATA INFILE.
  • SELECT ... INTO OUTFILE Un SELECT de la forma 'nom_fitxer' pot escriure les línies seleccionades en un fitxer.El fitxer es crea a l'amfitrió del servidor, de manera que heu de tenir permís FILE per utilitzar aquesta sintaxi.
  • La sortida no pot ser un fitxer existent.Eviteu que les dades dels fitxers siguin manipulades.
  • Necessites tenir un compte per iniciar sessió al servidor per recuperar fitxers.En cas contrari, SELECT... INTO OUTFILE no tindrà cap efecte.
  • A UNIX, el fitxer es crea per ser llegible i els permisos són propietat del servidor MySQL.Això vol dir que, tot i que podeu llegir el fitxer, és possible que no el pugueu suprimir.

Exporta la taula com a dades en brut

Principalment produeix un script SQL que conté les ordres CREATE TABLE INSERT, etc. necessàries per recrear la base de dades des de zero.

Per exportar dades amb mysqldump, heu d'utilitzar l'opció –tab per especificar el directori especificat pel fitxer d'exportació i l'objectiu ha de poder escriure.

L'exemple següent exporta la taula de dades chenweiliang_tbl al directori /tmp:

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

Exporta dades en format SQL

Exporteu les dades en format SQL al fitxer especificat, de la següent manera:

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

El contingut del fitxer creat per l'ordre anterior és el següent:

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

Si necessiteu exportar les dades de tota la base de dades, podeu utilitzar l'ordre següent:

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

Si necessiteu fer una còpia de seguretat de totes les bases de dades, podeu utilitzar l'ordre següent:

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

L'opció --all-databases es va afegir a MySQL 3.23.12 i posteriors.

Aquest mètode es pot utilitzar per implementar una estratègia de còpia de seguretat de la base de dades.


Copieu taules de dades i bases de dades a altres amfitrions

Si necessiteu copiar dades a un altre servidor MySQL, podeu especificar el nom i la taula de la base de dades a l'ordre mysqldump.

Executeu l'ordre següent a l'amfitrió d'origen per fer una còpia de seguretat de les dades al fitxer dump.txt:

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

Si feu una còpia de seguretat de la base de dades completa, no cal que utilitzeu un nom de taula específic.

Si necessiteu importar la base de dades de còpia de seguretat al servidor MySQL, podeu utilitzar l'ordre següent, mitjançant l'ordre següent, heu de confirmar que la base de dades s'ha creat:

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

L'ordre anterior utilitza una canonada per importar les dades exportades a l'amfitrió remot especificat.

发表 评论

La teva adreça de correu electrònic no es publicarà. S'utilitzen els camps obligatoris * 标注

Tornar a dalt