|
Oracle: Conectar APEX con una base de datos Oracle Database 9i externa
Cómo conectar APEX (Oracle Application Express) con una base de datos externa de Oracle Database 9i. Os mostramos en este artículo, paso a paso, con explicaciones y capturas de pantalla como realizar un DBLINK (Database Link) en Oracle Application Express (APEX). También explicamos cómo crear un usuario en Oracle 9i con los permisos necesarios para el enlace DBLINK con APEX.
Crear usuario en la BD de Oracle Database externaEn primer lugar necesitaremos crear (o utilizar un usuario existente) de la base de datos de Oracle Database a la que queramos conectarnos desde APEX. Para ello abriremos Oracle Enterprise Manager o bien cualquier software que permita ejecutar sentencias SQL en Oracle (por ejemplo AjpdSoft Administración Bases de Datos). En nuestro caso, conectaremos APEX a Oracle Database 9i, si tuviésemos otra versión de Oracle Database superior accederíamos a su administrador correspondiente vía web. Desde "Seguridad" - "Usuarios" pulsaremos con el botón derecho y seleccionaremos "Crear...": Introduciremos los datos necesarios: nombre, contraseña, tablespace por defecto, etc.: En la pestaña "Sistema" agregaremos el privilegio "CREATE DATABASE LINK": En "Objeto" añadiremos todas las tablas o vistas a los que el usuario tendrá acceso. También indicaremos los privilegios por cada tabla o vista (ALTER, DELETE, INDEX, INSERT, REFERENCES, SELECT, UPDATE). Los permisos indicados en esta pestaña será los que "heredará" el usuario en APEX, es importante delimitar correctamente los permisos en este punto, sobre todo si permitimos acceso a APEX a usuarios externos a nuestra organización: La consulta SQL que Oracle Database 9i genera para crear el usuario será: CREATE USER "ALONSOAPEX" PROFILE "DEFAULT" IDENTIFIED BY "xxx" DEFAULT TABLESPACE "USERS" ACCOUNT UNLOCK; GRANT CREATE DATABASE LINK TO "ALONSOAPEX" GRANT CREATE PUBLIC DATABASE LINK TO "ALONSOAPEX" GRANT SELECT ON "OTROESQUEMA"."CUADRE_DEFINITIVO" TO "ALONSOAPEX" GRANT "CONNECT" TO "ALONSOAPEX"; Adaptando los datos oportunos de esta consulta SQL y ejecutándola en cualquier aplicación que lo permita nos creará el usuario para el enlace con APEX. Administración APEX para crear espacio de trabajoDesde APEX (Oracle Application Express) procederemos a crear el espacio de trabajo (si aún no lo hemos hecho). Accederemos a la administración de APEX desde el navegador de Internet, abriendo la URL: https:// .168.1.200:8080/pls/apex/f?p=4050:3:4107151163215112 (donde "192.168.1.200" será la IP del servidor de APEX y "8080" será el puerto utilizado por APEX) Introduciremos usuario y contraseña con permisos de administración en APEX: Accederemos a "Gestionar Espacios de Trabajo", luego a "Crear Espacio de Trabajo": Introduciremos el nombre del espacio de trabajo (en nuestro caso ALONSOPRUEBAS) y la descripción, pulsaremos "Siguiente": Si queremos utilizar un esquema existente en el desplegable marcaremos "Sí", en nuestro caso crearemos un nuevo esquema, en "Nombre de Esquema" introduciremos el nombre para el nuevo esquema de APEX asociado al espacio de trabajo, indicaremos la contraseña para el esquema y la cuota de espacio (en MB): Indicaremos el nombre del usuario administrador de este espacio de trabajo, será el usuario que pueda realizar tareas de administración sobre el espacio (crear aplicaciones, crear tablas, vistas, etc.). Indicaremos también la contraseña para este usuario, el nombre, los apellidos y el correo electrónico: El asistente para crear nuevo espacio de trabajo de APEX nos mostrará un resumen de las opciones seleccionadas, si es correcto pulsaremos "Crear" para proceder a la creación definitiva del espacio de trabajo: Si todo es correcto nos mostrará una ventana indicando que el proceso ha concluido de forma satisfactoria: Configurar usuario en base de datos Oracle Database de APEXTras crear el usuario en la base de datos de Oracle externa a APEX y crear el espacio de trabajo en APEX, procederemos a configurar el usuario que automáticamente ha creado el asistente al crear el espacio de trabajo, en la base de datos Oracle donde está instalado APEX. Al usuario creado tendremos que añadirle el privilegio de CREATE DATABASE LINK. Para ello accederemos a la administración de Oracle (el de APEX), con un usuario con privilegios de DBA, abriendo la consola de administración Oracle Enterprise Manager: En la página principal de Oracle Enterprise Manager pulsaremos en "Administración", luego, dentro de "Usuarios y privilegios" en "Usuarios": Seleccionaremos el usuario correspondiente a APEX (en nuestro caso "ALONSOPRUEBAS") y pulsaremos "Editar": A continuación pulsaremos en "Privilegios del Sistema", luego en "Editar Lista": En la parte derecha, en "Privilegios Disponibles del Sistema" seleccionaremos "CREATE DATABASE LINK", a continuación pulsaremos el botón "Mover" y luego "Aceptar":
Crear enlace a base de datos externa DBLINK en APEXPor último, crearemos el enlace a la base de datos externa (DBLINK) en la BD de APEX. Para ello accederemos a la administración del espacio de trabajo creado anteriormente (introduciendo usuario y contraseña con permisos de administración sobre el espacio de trabajo a modificar): https://192.168.1.100:8080/pls/apex/apex Pulsaremos en "Taller de SQL", luego pulsaremos en "Explorador de Objetos" - "Examinar" - "Enlaces de Bases de Datos": Pulsaremos el botón "Crear", en el menú que aparece pulsaremos "Enlace de Base de Datos": Introduciremos los datos para el nuevo enlace de base de datos:
Tras introducir los datos pulsaremos "Siguiente": El asistente de creación de enlace de base de datos de APEX nos mostrará la consulta SQL que se ejecutará para crear el DBLINK en APEX, si todo es correcto pulsaremos "Crear":
identified by PASSWORD
identified by values 'PASSWORD'
Para probar el enlace a base de datos creado podremos acceder a la administración del espacio de trabajo: "Inicio" - "Taller de SQL" - "Explorador de Objetos" - "Examinar" - "Enlaces de Bases de Datos", en la parte izquierda aparecerá el enlace creado, lo seleccionamos con un clic de ratón. En la parte derecha aparecerán las propiedades del enlace, pulsaremos el botón "Probar": El asistente de prueba de enlace a base de datos nos mostrará el SQL que ejecutará para probar el enlace:
Pulsando en "Terminar" se ejecutará el SQL anterior para probar el enlace: Si todo es correcto mostrará un mensaje como este:
Utilización del enlace a base de datos DBLINK en APEXTras crear el DBLINK o enlace a base de datos externa, desde APEX, accederemos a la administración del espacio de trabajo de APEX, luego a "Taller de SQL" - "Explorador de Objetos" - "Crear" - "Vista":Introduciremos los datos para la vista a crear:
Crearemos una vista con la consulta SQL:
Donde:
La consulta SQL que creará la vista:
ANEXOAlgunos errores al crear un enlace a base de datos con APEX
Artículos relacionados
CréditosArtículo realizado íntegramente por Alonsojpd, miembro fundador del proyecto AjpdSoft. Anuncios
Enviado el Martes, 23 junio a las 15:11:12 por ajpdsoft
|
|