jueves, 24 de enero de 2008

Problema con el teclado en Kubuntu

Ha sucedido en el ordenador de Mayka (24 enero de 2007).
De repente no le funcionaba el teclado, ayer sí y hoy no. No le funciona tras validarse con usuario y contraseña (para eso sí le va). En cambio cambiando de usuario a root (que lo tiene activado en el kde) sí puede teclear.

Bueno para solucionarlo hemos accedido a su home y hemos renombrado la carpeta .kde a .kde_old. Así forzamos en el próximo reinicio a que se cree nuevo dicho directorio y se solucione el problema.

De todos modos habría que averiguar por qué razón ocurre este problema para darle mejor solución.

miércoles, 16 de enero de 2008

Cambiar una base de datos postgres a un tablespace distinto

Trabajaremos con pgadmin y con consola.

Resulta que las bases de datos postgres que existen en el servidor (Sercartlin) guardan los datos en el tablespace que hay por defecto (pg_default) lo cual implica por lo general que vayan a parar a /var, y dicha partición está ya al 93% de ocupación. Lo correcto es guardar cada base de datos a un tablespace propio. Tenemos en el servidor una partición /pgdata pensada para esto. Dentro de dicho directorio hemos de crear un directorio con el nombre del futuro tablespace.

El proceso es el siguiente:
dentro de /pgdata crearemos un directorio por cada tablespace que queramos añadir.
Ejemplos:
tbs_bdgis (donde se guardará una base de datos llamada bdgis)
tbs_jabamu (donde se guardará una base de datos llamada jabamu)
etc.

Vamos a consola y ejecutamos la orden
pg_dump basedatos > fichero.out

Quizá tengamos que incluir la opción -U para indicar el usuario que conecta a la bd, y podemos poner la opción -Ft para obligar a que cree el fichero .out (o .sql o como queramos) en formato .tar.

En pgadmin, dentro de la máquina que nos interese, vamos al apartado tablespaces y creamos un nuevo tablespace que apunte al directorio que hemos creado. anteriormente.

Una vez acabe podemos borrar la base de datos de la que ya hemos hecho copia de respaldo y volver a crearla con el mismo nombre y características pero indicando el tablespace nuevo.

Por último ejectuamos
psql -f fichero.out (-U usuario si procede)
Esto nos añadirá todos los datos de la tabla. POR COMPROBAR QUE REALMENTE LA BASE DE DATOS TIENE EL NUEVO TABLESPACE.

Otra manera de hacer todo esto (usando pg_restore):
- pg_dump -Ft basedatos > basedatos.tar
- Borramos la bd y la creamos de nuevo con el tablespace nuevo
- pg_restore -d basedatos basedatos.tar