Como exportar ficheiros de datos da base de datos MySQL de Linux?comando exportar declaración csv

Linux Base de datos MySQLComo exportar ficheiros de datos?comando exportar declaración csv

MySQLexportar datos de datos

En MySQL podes usarSELECCIONAR... NO OUTFILEdeclaración para simplemente exportar datos a un ficheiro de texto.


Exportar datos usando a instrución SELECT ... INTO OUTFILE

No seguinte exemplo exportaremos a táboa de datos ao ficheiro /tmp/tutorials.txt:

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

Podes establecer o formato especificado de saída de datos a través das opcións de comando. O seguinte exemplo é para exportar o formato CSV:

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

No seguinte exemplo, xérase un ficheiro con valores separados por comas.Este formato pode ser usado por moitos programas.

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

A instrución SELECT ... INTO OUTFILE ten os seguintes atributos:

  • LOAD DATA INFILE é a operación inversa da sintaxe SELECT ... INTO OUTFILE, SELECT.Para escribir datos dunha base de datos nun ficheiro, use SELECT ... INTO OUTFILE e para ler o ficheiro de novo na base de datos, use LOAD DATA INFILE.
  • SELECT ... INTO OUTFILE Un SELECT da forma 'nome_ficheiro' pode escribir as liñas seleccionadas nun ficheiro.O ficheiro créase no servidor do servidor, polo que debes ter permiso FILE para usar esta sintaxe.
  • A saída non pode ser un ficheiro existente.Evita que os datos do ficheiro sexan manipulados.
  • Necesitas ter unha conta para iniciar sesión no servidor para recuperar ficheiros.En caso contrario, SELECT... INTO OUTFILE non terá ningún efecto.
  • En UNIX, o ficheiro créase para ser lexible e os permisos son propiedade do servidor MySQL.Isto significa que aínda que poidas ler o ficheiro, é posible que non poidas eliminalo.

Exportar a táboa como datos brutos

Produce principalmente un script SQL que contén os comandos CREATE TABLE INSERT etc. necesarios para recrear a base de datos desde cero.

Para exportar datos usando mysqldump, cómpre usar a opción –tab para especificar o directorio especificado polo ficheiro de exportación e o destino debe poder escribir.

O seguinte exemplo exporta a táboa de datos chenweiliang_tbl ao directorio /tmp:

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

Exportar datos en formato SQL

Exporte os datos en formato SQL ao ficheiro especificado, como segue:

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

O contido do ficheiro creado polo comando anterior é o seguinte:

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

Se precisa exportar os datos de toda a base de datos, pode utilizar o seguinte comando:

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

Se precisa facer unha copia de seguridade de todas as bases de datos, pode usar o seguinte comando:

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

A opción --all-databases engadiuse en MySQL 3.23.12 e posteriores.

Este método pódese usar para implementar unha estratexia de copia de seguridade da base de datos.


Copiar táboas de datos e bases de datos a outros servidores

Se precisa copiar datos a outro servidor MySQL, pode especificar o nome e a táboa da base de datos no comando mysqldump.

Execute o seguinte comando no host de orixe para facer unha copia de seguranza dos datos no ficheiro dump.txt:

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

Se fai unha copia de seguranza da base de datos completa, non necesitas usar un nome de táboa específico.

Se precisa importar a base de datos de copia de seguridade ao servidor MySQL, pode usar o seguinte comando, usando o seguinte comando, necesita confirmar que a base de datos foi creada:

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

O comando anterior usa un tubo para importar os datos exportados ao host remoto especificado.

发表 评论

O teu enderezo de correo electrónico non será publicado. Utilízanse os campos obrigatorios * Etiqueta

Volver arriba