34.6 Migración de los datos de una base de datos de Sybase SQL Anywhere incrustada a una base de datos de Oracle externa

ZENworks 10 Configuration Management permite migrar los datos de una base de datos de Sybase SQL Anywhere incrustada interna o de una base de datos de Sybase SQL Anywhere externa que se ejecuten en un servidor primario de ZENworks a una base de datos de Oracle instalada en un dispositivo sin ZENworks 10 Configuration Management instalado.

IMPORTANTE:si ZENworks Reporting Server está instalado en el dispositivo, no funcionará después de migrar la base de datos. Para que funcione, debe instalarlo de nuevo en un servidor primario en el que se haya instalado el cliente de Oracle después de migrar la base de datos. Para obtener más información, consulte la Sección 34.6.3, Tareas posteriores a la migración.

Lea estas secciones para migrar la base de datos:

34.6.1 Preparación para mover los datos

Antes de migrar los datos de la base de datos de Sybase a la base de datos de Oracle, haga lo siguiente:

  • Asegúrese de que el estado de la licencia de ZENworks 10 Configuration Management sea Activo. El producto debe estar instalado y en ejecución ya sea con una versión con licencia o de evaluación.

  • Guarde todos los informes, el archivo rights.xml y el archivo ownership.xml mediante el comando report-save (rpsv) (carpeta de destino). Los archivos XML contienen los detalles de los derechos y de propiedad de todos los informes.

  • Asegúrese de que el servidor primario en el que se ha configurado la base de datos de Sybase se haya actualizado a ZENworks 10 Configuration Management.

  • Asegúrese de que el servidor primario de ZENworks tiene una base de datos de Sybase interna o externa instalada.

  • Asegúrese de que la base de datos de Oracle esté instalada en un dispositivo en el que no esté instalado ZENworks 10 Configuration Management.

  • Asegúrese de que el espacio de tablas USERS tenga espacio suficiente para crear y almacenar el esquema de base de datos de ZENworks. El espacio de tablas requiere un mínimo de 100 MB para crear el esquema de base de datos de ZENworks sin incluir ningún dato y el espacio adicional apropiado, que dependerá del tamaño de la base de datos que se disponga a migrar. La utilidad de migración de bases de datos sólo utiliza por defecto el espacio de tablas USERS. No es posible especificar manualmente ningún otro espacio de tablas durante la migración.

  • Asegúrese de que el parámetro NLS_CHARACTERSET está definido en AL32UTF8 y el parámetro NLS_NCHAR_CHARACTERSET en AL16UTF16 ejecutando la siguiente consulta en el indicador de la base de datos:

    select parameter, value from nls_database_parameters where parameter like '%CHARACTERSET%';
    
  • (Condicional) Si desea migrar la base de datos creando un nuevo esquema de usuarios, asegúrese de que se cumplen los siguientes requisitos adicionales:

    • Debe conocer las credenciales de administrador de la base de datos.

    • Debe existir un espacio de tablas para asociarlo al usuario con acceso de Oracle

  • Puede optar por migrar la base de datos utilizando un esquema de usuarios existente que se encuentre en un servidor de la red en las siguientes situaciones:

    • El administrador de la base de datos crea un esquema de usuario con los derechos necesarios y usted obtiene las credenciales de ese esquema de usuario del administrador de la base de datos. En este caso, no se necesitan las credenciales del administrador de la base de datos para migrar la base de datos.

    • Deberá crear un esquema de usuarios en la base de datos de Oracle y seleccionarlo durante la migración de la base de datos.

    Si desea migrar la base de datos utilizando un esquema de usuarios existente, asegúrese de que se cumplen los siguientes requisitos adicionales:

    • Asegúrese de que el esquema de usuarios tiene los siguientes permisos para crear la base de datos.

      • CREATE SESSION
      • CREATE_TABLE
      • CREATE_VIEW
      • CREATE_PROCEDURE
      • CREATE_SEQUENCE
      • CREATE_TRIGGER
    • Asegúrese de que la cuota para el esquema de usuarios está configurada en Ilimitado en el espacio de tablas USERS.

  • Detenga manualmente los servicios de ZENworks de todos los servidores de la zona de gestión.

    Para detener los servicios de

    • En Windows: realice las acciones siguientes:

      1. En el menú Inicio del escritorio de Windows, haga clic en Configuración > Panel de control.

      2. Haga doble clic en Herramientas administrativas > Servicios.

      3. Detenga los siguientes servicios: Servidor de Novell ZENworks, > Monitor de servicios de Novell ZENworks y Servicio del agente de Novell ZENworks.

    • En Linux: en el indicador de la consola, escriba los siguientes comandos:

      • /etc/init.d/./novell-zenmntr stop

      • /etc/init.d/./novell-zenserver stop

      • /etc/init.d/./novell-zenloader stop

  • Compruebe que el servicio Novell ZENworks Embedded Datastore del servidor primario se está ejecutando.

    • En Windows: realice las acciones siguientes:

      1. En el menú Inicio del escritorio de Windows, haga clic en Configuración > Panel de control.

      2. Haga doble clic en Herramientas administrativas > Servicios.

      3. El estado del servicio Novell ZENworks Embedded Datastore debe ser Iniciado.

    • En Linux: en el indicador de consola, escriba /etc/init.d/./sybase-asa status.

  • (Opcional) El estado de migración de la base de datos se registra en el archivo novell-zenworks-configure.log. Por defecto, sólo se registran los mensajes de tipo Info (Información) y Severe (Grave). Si desea registrar también en el archivo otros tipos de mensajes, como Finer (Más detalles), Finest (Todos los detalles) o Warning (Advertencia), haga lo siguiente en el archivo novell-zenworks-configure.properties:

    1. Defina el valor de Logger.logLevel con el tipo de mensaje adecuado.

      Por ejemplo, si desea registrar los mensajes de tipo Finest (Todos los detalles):

       #Logger.logLevel   = FINEST
      
    2. Quite el comentario de la línea eliminando el símbolo "#" de la siguiente forma:

      Logger.logLevel   = FINEST
      

    El archivo novell-zenworks-configure.properties está situado en %ZENWORKS_HOME%\conf\ en Windows y en /etc/opt/novell/zenworks/ en Linux.

