1 0 Tag Archives: Optimizacion
post icon

Agregar opciones al menú de Windows / Compactar Restaurar Backup de Firebird

Hay muchas tareas que se convierten en rutinarias cuando trabajamos con un Sistema Operativo, cuando eso pasa siempre queremos automatizarlo lo más que podemos estas tareas “aburridas”, personalmente me sucede mucho en trabajo cuando tengo que crear el backup y restaurar las bases de datos de firebird que utilizamos, es por eso que me decidí crear unos menús para tales efectos. Se puede decir que con este post estaría matando dos pajaros de un tiro, como agregar los menús personalizados en Windows y como crear backups de firebird o restaurarlos..

Básicamente lo que hace es al dar click derecho sobre le fichero de la BD, invoca a la herramienta gbak del firebird y le pasa los parametros correspondientes para procesarlos, véamos como agregar éstos menús.

Primero debemos abrir el editor de registros de (Continuar Leyendo sobre Agregar opciones al menú de Windows / Compactar Restaurar Backup de Firebird)

post icon

Crear backup del Transaction Log y reducir su tamaño en SQL Server

Uno de los típicos problemas que aquejan a los DBA de SQL Server es el crecimiento montruoso del mismo, muchas veces ocupa varias veces más espacio que la propia base de datos. Este a su vez cumple un rol muy importante para este motor, no está allí por sólo capricho :P. Es el modo que el motor puede garantizar la integridad de los datos, toda transacción primeramente se escribe allí, y si y sólo sí el usuario confirma (COMMIT TRANSACTION) la operación pasa a la base de datos, también le sirve contra apagones, cortes de red o cualquier otro evento similar y así poder dejar los datos como estaban originalmente.

Existen tres modos de recuperación del log: Completa, Registro Masivo y Simple (No entraremos en detalle de esto por hoy).

La manera más típica de reducir el tamaño del Log es haciendo un Backup del mismo, tarea que recomiendo sea ejecutada períodicamente y en lo posible tener armado un plan de mantenimiento  con ejecuciones automáticas.

1
2
3
4
5
6
BACKUP LOG [Devtroce] 
 
TO DISK = N'C:\Backup\Devtroce.bak'
WITH NOFORMAT, NOINIT,
NAME = N'Devtroce-Transaction Log Backup',
SKIP, NOREWIND, NOUNLOAD, STATS = 10;

o bien, (Continuar Leyendo sobre Crear backup del Transaction Log y reducir su tamaño en SQL Server)

post icon

Configurar varias instancias de MySQL en un mismo equipo

Para tener varias instancias independientes del motor de base de datos MySQL debemos hacer un par de configuraciones manuales, ¿Qué significa este concepto? Que podemos tener en la misma instalación, o mismo terminal, más de un motor, escuchando en distintos puertos (uno por cada instancia), teniendo la posibilidad de configurar de manera totalmente independiente y distinta cada una.

No debemos abusar del uso de las instancias, porque por cada una se corre un proceso que consume recursos y no se comparten entre ellos, sólo es recomendable si es estrictamente necesario, o si queremos ahorrar costos para no (Continuar Leyendo sobre Configurar varias instancias de MySQL en un mismo equipo)

post icon

Mejorar la velocidad de conexión del SSH Server

El protocolo SSH nos permite controlar un equipo de manera remota como sabemos, el punto central de este post no es precisamente explicar como funciona o como podemos usarlo, si no más bien es para la gente que ya lo utiliza y quiere aumentar la velocidad de conexión contra el servidor SSH.

La lentitud se siente más cuando el servidor DNS no está correctamente configurado o se está en una red que no lo usa, este protocolo último ralentiza mucho la autenticación, ya que debe comprobar si esta en el servidor de dominios registrado la IP entrante, lo cual resulta bastante molestoso, la solución es sencilla nuevamente, sólo debemos deshabilitar el uso de ésta comprobación de la siguiente manera:

Desde un editor de texto editamos el archivo

1
vim /etc/ssh/sshd_config

y agregamos la siguiente linea al final del fichero

1
UseDNS no

Finalmente reiniciamos el servicio con

1
/etc/init.d/ssh restart
post icon

Realizar Consultas Recursivas en SQL Server

Como todo buen diseñador de base de datos sabe, es bastante común encontrarse con entidades recursivas en el diseño de nuestra BD, 2 ejemplos típicos son el jefe y el subordinado, en el diseño ambas personas se encuentran registradas como tuplas dentro de la entidad Persona o Funcionario (según el diseño que hemos tomado, incluso estaría mejor diseñado si se lo hace en base al cargo), al no existir 2 entidades que tengan cardinalidad 1:M, por que así obtendríamos duplicación de datos, debemos determinar un modo que ambos estén en la misma entidad y a su vez tener la capacidad de controlar quién es jefe de quién, esto se lograría agregando una columna más que sea del mismo dominio que su propia PK, es decir, la columna nueva sería FK de la PK que le determina, logrando así una cardinalidad 1:M recursiva.

Otro ejemplo típico es el caso de los contratos, estos suelen tener la característica que vencen en una fecha determinada, por cuestiones de ventas/marketing al cliente se le facilita normalmente este proceso con una renovación de contrato (Continuar Leyendo sobre Realizar Consultas Recursivas en SQL Server)

post icon

Como destruir clases en C#

Así como todos los que programamos con orientación a objetos, sabemos que el constructor de una clase sirve para la gestión de la clase en sí, en el momento de ser instanciada, del mismo modo los destructores son los gestionadores de la clase en caso que ésta deje de ser utilizada.

Esto se utiliza frecuentemente para cerrar conexiones de red, archivos abiertos y otros semejantes, de este modo podemos tener una aplicación que sea más eficiente a la hora de rendir cuentas de rendimiento, obtendremos menos uso (Continuar Leyendo sobre Como destruir clases en C#)

post icon

Ganar velocidad de conexión en MySQL

Hace unas semanas atrás nos tocó una mala pasada con mis compañeros de trabajo, una de nuestras aplicaciones se conecta con JDBC a MySQL, en laboratorio y en casi todos los lugares donde estaba implementado, funcionaba velozmente, pero en la última implementación, teníamos retardos y timeouts, lo primero que hicimos fue subir el tiempo de espera del JDBC, y se conectaba pero tardaba demasiado, (siendo ya un tiempo muy incomodo para el usuario). Verificamos los cables de red, las NIC, y otras tantas cosas, que estando entre varios se nos agotaron las ideas.

Luego nuestro compañero El Gran Che, nos dió la luz. Todo el embrollo se debía a una configuración del motor de la BD. Este cuando recibía peticiones de conexión tenía activo la opción de resolver el DNS, al “no estar correctamente configurada” la configuración de red (Continuar Leyendo sobre Ganar velocidad de conexión en MySQL)

Página 4 de 41234