Export remotos de Oracle

Julio 23rd, 2008

Ya sé que hace tiempo que no escribo, pero el trabajo no me deja. De hecho son las 00:50 y sigo trabajando. Ahora tengo un ratito en lo que termina el export del Oracle, así que de paso aprovecho y os cuento el trauma por el que he pasado.

Veréis, tenemos un servidor con Oracle 10g y un montón de datos importantes de un cliente. Por cosas del destino hemos tenido que migrar de esa base de datos a un Oracle 9i. Esto en sí mismo ya es un problema, primero tenemos que hacer un export del Oracle 10g, pero no podemos hacerlo con las utilidades de exportación que nos ofrece el 10g. Los export siempre hay que hacerlos con el cliente de menor versión, en este caso, sería con la utilidad exp del Oracle 9i.

Para hacer esto, o bien instalamos un Oracle 9i en donde tenemos el 10g (lo que no es nada práctico y a parte es muy costoso en tiempo y ancho de banda) o bien realizamos el export remoto, que por supuesto es lo más elegante.

Esto del export remoto me ha traído de cabeza unas cuantas horas, pero ya encontré la solución y la quiero compartir con vosotros, para que nadie pierda tiempo en estas tonterías:

export TWO_TASK=’(DESCRIPTION=(ADDRESS_LIST=(none.com)))’
exp userid=scott/tiger file=export.dmp 

Sí, así de fácil, basta exportar la variable TWO_TASK con los datos de conexión en el formato esperado por oracle y listo.

Categorías: interesante | 4 comentarios

Recuperar memoria USB inservible

Julio 3rd, 2008

Si tienes una de esas memorias USB que están tan dañadas que tu Linux ya ni las reconoce, intenta hacer lo siguiente antes de tirarla y quizás te dure algún tiempo más.

En mi caso el problema era que la memoria tenía la estructura lógica tan corrupta que no había forma de que el sistema se aclarara con lo que había dentro. El dmesg suele mostrar algo similar a lo siguiente en este caso:

sdb: rw=0, want=39712621, limit=2009088
attempt to access beyond end of device
sdb: rw=0, want=39712622, limit=2009088
attempt to access beyond end of device
sdb: rw=0, want=39712623, limit=2009088
attempt to access beyond end of device
sdb: rw=0, want=39712664, limit=2009088
attempt to access beyond end of device
sdb: rw=0, want=39712665, limit=2009088
attempt to access beyond end of device

En estas circunstancias el fdisk es incapaz de reorganizar la memoria de manera adecuada:

# fdisk /dev/sdb
No se puede buscar en /dev/sdb

Así que lo primero es poner a cero nuestro dispositivo:

# dd if=/dev/zero of=/dev/sdb

Después de esto ya podemos usar el fdisk y el mkfs:

# fdisk /dev/sdb

[.,,]

# mkfs.ext3 /dev/sdb1

[...]

Y ya tenemos nuestra memoria lista para ser usada.

Categorías: Tips&Tricks | No hay comentarios