Destacados
Recientes

martes, 1 de noviembre de 2016

Instalar APEX oracle sobre Linux : Existen muchas distribuciones del Sistema Linux, cuando se quiere montar un servidor de Aplicaciones, como es el caso, sobre un Sistema Linux hay que tener en cuenta que cada distribución tiene sus peculiaridades y no todas sirven para todo. Lo recomendable en el caso de Oracle es usar las distribuciones de Linux que Oracle certifica, por ejemplo Red Hat Enterprise. Esto no garantiza que no  surjan problemas, pero al menos al usar una distribución certificada por Oracle se tendrán algunas garantías, además de que Oracle documenta los problemas que pueden surgir.

La distribución Red Hat Enterprise mencionada es una distribución empresarial y por tanto de pago, para la instalación de Apex sobre un Sistema Linux, proceso que se verá a lo largo de este capítulo, se ha seleccionado la distribución Centos 6.4 de 64 Bits, versión más reciente de la distribución en estos momentos. Centos es una distribución de Linux Open Source y además es un clon de Red Hat, esto hace de Centos una distribución muy apropiada para la instalación de Apex.

Para la instalación de Apex sobre un Sistema Linux CentOS se necesita:

  •  Base de Datos Oracle, la versión usada de la Base de datos es la 11.2 G Express Edition R2
  •  Java development kit (jdk)
  •  Oracle Application Express, la versión usada es la 4.2.2
  •  Listener Oracle Applicaction Express versión 2.0.2
  •  Servidor de Aplicaciones GlassFish, versión usada 3.1.2.2 


PASOS PREVIOS
Hay que realizar los siguientes pasos previos sobre el Sistema antes de proceder con la instalación de Apex.


Configuración de la Red

Para configurar la red se accede a Sistemas > Preferencias > Red



O bien botón derecho > editar conexiones de red sobre el icono de red de la parte superior derecha.




Figura Configuración de la red en Centos



En ambos casos al finalizar la configuración se pide la contraseña del usuario root. Otra opción es hacerlo mediante la terminal del sistema, para ello se ejecuta:



 # /etc/sysconfig/network-scripts/ifcfg-Auto_eth0



Y se asigna la siguiente configuración: 
La dirección IP y demás parámetros pueden ser configurados de acuerdo a las necesidades.

Instalación del Idioma
En caso de que el sistema Centos instalado no disponga del idioma español, se siguen las siguientes indicaciones para su instalación y configuración.


El primer paso es actualizar repositorios.
 # yum –y update



Para instalar el idioma en español, el sistema por defecto esta en inglés, se ejecuta:

 # yum –y install system-config-language

Instalado el paquete, se configura el idioma en español. Para ello se accede a Sistema > Administración > Idioma.

También se configura el teclado en español, de esta forma se evitan problemas con el teclado. Sistema > Preferencias > Teclado > Distribuciones

Para finalizar se reinicia el sistema.


Acceso Remoto

Para facilitar el proceso de instalación de Apex se puede configurar una conexión remota al servidor Linux Centos mediante ssh.

Para configurar una conexión ssh, desde la terminal y como usuario root se ejecuta:
 # service sshd start

Para dejar el servicio de forma permanente se ejecuta:
 # chkconfig --add sshd
 chkconfig sshd on

Para realizar la conexión remota por ssh al servidor se puede usar Putty, en caso de acceder desde un Sistema MS Windows o Mac, o bien por cliente ssh desde terminal si se usa un Sistema Linux.
Software Putty


INSTALACIÓN Y CONFIGURACIÓN DE REQUISITOS PREVIOS



INSTALACIÓN Y CONFIGURACIÓN DE JDK
Se instalan los paquetes necesarios, como usuario root se ejecuta.


#yum –y install glibc.i686 elfutils-libelf.i686 elfutils-lib.i686s elfutils-libelf-devel.i686 elfutils-libelf- devel-static.i686 -y --disableexcludes=all

Se asignan permisos para el usuario oracle. Como usuario root se ejecuta:
 #  chown oracle:dba /u01/app/java -R

INSTALACIÓN DE ORACLE 11.2 G EXPRESS EDITION R2

Antes de comenzar con el proceso de instalación de Oracle, comentar que la versión XE es una versión reducida de la Base de Datos Oracle, es gratuita y por tanto tiene limitaciones. Estas limitaciones son:
1 Procesador
1 Memoria RAM
11 G de capacidad de almacenamiento
1 Instancia
No soporta https

