Backup de tablas específicas en PostgreSql

Ya vimos cómo se hacen los backups, cómo se los automatiza e incluso, cómo restaurar esos backups en PostgreSql.

Hace unos días tuve un requerimiento por el cual, si bien la base de datos en cuestión ya se backupea, me solicitaban hacer un backup con mayor periodicidad, pero sólo de un conjunto de tablas.

Bien, gracias a la flexibilidad de nuestro motor favorito, esto es muy sencillo.

Repasemos cómo hacíamos para hacer un dump completo de nuestro base de datos.

pg_dump -i -h localhost -p 5432 -U postgres -F c -b -v -f "/home/damian/backups/mibase.backup" mibase

Para exportar sólo un conjunto de tablas, tenemos que hacer un pequeño cambio.

pg_dump -i -h localhost -p 5432 -U postgres -t tabla -F p -b -v -f "/home/damian/backups/mitabla.sql" mibase

La diferencia entre ambos scripts radica en que agregamos el parámetro -t seguido del nombre de nuestra tabla (en este caso, con poca inspiración, usé tabla).

Lo que vamos a obtener es, solamente,  un backup de la tabla indicada, con su estructura y datos.

Seguir leyendo «Backup de tablas específicas en PostgreSql»

Formulario de Contacto con Contact Form 7 para WordPress

Hace un tiempo puse en funcionamiento el formulario de contacto en el blog.

Para esto recurrí a un plugin del que poco había escuchado pero que me ha resultado bastante cómodo y flexible. El plugin en cuestión se llama Contact Form 7.

Una vez instalado, vamos a tener una nueva opción dentro de nuestro menú de herramientas.

Acceso a la configuración de Contact Form 7
Seguir leyendo «Formulario de Contacto con Contact Form 7 para WordPress»

Magento 1.2.1 (actualización importante)

Desde el lanzamiento de la serie 1.2.0, se sucedieron 3 actualizaciones menores, corrigiendo temas muy puntuales (y todo en algo más de un mes).

El 2 de Febrero se lanzó la versión 1.2.1. A diferencia de las últimas actualizaciones, podemos ver en el changelog que no sólo se corrigieron bugs, sino que además, han habido una serie de cambios importantes.

Si bien todavía no me he puesto a jugar con la nueva versión, me resultan interesantes los siguientes cambios:

  • Implementación de productos descargables dentro de los configurables, los agrupados y los bundles (todavía no me acostumbro a una traducción para este tipo de productos).
  • Agregado de índices en las tablas de ventas (lo cual debería impactar en la performance).
  • Mejora en el caché de traducciones.
  • Se aplicaron mejoras en los skins Blank y Modern.

La descarga de Magento sigue estando donde siempre, recuerden que deben estar logueados para poder acceder a los archivos.

En ésta oportunidad, a diferencia de algunas pasadas, celebro ésta actualización (a pesar de que me tomara por sorpresa ya que no estuve del todo pendiente del roadmap).

A probar en entorno de desarrollo y actualizar las tiendas antes de pasar a producción.

Duplicando una tabla en Mysql

Hay ocasiones en las que necesitamos hacer pruebas sobre una tabla que se encuentra en producción.

Una forma rápida de hacer esa prueba sin afectar los datos, es hacer una copia de la tabla.

En realidad, si tenemos tiempo siempre será más cómodo llevar esos datos a un entorno de staging para trabajar más tranquilos; vamos a pensar que no tenemos tiempo… y mucho menos un entorno de staging.

Si queremos duplicar nuestra tabla, sólo debemos ejecutar la siguiente instrucción:

CREATE TABLE tabla_nueva LIKE tabla_original;

De ésta forma. obtenemos una tabla idéntica en cuanto a estructura.

Seguir leyendo «Duplicando una tabla en Mysql»

Antileech sencillo con Php

El Antileech se utiliza para evitar exponer el link directo a un archivo que pueda descargarse.

Otra ventaja de ésta técnica, es que podemos forzar las descargas para que se realicen desde nuestra página.

Lo que vamos a hacer, es generar un archivo de descarga que, dependiendo de algún parámetro que pueda llegarle, va a leer el contenido de un archivo, y ese contenido, será impreso en nuestro archivo de descarga.

De ésta forma, la ubicación real del archivo nunca será expuesta.

Seguir leyendo «Antileech sencillo con Php»