34.6.2 Migración de datos de la base de datos de Sybase SQL Anywhere a una base de datos de Oracle

Migración de datos de la base de datos de Sybase SQL Anywhere a una base de datos de Oracle

  1. Compruebe que todas las tareas de la Sección 34.6.1, Preparación para mover los datos se han completado.

  2. Ejecute la utilidad de migración de base de datos.

    • En Windows: en el indicador de comandos, diríjase al archivo vía_de_instalación_de_ZENworks\bin\novell-zenworks-configure.bat e introduzca el comando siguiente:

      novell-zenworks-configure.bat -c DBMigrateConfigureAction

    • En Linux: en el indicador de consola, diríjase a /opt/novell/zenworks/bin e introduzca el comando siguiente:

      novell-zenworks-configure -c DBMigrateConfigureAction

  3. Como tipo de base de datos de destino, introduzca Oracle.

  4. Introduzca la dirección IP o el nombre de host del servidor de la base de datos de Oracle.

  5. Introduzca el puerto utilizado por el servidor de base de datos de Oracle.

  6. Introduzca el nombre de servicio de red completo de la base de datos de Oracle.

  7. Puede optar por crear un nuevo esquema de usuarios o utilizar uno existente.

    Si decide crear un esquema nuevo, continúe en el Paso 8.

    Si decide utilizar un esquema de usuarios existente, diríjase al Paso 9.

  8. Introduzca el nombre de usuario y la contraseña del administrador del servidor de bases de datos.

  9. Cuando se le solicite, introduzca el nombre de esquema del nombre de usuario de la base de datos.

  10. Cuando se le solicite, introduzca la contraseña de esquema de base de datos para la contraseña del usuario de la base de datos.

    La migración de la base de datos se iniciará.

  11. Cuando finalice la migración de la base de datos, podrá consultar el archivo novell-zenworks-configure.log para comprobar si la migración se ha efectuado correctamente. El archivo de registro se encuentra en %ZENWORKS_HOME%\log\ en Windows y en /var/opt/novell/log/zenworks/ en Linux.

  12. Cuando la base de datos se haya migrado correctamente, continúe con la Sección 34.6.3, Tareas posteriores a la migración.