Dicho esto a continuación se describe el proceso de instalación.


Creación y configuración del Script de arranque Listener


Para operaciones de edición de archivos se va a usar el editor nano, el lector puede usar el editor que más le guste o que más fácil le resulta manejar.



Para instalar nano sobre Centos se ejecuta:

 # yum install nano








Interfaz Web de Oracle



INSTALACION Y CONFIGURACIÓN DE APEX SOBRE ORACLE 11.2 G EXPRESS EDITION R2

El siguiente paso, una vez instalada la Base de Datos Oracle XE, es la instalación y configuración de Apex.

Como usuario oracle se ejecuta:


Lo que se hace con los comandos ejecutados es eliminar (mover en este caso) la versión de Apex que trae Oracle por defecto y descomprimir el archivo con la versión de Apex descargada (versión 4.2.2) en la misma ruta, para posteriormente proceder con la instalación.

Con el usuario root, se asignan los permisos necesarios.

 #  chown oracle:dba /u01/app/oracle -R

De esta forma se tiene la seguridad que los permisos adecuados están asignados y se evitan futuros problemas.

A continuación con el usuario oracle y desde la terminal del sistema se accede a sql*plus.

Nota: En este punto de la instalación, si no se tiene acceso a sql*plus, reiniciar el sistema.

Para acceder a sql*plus se ejecuta:
 $ sqlplus


Y se introducen los datos de acceso, para el caso configurado:



user-nane: system 

password: system


Nota: La contraseña “system” es la contraseña que se ha configurado en el proceso de instalación de Oracle 11.2g XE R2

La conexión a sql*plus se realizará con el usuario SYSTEM, para ejecutar la instalación de Apex es necesario ser usuario SYS.

Nota: SYS y SYSTEM son usuarios de la BD Oracle, la diferencia entre estos usuario es que SYS es DBA y SYSTEM no lo es. Por lo tanto los script de instalación de Oracle se deben ejecutar con el usuario SYS.

Para conectarse a oracle como usuario sys, desde la terminal de slq*plus se ejecuta:

  SQL> conn sys as sysdba

Otra forma más directa de conectarse a Oracle como usuario SYS sería ejecutando desde la terminal del sistema:

  $ sqlplus "/ as sysdba"

De esta última forma se accederá a Oracle mediante slq*plus como usuario SYS.

Creación de Tablespace.

Una vez conectado a Oracle con el usuario SYS mediante sql*plus, lo siguiente que se debe hacer es crear los Tablespace necesarios para la instalación de Apex.

Nota
Un tablespace es una unidad lógica de almacenamiento dentro de una Base de Datos Oracle. Es un puente entre el sistema de ficheros del sistema operativo y la base de datos.

Cada tablespace se compone de al menos, un datafile y un datafile solo puede pertenecer a un tablespace

Instalación y configuración de Apex 4.2.6

Lo primero es situarse en el directorio donde se encuentran los script para la instalación de Apex, como usuario oracle se ejecuta:


 $ cd /u01/app/oracle/product/11.2.0/xe/apex

Lo siguiente es ejecutar los scripts de instalación. Para ello hay que conectarse con el usuario  oracle a sql*plus, y a su vez conectarse a Oracle como usuario SYS. Tal como se ha explicado en el punto anterior.


$ sqlplus "/ as sysdba"

Una vez realizada la conexión a Oracle como SYS, se procede con la instalación mediante la ejecución de los scripts.


Script de instalación de Apex.

SQL>  @apexins APEX APEX_FILES APEX_TEMP /i/





Para finalizar, se cierra la sesión de sql*plus.

Instalación del idioma español en Apex.

Por defecto el idioma de Apex es Inglés, algo habitual, en este apartado se va a explicar el proceso para la instalación del idioma español en Apex.

En primer paso es ubicarse en el directorio /u01/app/oracle/product/11.2.0/xe/apex. Como usuario oracle se ejecuta:

$ cd /u01/app/oracle/product/11.2.0/xe/apex

Y a continuación se ejecuta:


$ cd builder/es
$ set NLS_LANG=American_America.AL32UTF8

Para finalizar hay que conectarse a sql*plus y ejecutar:
SQL>  ALTER SESSION SET CURRENT_SCHEMA = APEX_040200;
SQL> @load_es.sql

Por último se comprueba que la instalación es correcta accediendo a Apex mediante un navegador web. Esto se a través de la dirección http://localhost:8585/apex

