2011-04-14 17 views
51

Por lo tanto, sólo se puede exportar una tabla como la siguiente:¿Cómo usar mysqldump para una parte de una tabla?

mysqldump -u root -p db_name table_name > table_name.sql 

¿Hay alguna manera de exportar sólo una parte de una tabla con mysqldump? Por ejemplo, 0 - 1,000,000 filas, 1,000,000 - 2,000,000 filas, etc.

¿Debo hacer esto con mysqldump o una consulta?

Respuesta

95
mysqldump -uroot -p db_name table_name --where='id<1000000' 

o puede utilizar

SELECT * INTO OUTFILE 'data_path.sql' from table where id<100000 
1

En mi caso he ejecutar este:

SELECT * 
    INTO OUTFILE 'C:\Documents and Settings\Anton.Zarkov\Desktop\joomla_export\data_AZ.sql' 
    FROM `jos_glossary` 
WHERE id>6000 
  • no hay ningún error de sintaxis - la consulta pasa a través.
    1. El resultado es NULL - no se escribieron filas. (Estoy seguro - la última identificación es 6458)
    2. Si repito la consulta a n error occurs => #1086 - File 'C:Documents and SettingsAnton.ZarkovDesktopjoomla_exportdata_AZ.sql' already exists
    3. Desafortunadamente no puedo encontrar el archivo "existente" en ningún lugar en el disco C. ¿Dónde está?

Las condiciones son: phpMyAdmin SQL Dump; versión 3.4.5; host: localhost; versión del servidor: 5.5.16; PHP version: 5.3.8

+0

Esto se debe a que necesita para escribir camino con doble barra: 'C: \ Documents and Settings \\ \\ Anton.Zarkov escritorio \\ \\ joomla_export data_AZ.sql' –

3
mysqldump --skip-triggers --compact --no-create-info --user=USER --password=PASSWORD -B DATABASE --tables MY_TABLE --where='SOME_COLUMN>=xxxx' > out.sql 
+0

no, SOME_COLUMN no debe ser el contando la columna – sics

2

El archivo objeto de dumping es diferente del archivo se utiliza SQL de selección. Para el segundo enfoque, no puede simplemente usar: base de datos mysql < tabla para volcar la tabla en una base de datos.

0
mysqldump -uroot -p db_name table_name --where'id<1000000' > yourdumpname.sql 
+0

Reanudado cambia a la respuesta aceptada porque: la documentación utiliza '' 'para la opción where http://dev.mysql.com/doc/refman/8.0/en/mysqldump.html#option_mysqldump_where (lo mismo en 5.7 http : //dev.mysql.com/doc/refman/5.7/en/mysqldump.html#option_mysqldump_where). Las alternativas son '--where 'condition'' o' --w'condition'' pero su versión actual '--where'condition'' da' mysqldump: unakown option' --wherecondition''. Si hay diferencias específicas de la versión, por favor especifique las condiciones. –

Cuestiones relacionadas