Reanudación de la migración de la base de datos

Si la migración de la base de datos se detiene por cualquier razón, ZENworks Migration Utility permite reanudarla en caso de que se haya creado el archivo dbmigration.xml. El archivo está situado en el directorio vía_de_instalación_de_ZENworks\bin en Windows y en el directorio /opt/novell/zenworks/bin en Linux.

  1. Ejecute la utilidad de migración de base de datos.

    • En Windows: en el indicador de comandos, diríjase al archivo vía_de_instalación_de_ZENworks\bin\novell-zenworks-configure.bat e introduzca el comando siguiente:

      novell-zenworks-configure.bat -c DBMigrateConfigureAction

    • En Linux: en el indicador de consola, diríjase a /opt/novell/zenworks/bin e introduzca el comando siguiente:

      novell-zenworks-configure -c DBMigrateConfigureAction

  2. Como tipo de base de datos de destino, introduzca Oracle.

  3. Introduzca la dirección IP o el nombre de host del servidor de la base de datos de Oracle.

    debe especificar la dirección IP o el nombre de host del servidor de la base de datos de Oracle utilizado al migrar la base de datos. Por ejemplo, si ha especificado la dirección IP del servidor de la base de datos al migrar la base de datos, deberá especificar la misma dirección IP al reanudar la migración. No podrá especificar el nombre del host del servidor de la base de datos.

  4. Introduzca el puerto utilizado por el servidor de base de datos de Oracle.

  5. Introduzca el nombre de servicio de red completo de la base de datos de Oracle.

  6. Seleccione un esquema existente.

  7. Cuando se le solicite, introduzca el nombre de esquema del nombre de usuario de la base de datos especificado antes de que se detuviera la migración de la base de datos.

  8. Cuando se le solicite, introduzca la contraseña de esquema de base de datos de la contraseña del usuario de la base de datos especificada antes de que se detuviera la migración de la base de datos.

  9. Reanude la migración de la base de datos.

    La migración de la base de datos se iniciará.

  10. Cuando la base de datos se haya migrado correctamente, continúe con la Sección 34.6.3, Tareas posteriores a la migración.

34.6.3 Tareas posteriores a la migración

Si hay sólo un servidor en la zona de gestión, todos los servicios de ZENworks se inician automáticamente cuando los datos se migran correctamente a una base de datos de Oracle.

Si hay varios servidores en la zona de gestión:

  1. En el dispositivo en el que se ejecuta la utilidad de migración, copie los archivos siguientes en el directorio adecuado de todos los servidores:

    • zdm.xml
    • dmaccounts.properties
    • dmmappings.properties

    Los archivos se encuentran en el directorio vía_de_instalación_de_ZENworks\conf\datamodel en Windows y en el directorio /etc/opt/novell/zenworks/datamodel en Linux.

  2. Reinicie los servicios de ZENworks.

    • En Windows: realice las acciones siguientes:

      1. En el menú Inicio del escritorio de Windows, haga clic en Configuración > Panel de control.

      2. Haga doble clic en Herramientas administrativas > Servicios.

      3. Inicie los servicios siguientes: Servidor de Novell ZENworks, > Monitor de servicios de Novell ZENworks y Servicio del agente de Novell ZENworks.

    • En Linux: en el indicador de la consola, escriba los siguientes comandos:

      • /etc/init.d/./novell-zenmntr restart

      • /etc/init.d/./novell-zenserver restart

      • /etc/init.d/./novell-zenloader restart

  3. Migre los informes de ZENworks desde la base de datos de Sybase SQL Anywhere a una base de datos de Oracle:

    1. Instale el cliente de Oracle en un servidor primario en el que no haya una instancia de ZENworks Reporting Server.

    2. Instale una instancia nueva de ZENworks Reporting Server en el dispositivo en el que ha instalado el cliente de Oracle.

    3. Copie los informes en el dispositivo en el que se ejecuta la nueva instancia de Reporting Server. Estos son los informes de ZENworks que guardó anteriormente migrándolos. Para obtener más información, consulte la Sección 34.6.1, Preparación para mover los datos.

    4. Publique los informes y restaure los derechos de informes y los detalles de propiedad de los informes mediante el comando siguiente:

      zman rpld vía_del_directorio_que_contiene_rights.xml_y_ownership.xml

    5. Desinstale la instancia de ZENworks Reporting Server que se instaló antes de migrar la base de datos.

