Ver Mensaje Individual
  #4 (permalink)  
Antiguo 26/04/2012, 05:13
KbzaJunior
 
Fecha de Ingreso: septiembre-2009
Ubicación: Sevilla
Mensajes: 37
Antigüedad: 14 años, 7 meses
Puntos: 0
Respuesta: ¿Borrar/vaciar tablas de BD con nombre en formato DATE?

Buenas tardes,

Despues de que me dierais la pista de ``, me he quedado atrancado en lo ultimo de lo ultimo!

Las funciones del script son estas:
1º- Creo una carpeta con la fecha actual
2º- Hago un mysqldump
3º- Borro la tabla la cual acabo de hacer el dump ( es lo que no funciona )
4º- Regreso al directorio padre


Este script, está pensado por ejemplo, para lanzarlo el lunes de cada semana, y realizaria dumps de las tablas generadas por cada dia de la semana, y posteriormente, las elimina.

Adjunto script:
Código:
FECHA=`date +%Y-%m-%d`;
LUNES=`date +%Y-%m-%d --date='-7 day'`;
MARTES=`date +%Y-%m-%d --date='-6 day'`;
MIERCOLES=`date +%Y-%m-%d --date='-5 day'`;
JUEVES=`date +%Y-%m-%d --date='-4 day'`;
VIERNES=`date +%Y-%m-%d --date='-3 day'`;
SABADO=`date +%Y-%m-%d --date='-2 day'`;
DOMINGO=`date +%Y-%m-%d --date='-1 day'`;

mkdir $DOMINGO && cd $DOMINGO
mysqldump -u root --password='xxx' conntrack $DOMINGO > $DOMINGO.sql && gzip -q $DOMINGO.sql
mysql -u root --password='xxx' conntrack -e 'DROP TABLE `$DOMINGO`;'
cd ..

mkdir $SABADO && cd $SABADO
mysqldump -u root --password='xxx' conntrack $SABADO > $SABADO.sql && gzip -q $SABADO.sql
mysql -u root --password='xxx' conntrack -e 'DROP TABLE `$SABADO`;'
cd ..
He probado todas las formas posibles de encerrar lo que viene despues de la option -e, he usado tanto comillas simples, dobles, graves... y ninguna dá resultado.

Gracias adelantadas :)

EDITO: La unica forma que logro obtener el nombre de la tabla ( 2012-04-25, como veis es formato date ) es usando esta sintaxis:
Código:
mysql -u root --password=xxx conntrack -e "DROP TABLE $DOMINGO"
Y obtengo este error:
Código:
ERROR 1064 (42000) at line 1: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '2012-04-25' at line 1

Última edición por KbzaJunior; 26/04/2012 a las 05:38