Inicio - page 3

Comparar «de un vistazo rápido» dos bases de datos

Comparar «de un vistazo rápido» dos bases de datos

Hoy os dejo un pequeño script que me he preparado en un rato y que permite comparar dos bases de datos que pueden pertenecer a dos usuarios diferentes y estar en dos servidores diferentes.

No penséis que el script va a hacer maravillas, no va a comprobar el contenido ni va a generar un informe de la leche. Sólo revisa y compara el número de filas que hay en cada tabla. Para ello, obtiene un listado de las tablas de la primera base de datos, y para cada una de ellas el número de filas que hay. Después, para cada tabla, mira a ver si existe en la segunda base de datos y, de ser así, muestra el número de filas que hay allí. El resultado lo muestra en formato CSV que luego puede verse como hoja de cálculo.

A mí va a resultar imprescindible estos días, ya que estoy haciendo una migración de una base de datos en varias fases, y necesito ir comparando las diferentes versiones que obtengo para ver que no se me han ido perdiendo datos por el camino.

Continue reading →
Sustituir IP en el archivo de hosts

Sustituir IP en el archivo de hosts

Primero de todo agradecer a mi compañero Almóvil que me mandara este script, la verdad es que viene muy bien cuando se tiene un servidor que cambia de IP cada dos por tres.

Puede ser que tengáis una veintena de direcciones mapeadas en el archivo hosts, y que como a mí os guste tener un par «ip-servidor» por línea. Si éste es vuestro caso y de repente dicho servidor cambia de IP, tendréis que modificar las 20 líneas para actualizar ese valor.

En esos momentos este script viene como anillo al dedo, y modificará el archivo de hosts para cambiar el viejo valor. Veámoslo:

#!/bin/bash 

clear
echo "Cambiando IP $1 por $2.."
sudo sed -i 's/'$1'/'$2'/g' /etc/hosts 
echo "..Done"

Para ejecutarlo, sólo hay que ejecutar:

# cambiaIP ip_vieja ip_nueva ./cambiaIP 10.0.1.234 10.1.2.345

Como mejora, os recomiendo que añadáis un control de parámetros para no liarla parda si os equivocáis.

Pues otro día más y mejor!

Exportar base de datos en tablas separadas

Exportar base de datos en tablas separadas

Hoy os voy a presentar un script que me ha venido muy bien estos días. Sirve para exportar una base de datos poniendo cada tabla en un fichero diferente.

Si estáis realizando operaciones que afectan a todas las tablas y necesitáis restaurar una versión anterior porque el proceso os ha fallado podréis importar sólo las que necesitéis, ahorrándoos así importar la base de datos completa.

Para que os hagáis a la idea, a mí me ha servido en una migración en la que importar la base de datos vieja cuesta 5 horas y el proceso de actualización cerca de 8 horas. Puedes hacer muy pocos intentos porque las horas de desarrollo se disparan, así que poder importar sólo cachos es muy pero que muy útil.

Aquí tenéis el script, espero que os sea útil:

DB_USER="usuario"
DB_NAME="mi_base_de_datos"
DB_PWD="pass"

echo $DB_USER $DB_PWD $DB_NAME 

mysql -u$DB_USER -p$DB_PWD $DB_NAME -e "show tables" |  while read table; do
  echo Exporting table $table to file $table.sql 
  mysqldump -u$DB_USER -p$DB_PWD $DB_NAME $table > $table.sql 
done

Otro día os cuento más cosas 🙂

Ejecutar último comando como root

Ejecutar último comando como root

Muchas veces me pasa que quiero, por ejemplo, editar el fichero de hosts, para lo cual ejecuto lo siguiente:

nano /etc/hosts

Nano abre el archivo, edito las líneas que necesito y cuando voy a guardar,

 [ Error writing /etc/hosts: Permission denied ]

¿qué ocurre?

Lo que hay que hacer entonces es cerrar el programa y ejecutar el comando anterior escribiendo sudo delante, para tener permisos de administrador. En este ejemplo el comando es corto y escribirlo cuesta poco tiempo, pero a veces no es así y tenemos que andar copiando y pegando.

El comando !! (no, no estoy exclamando nada, esos dos palitos es lo que hay que escribir en la línea de comados) nos permite ejecutar el último comando de nuevo. Así que si le ponemos sudo delante, lo que haremos es ejecutar el último comando pero con permisos de administrador. Queda así:

sudo !!

Sencillo y rápido, ¿no?

Pues otro día más y mejor! 🙂

Placehold It: Generador de imágenes de ejemplo

Placehold It: Generador de imágenes de ejemplo

Hay muchas veces mientras desarrollamos una web en las que necesitamos poner imágenes para poder ir viendo como quedan las cosas. Pero no siempre tenemos las imágenes preparadas, bien porque quien nos las tiene que proporcionar todavía no las tiene listas, bien porque no las tenemos ni decididas aún.

Hasta hoy lo que yo hacía era buscar por la red imágenes que puedan encajar y utilizarlas de forma temporal. Esta solución aparte de ser cutrecilla probablemente no sentará muy bien a sus propietarios.

Hoy he decidido buscar y he encontrado muchos servicios que proporcionan el equivalente al «Lorem Ipsum» pero para imágenes. De entre los que he visto me he decantado (completamente al azar) por PlaceHoldIt.

placeholdit

Este servicio nos da URLs para generar imágenes de ejemplo y enlazarlas directamente desde nuestros desarrollos. Veamos algunos ejemplos.

Si necesitamos una imagen de 300×300, podemos utilizar el siguiente HTML para obtener una:

<img src="//placehold.it/300x300"
       title="Imagen de prueba" alt="Imagen de prueba de PlaceHoldIt" />

¿Necesitáis texto? Pues muy sencillo, añadimos un parámetro más y …

<img src="//placehold.it/300x300&amp;text=Duranda"
      title="Imagen de prueba" alt="Imagen de prueba de PlaceHoldIt" />

Podéis cambiar también el color y alguna cosa más. Pero oye, no os voy a contar todo, id a la web y echad un vistazo.

Sin más, espero que sea útil. Otro día más, y mejor.  🙂

Page 3 of 6 1 2 3 4 5 ... Last →