El servidor de ZENworks señala ahora a la nueva base de datos.

En las bases de datos Oracle 10g, en todos los nombres de administrador se distingue entre mayúsculas y minúsculas, incluidos los nombres de entrada de los orígenes de usuarios. La cuenta de administrador por defecto de ZENworks que se crea de forma automática durante la instalación empieza con mayúscula, por lo tanto, para poder entrar al Centro de control de ZENworks, se debe indicar el nombre Administrador.

34.6.4 Solución de problemas de migración de base de datos

Solución de una excepción de espacio de montón de Java

Si durante la migración de la base de datos aparece una excepción de espacio de montón de Java debido a que hay poca memoria:

  1. Edite el archivo vía_de_instalación_de_ZENworks\bin\novell-zenworks-configure.bat en Windows o /opt/novell/zenworks/bin/novell-zenworks-configure en Linux para cambiar el valor de espacio de montón en la línea siguiente, según la memoria RAM que tenga el dispositivo donde se ejecute la utilidad de migración:

    "%JAVA_HOME%\bin\java" -Djava.library.path=%ZENLIB% -cp "%MYCP%" %DEBUG_OPTS% %JAVA_OPTS% -Xmx128m com.novell.zenworks.configure.ConfigureLoader %CONFIG_OPTS%
    

    El valor de espacio de montón se representa en megabytes (MB) en la sección -Xmx128m. El valor por defecto es 128.

    Por ejemplo, si la RAM del dispositivo es 512 MB, la línea del archivo novell-zenworks-configure.bat se puede actualizar de la siguiente forma:

    "%JAVA_HOME%\bin\java" -Djava.library.path=%ZENLIB% -cp "%MYCP%" %DEBUG_OPTS% %JAVA_OPTS% -Xmx512m com.novell.zenworks.configure.ConfigureLoader %CONFIG_OPTS%
    

    IMPORTANTE:el valor de espacio de montón debe ser menor o igual a la RAM del dispositivo.

  2. En el indicador de la consola, ejecute el archivo vía_de_instalación_de_ZENworks\bin\novell-zenworks-configure.bat en Windows o /opt/novell/zenworks/bin/novell-zenworks-configure en Linux.

  3. Siga las indicaciones que aparezcan en pantalla.

    Cuando se le pida que introduzca la ubicación del archivo necesario para reanudar la migración, indique la vía completa del archivo DBMigration.xml. El archivo está situado en el directorio vía_de_instalación_de_ZENworks\bin en Windows y en el directorio /opt/novell/zenworks/bin en Linux.

    El archivo XML contiene una lista de tablas y un indicador que muestra si la tabla se ha migrado correctamente o no. Cuando la migración de la base de datos se reanude, sólo se migrarán las tablas cuyo indicador tenga el valor False.

Solución de una detención por fallo de la base de datos de Oracle

Si la base de datos de Oracle se detiene por fallo durante la migración de la base de datos:

  1. En el indicador de la consola, ejecute el archivo vía_de_instalación_de_ZENworks\bin\novell-zenworks-configure.bat en Windows o /opt/novell/zenworks/bin/novell-zenworks-configure en Linux.

  2. Siga las indicaciones que aparezcan en pantalla.

    Cuando se le pida que introduzca la ubicación del archivo necesario para reanudar la migración, indique la vía completa del archivo DBMigration.xml. El archivo está situado en el directorio vía_de_instalación_de_ZENworks\bin en Windows y en el directorio /opt/novell/zenworks/bin en Linux.

    El archivo XML contiene una lista de tablas y un indicador que muestra si la tabla se ha migrado correctamente o no. Cuando la migración de la base de datos se reanude, sólo se migrarán las tablas cuyo indicador tenga el valor False.

    IMPORTANTE:no modifique el contenido del archivo DBMigration.xml.

