Existen dentro de Oracle Application Express muchos utilitarios que por lo general no sabemos utilizar y en la mayoría de los casos, si siquiera sabemos que existen. Uno de estos casos, el utilitario APEXExport, el cual nos permite exportar uno aplicación, todas las aplicaciones dentro de un espacio de trabajo e incluso todas las aplicaciones de la instancia APEX desde una lÃnea de comando.
Lo normal al hacer un export sería que ingresemos al IDE de APEX, al espacio de trabajo del que queremos realizar un export y vayamos exportando una por una todas las aplicaciones del mismo, pero con esta utilidad podemos dejar de lado esa incomodidad y realizar con un solo comando el respaldo (exportar) de todas las aplicaciones. Esto nos permite entre otras cosas, automatizar el procedimiento de respaldo de aplicaciones de una manera sencilla.
El utilitario APEXExport, viene como parte del paquete de instalación de APEX y lo pueden localizar en el directorio utilities/oracle/apex, que se encuentra dentro del directorio raíz de instalación de APEX. De esta manera, si su instalación es en un ambiente Windows y descomprimió el archivo de instalación de APEX en C:\Temp; encontrará este archivo en C:Temp\Apex\Utilities\Oracle\Apex.
Si su instalación es en un ambiente Unix/Linux y descomprimió APEX en /u01/oracle; podrá encontrar este archivo en: /u01/oracle/apex/utilities/oracle/apex.
Antes de poder utilizar este utilitario es necesario que verifique y realice algunas tareas para que este pueda funcionar.
La primera de ellas es definir el valor de la variable CLASSPATH con los valores necesarios.
En Unix/Linux:
export CLASSPATH=.:{$ORACLE_HOME}/jdbc/lib/classes12.zip:{$ORACLE_HOME}/jdbc/lib/ojdbc6.jar
Aquí dependiendo de la versión de base de datos que tenga instalada debe cambiar classes12.zip por classes12.jar; al igual que el manejador de odbc que se adapta a su base de datos, como guía:
Versión de Base de Datos Controlador
10g ojdbc14.jar 11g ojdbc6.jar 12c ojdbc7.jar
En segundo lugar, deben tener instalada una versión de java JDK mayor o igual a 1.5.
Para ejecutar el utilitario APEXExport:
- Abres una terminal.
- Te cambias al directorio «utilities» del que hemos estado hablando
cd /u01/oracle/apex/utilities/
- Ejecutas el comando de export:
java oracle.apex.APEXExport -db servidor:puerto:conector -user usuario -password contraseña -applicationid 999
Esta es la forma básica para exportar una única aplicación, sin embargo, pueden cambiar -applicationid 999, por una de las siguientes alternativas:
-workspaceid 99999 | para exportar todas las aplicaciones del espacio de trabajo referenciado |
-instance | para exportar todas las aplicaciones de la instancia APEX. |
En el caso de «workspaceid» deben conocer el identificador único del espacio de trabajo del que desean exportar las aplicaciones, para esto pueden ejecutar el siguiente query desde el taller SQL de APEX:
select v('WORKSPACE_ID') from dual;
Como resultado de la ejecución del comando anterior, en el directorio verán, una vez que su ejecución se complete uno o varios archivos con nombre f999.sql tal y como los obtenidos al hacer un export de manera manual desde el ambiente APEX.
Adicionalmente, pueden agregar las siguientes opciones al comando de respaldo:
-expFiles | Para exportar todos los archivos del espacio de trabajo identificado por -workspaceid |
-expWorkspace | Para exportar el espacio de trabajo identificado por -workspaceid, o bien, todos los espacios de trabajo si no se especifica ninguno |
-skipExportDate | Para omitir la fecha de realización del respaldo de los archivos exportados |
-expPubReports | Para exportar todos los reportes interactivos públicos que fueron salvados por los diferentes usuarios |
-expSavedReports | Para exportar todos los reportes interactivos salvados por los usuarios |
-expIRNotif | Para exportar todas las notificaciones de reportes interactivos |
-expTranslations | Para exportar todos los mapeos y todos los textos del repositorio de traducciones |
-expFeedback | Para exportar la retoralimentación de desarrollo en equipos de todos los espacios de trabajo o del identificado por -workspaceid, tanto de desarrollo como de implementación |
-expTeamdevdata | Para exportar datos del equipo de desarrollo para todos los espacios de trabajo el espacio de trabajo identificado por -workspaceid |
-deploymentSystem | Sistema de desplegado para retroalimentación exportada |
-expFeedbackSince | Para exportar la retroalimentación del equipo de desarrollo desde la fecha; en formato YYYYMMDD |
Y aquí algunos ejemplos:
java oracle.apex.APEXExport -db localhost:1521:orcl -user scott -password secreto -applicationid 166
con esto realizamos un «export» de la aplicación 166 del usuario scott en el servidor localhost y la instancia de base de datos orcl.
java oracle.apex.APEXExport -db localhost:1521:orcl -user scott -password secreto -workspaceid 9999
este otro ejemplo exportará todas las aplicaciones del espacio de trabajo con identificador 9999 del usuario scott en el servidor localhost y la instancia de base de datos orcl.
java oracle.apex.APEXExport -db localhost:1521:orcl -user system -password secreto -instance
finalmente esta última opción exportará todas las aplicaciones de la instancia orcl en el servidor localhost
Comentarios recientes