Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General »

mysqldump sin una tabla.

Estas en el tema de mysqldump sin una tabla. en el foro de Bases de Datos General en Foros del Web. Lo que necesito es hacer un backup diariamente de una base de datos, pero quiero ignorar los contenidos de una de sus tablas. Es esto ...
  #1 (permalink)  
Antiguo 21/02/2004, 22:16
Avatar de cvander
Moderador
 
Fecha de Ingreso: abril-2001
Ubicación: Ciudadano del mundo
Mensajes: 13.638
Antigüedad: 23 años
Puntos: 1792
mysqldump sin una tabla.

Lo que necesito es hacer un backup diariamente de una base de datos, pero quiero ignorar los contenidos de una de sus tablas. Es esto posible?

Buscando en la información de mysqldump en la documentación de mysql.com no he localizado nada.

Si alguién tiene alguna idea, la agradeceré.
__________________
- Christian Van Der Henst
Platzi
  #2 (permalink)  
Antiguo 22/02/2004, 00:32
Avatar de BrujoNic
Super Moderador
 
Fecha de Ingreso: noviembre-2001
Ubicación: Costa Rica/Nicaragua
Mensajes: 16.935
Antigüedad: 22 años, 5 meses
Puntos: 655
Christian, esa pregunta la hicieron hace algún tiempo y no se llego a nada concreto. Lo que contesté en esa ocasión (y si recuerdo bien), es hacer un script con todas las tablas sin tomar en cuenta la que no te interesa.
Sería esta opción: mysqldump [OPTIONS] database [tables]

Si son muchas tablas, va a ser tedioso por lo que podrías ayudarte creando un script utilizando el comando SHOW. Por ejemplo, podrías usar la siguiente sentencia en phpMyAdmin o algún programa gráfico:
SHOW TABLE STATUS [FROM db_name] [LIKE wild]. Luego copias el resultado a un archivo .sql y en la primera línea de todas las tablas mostradas, utilizas el comando de arriba quitando la tabla que no te interesa.

Es muy manual al principio pero como te va a quedar en un script, solo vas a tener que ejecutarlo nuevamente.
__________________
La tecnología está para ayudarnos. No comprendo el porqué con esa ayuda, la gente escribe TAN MAL.
NO PERDAMOS NUESTRO LINDO IDIOMA ESPAÑOL

Última edición por BrujoNic; 22/02/2004 a las 00:36
  #3 (permalink)  
Antiguo 22/02/2004, 09:53
Avatar de cvander
Moderador
 
Fecha de Ingreso: abril-2001
Ubicación: Ciudadano del mundo
Mensajes: 13.638
Antigüedad: 23 años
Puntos: 1792
Gracias por la respuesta.

Aclarame como funciona exactamente la ocpción:

mysqldump [OPTIONS] database [tables]

El problema es que son 47 tablas y solo quiero 46.

Para que imagines la diferencia, la tabla adicional que no quiero pesa 300mbs, la mitad de la base de datos.

Lo tengo que hacer desde el shell por que en PhpMyAdmin no aguantaría.
__________________
- Christian Van Der Henst
Platzi
  #4 (permalink)  
Antiguo 22/02/2004, 13:20
Avatar de BrujoNic
Super Moderador
 
Fecha de Ingreso: noviembre-2001
Ubicación: Costa Rica/Nicaragua
Mensajes: 16.935
Antigüedad: 22 años, 5 meses
Puntos: 655
humm, dejame ver ya que son muchas opciones.

Primero dejame aclararte algo. El decirte usar phpMyAdmin o alguna otra herramienta gráfica para accesar la BD MySQL, es solo para generar tu script que luego vas a emplear en SHELL.

Por ejemplo, digamos que tenes una BD llamada 100tablasBD y su contenido son 10 tablas llamadas tabla1, tabla2,... tabla100. Pero no te interezan las tablas 10, 15, 20, 45.

El proceso que podrías seguir es realizar el SHOW de esta manera. Seleccionas primero la BD donde estan las tablas y luego ejecutas
Código PHP:
SHOW TABLES 
, ese resultado te va a devolver las 100 tablas y eso es lo que vas a guardar en un archivo. Luego editas el archivo, le pones las comas al final de cada tabla y le agregas en la primera línea lo siguiente:

mysqldump 100tablasBD
tabla1,
tabla2,
tablan


Quitando lógicamente las tablas que no te interesan. Guardas el resultado como respaldo.sq.

Luego, desde tu SHELL ejecutas el script y listo.

Intenta sin ponerle opciones a mysqldump para que almacene todo.
__________________
La tecnología está para ayudarnos. No comprendo el porqué con esa ayuda, la gente escribe TAN MAL.
NO PERDAMOS NUESTRO LINDO IDIOMA ESPAÑOL
  #5 (permalink)  
Antiguo 17/09/2005, 23:32
 
Fecha de Ingreso: febrero-2004
Mensajes: 1.987
Antigüedad: 20 años, 2 meses
Puntos: 22
Y podria yo correr un scrip desde PHP y sin ROOT y sin SHELL para correr el mysqldump ?
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 14:43.