Solución de problemas relacionados con un espacio de tablas de Oracle

Si el espacio de tablas USERS de Oracle no cuenta con espacio suficiente para crear y almacenar el esquema de base de datos de ZENworks, la migración de la base de datos falla y muestra los siguientes mensajes de error al intentar crear las tablas:

SEVERE: Terminating the database migration...
SEVERE: An error has occurred while migrating the database.

Para resolver este problema, el administrador de la base de datos de Oracle debe aumentar el tamaño del espacio de tablas USERS. Asegúrese de que el espacio de tablas tiene un mínimo de 100 MB para crear el esquema de base de datos de ZENworks sin incluir ningún dato y el espacio adicional apropiado, que dependerá del tamaño de la base de datos que se disponga a migrar.

Solución de problemas relacionados con el fallo de migración de la base de datos

Si el valor del parámetro NLS_CHARACTERSET no es AL32UTF8 y el valor de parámetro NLS_NCHAR_CHARACTERSET no es AL16UTF16, la migración de la base de datos falla y se muestran los siguientes mensajes de error:

Failed to run the sql script: localization-updater.sql,
message:Failed to execute the SQL command: insert into
zLocalizedMessage(messageid,lang,messagestr)
values('POLICYHANDLERS.EPE.INVALID_VALUE_FORMAT','fr','La stratégie {0} n''a
pas pu être appliquée du fait que la valeur de la variable "{1}" n''est pas
dans un format valide.'),
message:ORA-00600: internal error code, arguments: [ktfbbsearch-7], [8], [],
[], [], [], [], []

Para resolver este problema, defina el parámetro NLS_CHARACTERSET con el valor AL32UTF8 y el parámetro NLS_NCHAR_CHARACTERSET con el valor AL16UTF16. Para asegurarse de que los parámetros de conjunto de caracteres se configuran con los valores recomendados, ejecute la consulta siguiente en el indicador de la base de datos:

select parameter, value from nls_database_parameters where parameter like '%CHARACTERSET%';

Solución de problemas de migración de la base de datos al usar un esquema de usuarios existente

Si decide migrar la base de datos utilizando un esquema de usuarios existente, la utilidad de migración de bases de datos crea la base de datos de ZENworks, pero puede fallar a la hora de migrar los datos.

Para solucionar este problema:

  1. Asegúrese de que las tablas, las vistas y la secuencia de usuarios de ZENworks se suprime de la base de datos de ZENworks recién creada por el administrador de la base de datos. Posteriormente, borre la tabla de base de datos user_recyclebin.

  2. Inicie de nuevo la migración de la base de datos con el mismo esquema de usuarios. Para obtener más información, consulte Migración de datos de la base de datos de Sybase SQL Anywhere a una base de datos de Oracle.

34.6.5 Reversión a la base de datos de Sybase

Si desea volver a utilizar la base de datos de Sybase:

  1. En el dispositivo en el que se ejecuta la utilidad de migración, cambie el nombre de los siguientes archivos:

    • zdm.xml.bak a zdm.xml
    • dmaccounts.properties.bak a dmaccounts.properties
    • dmmappings.properties.bak a dmmappings.properties

    Los archivos se encuentran en el directorio vía_de_instalación_de_ZENworks\conf\datamodel en Windows y en el directorio /etc/opt/novell/zenworks/datamodel en Linux.

  2. Reinicie todos los servicios de ZENworks:

    • En Windows: realice las acciones siguientes:

      1. En el menú Inicio del escritorio de Windows, haga clic en Configuración > Panel de control.

      2. Haga doble clic en Herramientas administrativas > Servicios.

      3. Inicie los servicios siguientes: Servidor de Novell ZENworks, > Monitor de servicios de Novell ZENworks y Servicio del agente de Novell ZENworks.

    • En Linux: en el indicador de la consola, escriba los siguientes comandos:

      • /etc/init.d/./novell-zenmntr restart

      • /etc/init.d/./novell-zenserver restart

      • /etc/init.d/./novell-zenloader restart