Tengo que administrar una base de datos en la que se utilizan varias tablas auxiliares para generar informes y otras cosas, entonces todos los días esas tablas las tengo que limpiar.
Como en el servidor ya tengo un cron con un script para borrar algunas carpetas temporales, la idea es agregar algo al script para que también me borre las tablas auxiliares.
Los pasos son generar un .sql que me borre las tablas. Seria algo así
use basededatos;
truncate tabla_auxiliar1;
truncate tabla_auxiliar2;
......
Esto lo guardamos en un archivo llamado script.sql (o como quieran llamarlo)
luego en el script que ya tenemos que nos borra las carpetas auxiliares agregamos lo siguiente.
mysql -u usuario_con_derechos -pcontraseña basededatos < script.sql
Con esto cuando se ejecute el script nos borrara las tablas.
Intentare mostrarles todas las cosas que me pasan día a día en mis pruebas, en mi trabajo, etc.
Pero eso dejaría tu base de datos un poco expuesta, pues había un archivo de texto plano con la contraseña de la base de datos... hay alguna otra manera?
ResponderEliminarSi estoy de acuerdo, que ese archivo estaría con la contraseña en blanco, pero deberías de tenerlo restringido por sistema operativo, por ejemplo con permiso de lectura para un usuario en particular.
ResponderEliminarEsto la idea es que sea automático sin interacción del un usuario por eso que tenes que poner en el archivo la contraseña, ademas no deberías de tenerlo en un equipo que este expuesto.
hola...
ResponderEliminarsabrías como desde ese escript llamar a otros... me explico... que existan 5 script cada uno de ellos crea una tabla... para no hacer el llamado a cada uno de ellos, como podria crear un script que llame a los otros 5??? te lo agradecería mucho
José, se me ocurren 2 soluciones, una es crear los 5 .sql, y luego crear un sh que tenga las 5 lineas con mysql -u .....
ResponderEliminarLa segunda opción es crearte los 5 sql como los necesites, y luego ejecutar source "miscript1.sql","miscript2.sql", esto ultimo tenes que fijarte bien la sintaxis de source, porque te la estoy diciendo de memoria.
Saludos y suerte