Interfaz Web de Apex

Nota
Se puede bloquear el acceso en red por el puerto 8585 y permitir el acceso sólo por el puerto 8080, es algo muy recomendable una vez esté instalado y configurado el Servidor de Aplicaciones.
Para ello se ejecuta desde sql*plus: SQL> EXEC dbms_xdb.sethttpport(0);





Para instalar Oracle Apex sobre Windows 7, se deben tener en cuenta que éste corre sobre el motor de base de datos de Oracle, en este caso instalaremos la versión de Apex 4.4.2 por lo tanto necesitaremos descargar la base de datos 11g Express de oracle, los pasos se explican a continuación:

1. Descargar Base de Datos 11g Express

2. Descargar el Oracle APEX 4.4.2
3. Instalar BD Oracle 11g Express Edition
4. CrearTablespace para APEX
codigo a utilizar en este video
*** Crear Tablespace ***

CREATE TABLESPACE APEX
DATAFILE 'C:\oraclexe\app\oracle\oradata\XE\apex_01.dbf'
SIZE 200M REUSE AUTOEXTEND ON NEXT 10M MAXSIZE 1000M LOGGING
EXTENT MANAGEMENT LOCAL
SEGMENT SPACE MANAGEMENT AUTO;

5. Instalar Apex 4.2 sobre Windows

Pasos: 
1)Entrar al SQL Plus
sqlplus / as sysdba
2) Ejecutar script de instalación de APEX
@apexins APEX APEX TEMP /i/
3) Cambiar password user ADMIN de APEX
@apxchpwd.sql
4) Ver la versión de Apex que está actualmente instalada
SELECT comp_name, version, status FROM dba_registry WHERE comp_id='APEX';


6. Configuraciones del EPG
Pasos:
1) Ingresar al SQL Plus

sqlplus / as sysdba

2) Ejecutar script de configuracion PL/SQL Gateway

@apex_epg_config.sql C:\

3) Ejecutar script de actualización directorio virtual de APEX

@apxldimg.sql C:\

4) Desbloquear las siguientes cuentas:

ALTER USER anonymous ACCOUNT UNLOCK;
ALTER USER xdb ACCOUNT UNLOCK;
ALTER USER apex_public_user ACCOUNT UNLOCK;
ALTER USER flows_files ACCOUNT UNLOCK;

5) Configurar Parámetros de la Base de Datos para APEX

SHOW PARAMETER job_queue_processes
ALTER system SET job_queue_processes=20 scope=both;
SHOW PARAMETER shared_servers
ALTER system SET shared_servers=20 scope=both;

6) Habiliar XML DB HTTP server

SELECT DBMS_XDB.GETHTTPPORT FROM dual;
EXEC dbms_xdb.sethttpport(8080);
Enable remote HTTP connections (optional):
EXEC dbms_xdb.setListenerLocalAccess(l_access =[aqui va un signo mayor] FALSE);

7) Habilitar network services (ACL)

Conceder acceso a cualquier host para Apex_040200

Ejecutar script del punto "3.4.5.1 Granting Connect Privileges"
http://docs.oracle.com/cd/E37097_01/d...

7. Traducir APEX al Español

Pasos:

1) Oracle Application Express en otros lenguajes

set NLS_LANG=American_America.AL32UTF8

2) Ir al directorio: apex/builder/es

ALTER SESSION SET CURRENT_SCHEMA = APEX_040200;

@load_es.sql

martes, 27 de septiembre de 2016


Apex permite convertir una sola Base de Datos Oracle en un servicio de Base de Datos para grupos de trabajo compartido. Varios usuarios pueden acceder a él mediante un navegador web sin necesidad de instalar software adicional.

   Workspace, Espacio de Trabajo en Apex

La zona donde se desarrollan las aplicaciones se denomina espacio de trabajo, Worskspace. Un espacio de trabajo es una base de datos privada virtual que permite a varios usuarios trabajar dentro de la misma instalación de Oracle Application Express, manteniendo sus objetos, datos y aplicaciones privadas.

En un entorno de desarrollo, es posible crear un único espacio de trabajo compartido para todos los desarrolladores. Sin embargo, también se pueden crear espacios de trabajo dedicados a los desarrolladores o proyectos específicos.

La creación de un espacio de trabajo dedicado limita el acceso a los objetos del espacio de trabajo a sólo aquellos usuarios asociados con el área de trabajo.
La siguiente figura muestra las relaciones entre los usuarios y desarrolladores, áreas de trabajo y los esquemas de bases de datos.

