Una mudanza sin salir del barrio
En este post vamos a ver el modelo de La Coctelera, o al menos un poquito de él, para que dé algo más de morbo, que bastate frío es el asunto como para que encima lo mostremos todo de una vez. Frío sí, y mucho, porque se trata del modelo de datos, no penseis bien que os conozco.
Lo hacemos aprovechando que un amigo de La Coctelera ha decidido continuar su anadura por la blogosfera con un nuevo blog tras enterarse de que ya existía uno más antiguo con el mismo nombre.
Para que no se quedase "partido en dos" hemos decidido hacerle una "mudanza local" pasando todos sus posts, categorias, enlaces, etc. al nuevo blog. Una mudanza eso sí, sin salir del barrio coctelero.
Primero vamos a ir actualizando las tablas afectadas: categories, links, posts y users_friends. Para ser más discretos mostraremos vv (viejo) y nn (nuevo) en lugar de los identificadores de usuario reales.
Vamos a por la primera de las tablas:
mysql> update categories set user_id=nn where user_id=vv;
ERROR 1062: Duplicate entry 'Chascarrillos-NN' for key 2
Empezamos mál. Resulta que ya ha creado y usado la categoría "Chascarrillos" en el nuevo blog. Bueno, aparentemente tiene fácil solución. Cambiamos el identificador en el post que la utiliza por el del antiguo "chascarrillo" y borramos el nuevo en la tabla de categorias.
mysql>update posts_categories set category_id=1384 where category_id=7232;
mysql>delete from categories where id=7232;
Repetimos la consulta para actualizar las categorias (esta vez no salta ningún chascarrillo ;) y seguimos con los enlaces...
mysql>update links set user_id=nn where user_id=vv;
Con los posts...
mysql>update posts set user_id=nn where user_id=vv;
Sus amigos...
mysql>update users_friends set friend_id=vv where friend_id=nn;
A los que le tienen como amigo...
mysql>update users_friends set friend_id=nn where friend_id=vv;
Movemos todos los archivos de su antigua carpeta a la nueva y creamos un enlace simbólico para evitar referencias perdidas...
:~€ cd the-shaker/public/myfiles
:myfiles€ mv barravar/* suidae; rmdir barravar; ln -s suidae barravar
Por último editamos the-shaker/config/vocs.rb, el archivo con los vocabularios en el que se encuentra la tabla hash Username_Aliases con los alias de blog. A dicha tabla le añadimos una nueva entrada tal que 'barravar' => 'suidae'
Ah! y svn commit vocs.rb -m 'Incorporado alias barravar para suidae.' para que el cambio quede en el repositorio de subversion.
Sending vocs.rb
Transmitting file data .
Committed revision 105.
¡Hecha!
Las mudanzas son siempre un incordio, pero desgraciadamente inevitables en muchas ocasiones. En breve La Coctelera falitará la exportación e importación de contenidos desde y hacia sus blogs para cuando os veais en una de ellas. Pero de momento, si os la encontrais en el camino no dudeis en pedirnos nuestro camión ;-)

suidae dijo
Muchas gracias.
Me pasais la factura del combustible usado por el camión, que es lo que se suele hacer en estos casos ;))
23 Agosto 2005 | 05:28 PM