Las herramientas CSSCAN y CSALTER se usan en servidores de base de datos Oracle, generalmente en las versiones anteriores al 12c.
Para poder realizar una migración de un character set a otro realizaremos los pasos que explico a continuación.
La función CSSCAN es usado para descartar de la base de datos posibles problemas de conversión.
Identificando la cantidad de esfuerzo requerido por el servidor para llevar a cabo la tarea de la migración de un juego de caracteres a otro.
Por ejemplo del juego de carácter (character set) WE8MSWIN1252 al juego de caracteres AL32UTF8 usando la función CSSCAN y CSALTER combinadamente.
Con esta herramienta, tendremos toda la información sobre la migración, como por ejemplo la carga que este conlleva para el servidor o los caracteres que nos darán problemas de truncamientos al realizar el cambio.
Truncamientos
Cuidado con los caracteres que den problemas de truncamiento ya que estos dos caracteres estarán en conflicto sobre su significado en el juego de caracteres a la que va a ser migrado.
Por ejemplo puede llegar a eliminarse el carácter o a tomar un significado o carácter distinto en la que fue guardada como pasar de la ä a la a.
También puede ser un problema que dos caracteres de distintos lenguajes se guarden de la misma forma en el juego de caracteres de destino.
El proceso de migración
El proceso a realizar para ejecutar una migración en un servidor Oracle de una versión anterior al 12c usando el script CSALTER son las siguientes:
El primer paso a realizar es detener la base de datos en modo inmediato.
shutdown inmediate;
A continuación realizaremos una backup completa de la base de datos que vamos a migrar, es recomendable realizarlo en frio y con una copia de utilidad (expdp/impdp).
Al tener esta backup podremos fallar en la migración sin consecuencias ya que algo que debemos tener en cuenta en una migración es que no hay marcha atrás en los cambios realizados en ella.
Para continuar en la migración, volveremos a poner en marcha la base de datos usando el comando startup;
Y procederemos a ejecutar la utilidad csscaner que esta ubicado en $ORACLE_HOME /bin
$csscan "sys/password@db as sysdba" full=y
A continuación del comando nos pedirá que insertemos el nuevo juego de caracteres a la que vas a migrar la base de datos.
Para finalizar el proceso de migración:
Tendremos que iniciar el script CSALTER pero antes de esto deteniendo la base de datos y conectado con el usuario SYS.
Para ello tendremos que acceder a la dirección $ORACLE_HOME/RDBMS/admin
y ejecutando csalter.plb
Y con este proceso de migración conseguiríamos migrar la base de datos de un juego de caracteres de Oracle anteriores a la versión 12c, para las bases de datos posteriores a este tenemos la herramienta añadida DMU.
Soy un Técnico Informático con una gran pasión hacia las nuevas tecnologías.