Cuando se crea un espacio de trabajo, se asocia con un esquema nuevo o existente. Un esquema es  un contenedor lógico para los objetos de base de datos, como tablas, vistas y procedimientos almacenados. Un único esquema se puede asociar con uno o más espacios de trabajo.

Roles de Usuario en Apex

Al configurar los usuarios en Apex, se asignan roles y privilegios específicos. Los roles en Apex son los siguientes:

Usuarios finales: Son usuarios de la aplicación sin ningún acceso a las capacidades de desarrollo o administrativas.

Desarrolladores: Son usuarios que crean y editan aplicaciones y modifican objetos de Base de Datos. Los desarrolladores pueden tener sus propios espacios de trabajo o compartir un espacio de   trabajo.

•Administradores de área de trabajo. Son los desarrolladores que realizan tareas de administrador específicas de un espacio de trabajo, tales como la gestión de cuentas de usuario, espacio de trabajo de seguimiento de la actividad, y la visualización de archivos de registro.

•Administradores de Instancia. Son superusuarios que manejan la instancia completa donde se alojan los servicios de Administración de Apex.

La siguiente figura muestra varios usuarios con diferentes roles de acceso a aplicaciones del entorno Apex.



Resultado de imagen para listener web
Para la configuración del Listener web se disponen de varias opciones, son:

MOD_PLSQL de Apache

Una manera de acceder al motor de Apex es configurar el Oracle HTTP Server (Apache) que contiene el plugin mod_plsql. El plugin funciona como broker de comunicaciones entre el servidor web y los objetos de Apex de la base de datos de Oracle. Este explorador de asignaciones realiza solicitudes en las llamadas de procedimientos almacenados de la base de datos. Las imágenes se almacenan en el sistema de archivos y son atendidas por Apache. El uso de Apache permite que el listener web esté colocado en la misma máquina física que la base de datos o en una máquina física independiente.

Gateway PL/SQL

El gateway PL/SQL incluido, Embedded PL/SQL Gateway (EPG), se ejecuta en el servidor HTTP  de XML DB en la base de datos de Oracle e incluye las funciones principales de mod_plsql, pero no requiere el Oracle HTTP Server basado en Apache. El EPG almacena y presta servicio a todos los archivos, incluidas las imágenes, CSS y Javascript de la base de datos. El EPG se usa para las configuraciones más simples. El EPG no está recomendado para casos de uso de producción a gran escala o aplicaciones orientadas a Internet.


Listener de Oracle Application Express

Oracle Application Express Listener es una alternativa a Oracle HTTP Server y mod_plsql basada en JEE. La aplicación JEE ofrece una mayor funcionalidad, incluyendo una configuración basada en línea de comandos, una mayor seguridad, el almacenamiento en caché de archivos y RESTful web de servicios. Oracle Application Express Listener también proporciona una mayor flexibilidad en implementaciones de apoyo que utilizan Oracle WebLogic Server, Oracle GlassFish Server y modo autónomo.

La arquitectura de Oracle Application Express requiere de algún tipo de servidor web para  solicitudes de proxy entre el navegador web y el motor de Oracle Application Express.

Oracle Application Express Listener satisface esta necesidad, pero su uso va más allá de las Configuraciones de Apex. Oracle Application Express Listener simplifica el proceso de implementación porque no requiere de un controlador JDBC incorporado para realizar las conexiones.

Oracle Application Express Listener admite los siguientes Servidores de Aplicaciones Java  Enterprise Edition:



Los requerimientos para el Listener de Oracle Application Express son:

Oracle Database (Enterprise Edition, Standard Edition o Standard Edition One) versión 10.2.0.3 o posterior, o Oracle Database 10g Release 2 Express Edition o posterior.

Oracle Application Express:
Oracle Application Express Listener depende de Oracle Application Express para almacenar y crear servicios RESTful.

Si se desea utilizar los servicios REST, Oracle Application Express 4.2 es requerida.

Si no se desea utilizar los servicios REST, entonces el uso de cualquier aplicación Oracle Express versión es compatible.

Java JDK 6 Update 20 o posterior.

Especificación Java Servlet 2.3 o posterior.

Requisitos del navegador Web:
      - Microsoft Internet Explorer 8.0 o posterior.
      - Mozilla Firefox 3.0 o posterior.
      - Google Chrome 2.0 o posterior.