¿Cómo exportar archivos de datos desde la base de datos MySQL de Linux?comando de declaración de exportación csv

Linux base de datos mysql¿Cómo exportar archivos de datos?comando exportar declaración csv

MySQLexportar datos datos

En MySQL puedes usarSELECCIONE... EN PERFILdeclaración para simplemente exportar datos a un archivo de texto.


Exportar datos usando la declaración SELECT ... INTO OUTFILE

En el siguiente ejemplo exportaremos la tabla de datos al archivo /tmp/tutorials.txt:

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

Puede establecer el formato especificado de salida de datos a través de las opciones de comando. El siguiente ejemplo es para exportar el formato CSV:

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

En el ejemplo a continuación, se genera un archivo con valores separados por comas.Este formato puede ser utilizado por muchos programas.

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

La declaración SELECT ... INTO OUTFILE tiene los siguientes atributos:

  • LOAD DATA INFILE es la operación inversa de SELECT ... INTO OUTFILE, SELECT sintaxis.Para escribir datos de una base de datos en un archivo, use SELECT ... INTO OUTFILE, y para volver a leer el archivo en la base de datos, use LOAD DATA INFILE.
  • SELECT ... INTO OUTFILE A SELECT de la forma 'file_name' puede escribir las líneas seleccionadas en un archivo.El archivo se crea en el host del servidor, por lo que debe tener permiso de ARCHIVO para usar esta sintaxis.
  • La salida no puede ser un archivo existente.Evite que los datos del archivo sean manipulados.
  • ¿Necesita tener una cuenta para iniciar sesión en el servidor para recuperar archivos?De lo contrario, SELECT ... INTO OUTFILE no tendrá ningún efecto.
  • En UNIX, el archivo se crea para que sea legible y los permisos pertenecen al servidor MySQL.Esto significa que, si bien puede leer el archivo, es posible que no pueda eliminarlo.

Exportar tabla como datos sin procesar

Produce principalmente un script SQL que contiene los comandos CREATE TABLE INSERT, etc. necesarios para recrear la base de datos desde cero.

Para exportar datos usando mysqldump, necesita usar la opción –tab para especificar el directorio especificado por el archivo de exportación, y el destino debe ser escribible.

El siguiente ejemplo exporta la tabla de datos chenweiliang_tbl al directorio /tmp:

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

Exportar datos en formato SQL

Exporte datos en formato SQL al archivo especificado, de la siguiente manera:

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

El contenido del archivo creado por el comando anterior es el siguiente:

- 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 necesita exportar los datos de toda la base de datos, puede usar el siguiente comando:

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

Si necesita hacer una copia de seguridad de todas las bases de datos, puede usar el siguiente comando:

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

La opción --all-databases se agregó en MySQL 3.23.12 y versiones posteriores.

Este método se puede utilizar para implementar una estrategia de copia de seguridad de la base de datos.


Copie tablas de datos y bases de datos a otros hosts

Si necesita copiar datos a otro servidor MySQL, puede especificar el nombre de la base de datos y la tabla en el comando mysqldump.

Ejecute el siguiente comando en el host de origen para hacer una copia de seguridad de los datos en el archivo dump.txt:

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

Si realiza una copia de seguridad completa de su base de datos, no necesita usar un nombre de tabla específico.

Si necesita importar la base de datos de respaldo al servidor MySQL, puede usar el siguiente comando, usando el siguiente comando, debe confirmar que se ha creado la base de datos:

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

El comando anterior usa una canalización para importar los datos exportados al host remoto especificado.

发表 评论

Su dirección de correo electrónico no será publicada. 项 已 用 * 标注

Ir al Inicio