Muerto el Rey. Viva el Rey !

Posted by Gabriel on May 10, 2013
linux, Ubuntu / No Comments

El pasado Miércoles día 8 se produjo un fallo catástrofico a las 17.00h en el PC (windows XP) que actuaba como servidor en la oficina. Finalmente parace ser que es el disco duro, que ya trabajaba a temperatura elevada, según indicadores, y encima ahora hace más calorcito.

Se dispara entonces la alarma. Al día siguente de trabajo, Jueves, por lo menos debía haber un PC haciendo de servidor y el ordenador del almacén capaz de imprimir albaranes. En caso contrario habrían 4 personas de 6 mirando lo que yo hacía.

Hacía ya un mes que el servidor IBM había hecho varios extraños. Desde entonces existia un viejo PC con Ubuntu Server que mediante rsync se dedicaba a observar y copiar todos los cambios que podrían haber en la zona de datos o compartida del difunto disco duro. Este sería al candidato ideal para un remiendo de emergencia para que a la mañana siguiente todo el mundo pudiera seguir trabajado.

El directorio rsync se convirtió en /share y apunté todos los PC a la nueva compartida. Excepto el ordenador del almacén. Un viejo 120 MHz con win95 que había estado funcionando hasta el momento. Pero no quería unirse a Copper (el nuevo servidor Ubuntu) por temas de login/passwd. Había passwd, pero no login en win95.

Hora de hacer otro cambio. Ya llevaba días preparando otro PC, este con winXP, como sustituto del PC win95 ante una posible falla y esta también había llegado.

Por la mañana ya todo funcionaba correctamente. Tan solo se habían algunas entradas del CRM en mySQL porque su copia no estaba sincronizada aunque si que se hacían copias diarias.

Ya tenemos un LINUX en producción. Y parece que a pesar de los temores funciona bien.

Y cuanto me alegro de haber hecho horas extras durante mas o menos en estas fechas del año pasado, pasando todo el programa de gestión de MSSQL a MySQL.

Humor informático (fools day)

Posted by Gabriel on April 01, 2013
linux / No Comments

Visto en debian.org, el 1 de Abril del 2013:

Debian iz free operatin sistem (OS) 4 ur computr. An operatin sistem iz teh set ov basic programs an utilitiez dat mak ur computr run.

Debian providez moar than pure OS: it comez wif ovar 29000 packagez, precompild software bundld up in nice format 4 easy installashun on ur machine. Read moar…

Tags:

Redondeo ?

Posted by Gabriel on December 18, 2012
History / No Comments

linea.importe = decimal.Round((linea.cantidad * linea.precio * (100 – linea.descuento) / 100), 2, MidpointRounding.AwayFromZero);

 

El parámetro ‘MidpointRounding.AwayFromZero’ es imprescindible para obtener un redondeo contable.

 

MySQL lento ?

Posted by Gabriel on September 24, 2012
linux, MariaDB, MSSQL, mySQL / No Comments

Nada más instalar MySQL en este caso Windows se puede observar una velocidad especialmente lenta en la escritura en base de datos InnoDB, concretamente si la comparamos con MSSQL.

Esto se debe al hecho de que InnoDB para cumplir las exigencias ACID escribe en disco tan pronto como puede. MSSQL no lo hace por defecto, por lo que se están comparando dos formas de funcionar diferentes.

Si queremos que MySQL escriba como lo hace MSSQL, más o menos cada segundo, haciendo uso de los bufferes de disco, se debe modificar el siguiente parámetro en el fichero de configuración de MySQL (my.ini):

set innodb_flush_log_at_trx_commit = 2

Aunque en este caso deja de cumplirse las normas ACID y el servidor debe de estar perfectamente protegido eléctricamente para un posible fallo en la fuente de energía. Lo mismo aplica a MariaDB.

** Nota: mySQL funciona más rápido en Linux.

Reinstalación de un programa cerrado.

Posted by Gabriel on September 18, 2012
History / No Comments

Recientemente me he visto en la necesidad de instalar el programa cerrado que usamos para contabilidad en otro PC. A parte de encontrarme con una escasa información para ello y de ser presionado por el fabricante del software en el sentido de que “todo debe de instalarse bien”, destaco que una instalación por parte de la empresa a la que le compramos el programa nos pide 800 €.

Considerando que la vida útil de un ordenador es de 5 años o que por imposición de cambios del sistema operativo la reinstalación de estos programas es necesaria en este intervalo de tiempo se llega fácilmente a esta conclusión:

Otro atraco y abuso de que posee las fuentes y no facilita información de sus productos.

Cuidado con MySQL

Posted by Gabriel on August 21, 2012
mySQL / No Comments

Parece ser que Oracle está poniendo las cosas cada vez más difíciles:

http://m.techcrunch.com/2012/08/18/oracle-makes-more-moves-to-kill-open-source-mysql/

Las opción más inmediata que existe es ir a a MariaDB.

Veremos en un futuro.

Mono con Entity Framework

Posted by Gabriel on August 14, 2012
C#, linux / No Comments

Notición.

Mono ya incorpora el Entity Framework.

Sigue este enlace.

El Entity Framework es open source

Posted by Gabriel on August 08, 2012
C# / No Comments

Ya hace días que ha sido noticia, pero los señores de Microsoft me han sorprendido muy gratamente al mismo tiempo que me han dejado un poco perplejo. Perplejo porque no entiendo como es que Microsoft halla liberado una de las que considero yo sus joyas de su corona.

Mi código se basa mucho en el Entity Framework. De hecho fue el motor que permtió arrancar rápidamente con todo esto al hacerme olvidar toda la complejidad que suponía la conexión a una base de datos. Tal es mi dependencia y el que hasta ahora no estuviera disponible como código libre que ya tenía en mente que quizás en un futuro necesitase crearme algún tipo de librería que abstrayera mi conexión a las bases de datos de una forma simple.

Nhibernate nunca me gustó y que ahora ya hallan noticias de que los desarrolladores de Mono ya puedan mirarse el Entity Framework pues, la verdad, es una buena noticia.

Forzar deseleccion del dataGridView cuando se carga en el Load del Form

Posted by Gabriel on July 23, 2012
History / No Comments

Por ejemplo:

public BuscarEscrito()
{
    InitializeComponent();
    dataGridView.Paint += new PaintEventHandler(dataGridView_Paint);
}

void dataGridView_Paint(object sender, PaintEventArgs e)
{
    dataGridView.ClearSelection();    
}

Cambiar nombre de una base de datos mySQL

Posted by Gabriel on July 17, 2012
linux, mySQL, Ubuntu / No Comments

Básicamente se hace un volcado de la base de datos que queremos cambiar el nombre, se crea una nueva BBDD con el nombre nuevo y se introducen los datos del volcado de la base de datos antigua:

$ mysql -u username -p -v olddatabase > olddbdump.sql

$ mysqladmin -u username -p create newdatabase

$ mysql -u username -p newdatabase < olddbdump.sql

Habrá que borrar la BBDD con el nombre antiguo.

Ojito, todos estos comandos también funcionan en Windows.