Aquí está el cmd completo para los pasteles de copiamysqldump -u USERNAME -h HOST --no-create-info --skip-triggers YOURDATABASENAME YOURTABLENAME --where='id=12345678'
Yzmir Ramirez
2
Si lo consigues Access denied for user ... to database '...' when doing LOCK TABLES, usa--single-transaction
Rolf
@YzmirRamirez gracias pero para tu información en Windows tuve que usar comillas dobles --where. Por ejemplo,--where="id=2"
Kip
Este fue un ahorrador brillante para mí. Gracias.
Ken Ingram
149
Esto debería funcionar:
# To export to file (data only)
mysqldump -u [user]-p[pass]--no-create-info mydb > mydb.sql
# To export to file (structure only)
mysqldump -u [user]-p[pass]--no-data mydb > mydb.sql
# To import to database
mysql -u [user]-p[pass] mydb < mydb.sql
--no-create-dbes redundante cuando se usa--no-create-info
James McMahon
44
Un espacio después -pestá bien
Gracias
12
En general, es mejor usar -p sin proporcionar la contraseña para que la contraseña no se almacene en su historial de bash (se le pedirá que ingrese la contraseña después de ejecutar el comando).
Dan
2
Además del consejo de @ Dan, también hace que la contraseña sea visible para cualquier usuario que pueda enumerar los procesos actuales ( ps -ef)
TMG
1
Dejar la contraseña después de que la -popción mysqldumpsolicite la contraseña.
Melle
22
>> man -k mysqldump [enter in the terminal]
encontrarás la siguiente explicación
--no-create-info, -t
No escriba sentencias CREATE TABLE que vuelvan a crear cada tabla volcada. Nota: Esta opción no excluye las declaraciones que crean grupos de archivos de registro o espacios de tabla de la salida de mysqldump; sin embargo, puede usar la opción --no-tablespaces para este propósito.
--no-data, -d
No escriba ninguna información de la fila de la tabla (es decir, no volcar el contenido de la tabla). Esto es útil si desea volcar solo la instrucción CREATE TABLE para la tabla (por ejemplo, para crear una copia vacía de la tabla cargando el archivo de volcado).
gracias por lo --compactque se deshace de las declaraciones de comentarios adicionales
chiliNUT
2
Sugeriría usar el siguiente fragmento. Funciona bien incluso con tablas enormes (de lo contrario, abriría el volcado en el editor y eliminaría las cosas innecesarias, ¿verdad?;)
mysqldump --no-create-info --skip-triggers --extended-insert --lock-tables --quick DB TABLE > dump.sql
Al menos se requiere mysql 5.x , pero quién ejecuta cosas viejas hoy en día .. :)
Me encontré con una situación recientemente, donde tuve que conectarme a un sistema que estaba usando 4.x en producción. Tenían espacios en los nombres de tabla y columna, y en mi opinión, básicamente estaban haciendo todo mal.
Al intentar exportar datos con la respuesta aceptada, recibí un error:
ERROR 1235(42000) at line 3367: This version of MySQL doesn't yet support 'multiple triggers with the same action time and event for one table'
Como se ha mencionado más arriba:
mysqldump --no-create-info
Exportará los datos pero también exportará las declaraciones de activación de creación. Si, como yo, su estructura de base de datos de salida (que también incluye disparadores) con un comando y luego usa el comando anterior para obtener los datos, también debe usar '--skip-triggers'.
Respuestas:
También puedes usar:
--skip-triggers
: si está utilizando desencadenantes--no-create-db
: si está utilizando la--databases ...
opción--compact
: si quieres deshacerte de los comentarios adicionalesfuente
mysqldump -u USERNAME -h HOST --no-create-info --skip-triggers YOURDATABASENAME YOURTABLENAME --where='id=12345678'
Access denied for user ... to database '...' when doing LOCK TABLES
, usa--single-transaction
--where
. Por ejemplo,--where="id=2"
Esto debería funcionar:
NOTA: no hay espacio entre
-p
&[pass]
fuente
--no-create-db
es redundante cuando se usa--no-create-info
-p
está bienps -ef
)-p
opciónmysqldump
solicite la contraseña.encontrarás la siguiente explicación
fuente
Si solo desea las consultas INSERT, use lo siguiente:
mysqldump --skip-triggers --compact --no-create-info
fuente
--compact
que se deshace de las declaraciones de comentarios adicionalesSugeriría usar el siguiente fragmento. Funciona bien incluso con tablas enormes (de lo contrario, abriría el volcado en el editor y eliminaría las cosas innecesarias, ¿verdad?;)
Al menos se requiere mysql 5.x , pero quién ejecuta cosas viejas hoy en día .. :)
fuente
Simplemente voltee los datos en formato de texto delimitado .
fuente
Intenta volcar en un archivo delimitado.
fuente
Al intentar exportar datos con la respuesta aceptada, recibí un error:
Como se ha mencionado más arriba:
Exportará los datos pero también exportará las declaraciones de activación de creación. Si, como yo, su estructura de base de datos de salida (que también incluye disparadores) con un comando y luego usa el comando anterior para obtener los datos, también debe usar '--skip-triggers'.
Entonces, si quieres SOLO los datos:
fuente