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.
viernes, 31 de julio de 2009
Ejecutar script sql en MySql
martes, 28 de julio de 2009
Descargar videos Flash de Internet
Como varias veces me ha pasado, necesito bajarme algunos vídeos que son muy pesados de Internet, que están en formato Flv (flash) y guardarlos en mi equipo para poder verlos después.
Buscando un poco encontré Moyea Youtube FLV Donwnloader, es el mas fácil que he visto y realmente anda muy bien.
domingo, 26 de julio de 2009
Instalación de Joomla
Como ya he necesitado 3 veces instalar Joomla, y cada vez tengo que buscar como se hace para instalar (que realmente es muy fácil), entonces he decidido escribirlo.
Primero hay que descargarse Joomla, yo he descargado la versión 1.5.12.
Luego de alguna forma copiarlo al servidor, que en mi caso es un Linux Ubuntu server.
Luego en el Linux, con apache ya instalado, copiamos a la carpeta del apache, todo el contenido del archivo que bajamos (obviamente antes hay que descomprimirlo), se puede copiar a la ruta del apache (/var/www) o creamos una carpeta y lo copiamos ahí (/var/www/joomla por ejemplo)
Tenemos que crear la base de datos donde trabajara joomla, entonces desde el prompt hacemos lo siguiente
> mysql -u root -ppassword
> create database joomla;
> show databases;
con esto crearemos la base de datos y con el ultimo comando veremos si realmente esta creado.
Luego (supongo que el apache esta levantado y andando bien) se debe de empezar la instalación de joomla, esto lo hacemos escribiendo lo siguiente en el navegador
http://ip o nombre del server/joomla/installation/ (supongo que se creo una carpeta joomla)
Y seguimos las indicaciones que nos da el instalador de joomla.
Al final dependiendo si se puede escribir o no en el directorio del apache (/var/ww/joomla) podremos directamente acceder a la administración o al sito de ejemplo (que en uno de los últimos pasos de la instalación nos da la opción de instalarlos), si no dejamos escribir, entonces tenemos que crear el archivo configuration.php en la raíz de la carpeta de joomla con el contenido que nos da en la ultima pantalla. Luego como vemos también en la ultima pantalla la carpeta de instalación hay que eliminarla.
Entonces al final de todo en la ruta
http://ip o nombre del server/joomla
tenemos nuestro portal, o en la ruta
http://ip o nombre del server/joomla/administrator
tenemos la administración de nuestro portal.
sábado, 2 de mayo de 2009
Genexus,enviar mail con pdf adjunto
Esto lo he tenido que hacer 2 veces y como la primera fue hace algunos años y la otra fue hace unos días, en la segunda oportunidad estuve un rato largo acordándome de cada una de las cosas que hice en la primera.
La idea es que un proceso genera un pdf y automáticamente sin interacción del usuario se envía un mail (o muchos mail's).
Bueno en genexus para que se genere un reporte en formato pdf, lo que hay que hacer son 3 cosas.
1 - marcar que el reporte sea main
2 - call protocol como HTML
3 - una regla Output_file(&nombre, "pdf"); siendo nombre el nombre del pdf, con el .pdf
con esto genexus sabe que el reporte lo genera en formato pdf.
Ahora lo que queremos es que ese archivos se genere pero quede guardado en el servidor en alguna ruta que se pueda ,entonces cambiamos &nombre por el nombre completo de la ruta, por ejemplo /home/arch.pdf, y esa variable debe de llegar al reporte y debe de ser in, ejemplo
param(in:&nombre);
Y además en el call protocol hay que cambiar de HTML a Internal.
Con estos cambios tenemos el pdf en una ruta conocida del servidor, ahora lo único que hay que hacer es hacer algún proceso que envié el mail, para esto se pueden utilizar varias formas, pero lo que hay que hacer es una variable del tipo MailMessage, adjuntarle el pdf, MailMessage.attach(&nombre), y luego seguir con el resto de las cosas para enviar el mail.
Bat para respaldar archivos usando rar
El problema que tengo es el siguiente, tengo varias maquinas virtuales con ambientes de clientes, en las que en ellas le instalo la menor cantidad de programas para que ande lo mas rápido.
Como la mayoría de las maquinas son Windows, no puedo utilizar en tar y gzip de Linux.
Como tengo documentos muy importantes quiero que periódicamente se haga un respaldo de estos.
En Internet hay muchos programas que hacen esto, pero como dije no quiero instalar nada, así que esa no es una opción.
Me pongo a buscar en Internet y por consola DOS se puede hacer rar o zip utilizando winrar, pero repito no quiero instalar nada, entonces encontré la siguiente solución.
Solamente con copiar el programa de winrar, rar.exe, a una de estas maquinas virtuales, y hacer un bat que mas abajo detallare, se pueden generar respaldos muy fácilmente.
si por consola ejecutaremos rar.exe, nos da todos los parámetros que podemos utilizar, pero yo pongo un pequeño ejemplo abajo para que sea un punto de partida.
"C:\ruta\Rar.exe" a -ad -m3 -agYY-MM-DD-hh-mm Z:\nombrerar "C:\rutaarespaldar\"
C:\ruta\Rar.exe es donde copiamos el rar.exe
Z:\nombrerar es el nombre del archivo a generar
C:\rutaarespaldar es la carpeta que respaldaremos
a quiere decir que si existe el archivo entonces agrega
-ad añade el nombre de archivos la carpeta del archivo
-m3 es la compresión puede ir hasta 5
-ag le agrega al nombre del rar la fecha y hora, ejemplo z:\nombrerar-09-08-30-12-10.rar
Esto ahora lo que tenemos que hacer es o lo ejecutamos manualmente (muy tedioso), o lo ponemos en inicio, para que se ejecute cada vez que inicies la sesión, o lo agregas al programador de tareas (estas son las 3 opciones que se me ocurrieron).
domingo, 11 de enero de 2009
Comprimir determinados archivos
Tengo una carpeta la cual tiene cientos de archivos, de los cuales quiero hacer un tar.gz de solo alguno de ellos.
Utilizaremos una combinacion de find y tar para poder lograrlo.
find /ruta_de_carpeta -name "*.txt" | xargs tar -zcvf misarchios.tar.gz
con esto buscamos dentro de la carpeta ruta_de_carpeta los archivos con extension txt (aca se pude buscar lo que quieran) y los comprimimos en el archivo misarchivos.tar.gz
domingo, 7 de diciembre de 2008
Agrandar particion en maquina virtual
La situación es la siguiente, tengo un windows xp en una maquina virtual con VMWare, la cual me esta quedando chica para las cosas que tengo en esta. Entonces las solución que se me ocurrieron son 3
1 - agregarle un disco y seguir trabajando en el segundo disco, esta solución es fácilmente aplicable, pero para mi caso no me servía
2 - crear una nueva maquina virtual y respaldar todo lo de la anterior, el tiempo que llevaba realizarlo no me caía en gracia.
3 - y la tercera y ultima es agrandar el disco primario (Disco C).
Investigando un poco en Internet encontre la aplicación de vmware
vmware-vdiskmanager
Con esta aplicación podemos hacer muchas cosas con los discos duros de la VMWares's, ejemplo desfragmentarlo, y obviamente agrandarlo.
Para agrandar el disco duro es muy fácil, vamos por dos y ejecutamos esta aplicación, podemos ver el help para mas datos, pero el tema no queda ahí.
Si leen el warning que da al finalizar el proceso para agrandar el disco, dice algo como que la aplicación te agranda el disco, pero no te agranda la partición.
Entonces seguí un poco mas en Internet (se pude usar partition Magic, pero yo quise investigar un poco mas) y encontre gparted-livecd-0.3.4-11.iso, es un iso que es liveCD, es decir bootea solo con este iso, y te da unas cuantas aplicaciones (free en su mayoría, por no jugarmela y decir todas) para manejo de disco, y la que yo utilice es la que me deja agrandar la partición.
Al se un iso y liveCD solo hay que mapearla en la maquina virtual para que levante esto, iniciamos la maquina y nos arranca y nos hace algunas preguntas estilo tipo de teclado, idioma, etc, y luego nos ofrece las aplicaciones a podes ejecutar.
Así que con estas 2 aplicaciones solucione el dilema de tener el discoC de un windows xp lleno.