En el siguiente tema se enumeran las opciones de configuración de ORDS 21 y 22:
Temas
Instalación y configuración de ORDS 21 y versiones anteriores
Ahora está listo para instalar y configurar Oracle Rest Data Services (ORDS) para su uso con Oracle APEX. Para APEX versión 5.0 y posteriores, utilice las versiones 19.1 a 21 de ORDS. Para obtener información sobre cómo instalar ORDS 22 y versiones posteriores, consulte Instalación y configuración de ORDS 22 y versiones posteriores.
Instale el agente de escucha en un host independiente como, por ejemplo, una instancia Amazon EC2, un servidor en las instalaciones de su empresa o un equipo de escritorio. Para los ejemplos de esta sección, suponemos que el nombre de su host es myapexhost.example.com
y que su host está ejecutando Linux.
Instalación y configuración de ORDS 21 y versiones anteriores para usarse con Oracle APEX
-
Consulte Oracle REST data services
y examine el archivo Readme. Asegúrese de que tiene instalada la versión de Java necesaria. -
Cree un nuevo directorio para su instalación de ORDS.
mkdir /home/apexuser/ORDS cd /home/apexuser/ORDS
-
Descargue el archivo
ords.
en Oracle REST data servicesversion.number
.zip(Servicios de datos REST de Oracle). -
Descomprima el archivo en el directorio
/home/apexuser/ORDS
. -
Si va a instalar ORDS en una base de datos multiusuario, agregue la siguiente línea al archivo:
/home/apexuser/ORDS/params/ords_params.properties
pdb.disable.lockdown=false
-
Conceda al usuario principal los privilegios necesarios para instalar ORDS.
Una vez instalada la opción Amazon RDS APEX, conceda al usuario principal los privilegios necesarios para instalar el esquema de ORDS. Para ello, conéctese a la base de datos y ejecute los siguientes comandos. Sustituya
por el nombre del usuario principal en mayúsculas.MASTER_USER
importante
Al ingresar el nombre de usuario, utilice mayúsculas, a menos que haya creado el usuario con un identificador que distingue entre mayúsculas y minúsculas. Por ejemplo, si ejecuta
CREATE USER myuser
oCREATE USER MYUSER
, el diccionario de datos almacenaMYUSER
. Sin embargo, si utiliza comillas dobles enCREATE USER "MyUser"
, el diccionario de datos almacenaMyUser
. Para obtener más información, consulte Concesión de privilegios SELECT o EXECUTE para objetos SYS.exec rdsadmin.rdsadmin_util.grant_sys_object('DBA_OBJECTS', '
MASTER_USER
', 'SELECT', true); exec rdsadmin.rdsadmin_util.grant_sys_object('DBA_ROLE_PRIVS', 'MASTER_USER
', 'SELECT', true); exec rdsadmin.rdsadmin_util.grant_sys_object('DBA_TAB_COLUMNS', 'MASTER_USER
', 'SELECT', true); exec rdsadmin.rdsadmin_util.grant_sys_object('USER_CONS_COLUMNS', 'MASTER_USER
', 'SELECT', true); exec rdsadmin.rdsadmin_util.grant_sys_object('USER_CONSTRAINTS', 'MASTER_USER
', 'SELECT', true); exec rdsadmin.rdsadmin_util.grant_sys_object('USER_OBJECTS', 'MASTER_USER
', 'SELECT', true); exec rdsadmin.rdsadmin_util.grant_sys_object('USER_PROCEDURES', 'MASTER_USER
', 'SELECT', true); exec rdsadmin.rdsadmin_util.grant_sys_object('USER_TAB_COLUMNS', 'MASTER_USER
', 'SELECT', true); exec rdsadmin.rdsadmin_util.grant_sys_object('USER_TABLES', 'MASTER_USER
', 'SELECT', true); exec rdsadmin.rdsadmin_util.grant_sys_object('USER_VIEWS', 'MASTER_USER
', 'SELECT', true); exec rdsadmin.rdsadmin_util.grant_sys_object('WPIUTL', 'MASTER_USER
', 'EXECUTE', true); exec rdsadmin.rdsadmin_util.grant_sys_object('DBMS_SESSION', 'MASTER_USER
', 'EXECUTE', true); exec rdsadmin.rdsadmin_util.grant_sys_object('DBMS_UTILITY', 'MASTER_USER
', 'EXECUTE', true);nota
Estos comandos se aplican a las versiones 19.1 y posteriores de ORDS.
-
Instale el esquema de ORDS mediante el archivo ords.war descargado.
java -jar ords.war install advanced
El programa le pedirá la siguiente información. Los valores predeterminados aparecen entre corchetes. Para obtener más información, consulte Introduction to Oracle REST Data Services
en la documentación de Oracle. -
Escriba la ubicación para almacenar los datos de configuración:
Ingrese
/home/apexuser/ORDS
. Esta es la ubicación de los archivos de configuración ORDS. -
Especifique el tipo de conexión de base de datos que se va a utilizar. Escriba un número: [1] Basic [2] TNS [3] URL personalizada [1]:
Elija el tipo de conexión deseado.
-
Escriba el nombre del servidor de la base de datos [localhost]:
punto_de_enlace_de_instancia_de_base_de_datos
Elija el valor predeterminado o introduzca el valor correcto.
-
Escriba el puerto del agente de escucha de la base de datos [1521]:
puerto_de_instancia_de_base_de_datos
Elija el valor predeterminado o introduzca el valor correcto.
-
Escriba 1 para especificar el nombre del servicio de base de datos o elija 2 para especificar el SID de la base de datos [1]:
Elija
2
para especificar el SID de la base de datos. -
SID de la base de datos [xe]
Elija el valor predeterminado o introduzca el valor correcto.
-
Escriba 1 si desea verificar/instalar el esquema de Oracle REST Data Services o escriba 2 para omitir este paso [1]:
Elija
1
. Este paso crea el usuario del proxy de Oracle REST Data Services denominado ORDS_PUBLIC_USER. -
Escriba la contraseña de la base de datos para ORDS_PUBLIC_USER:
Escriba la contraseña y, a continuación, confírmela.
-
Es necesario iniciar sesión con privilegios de administrador para verificar el esquema de Oracle REST Data Services.
Introduzca el nombre del usuario administrador:
master_user
Introduzca la contraseña de la base de datos para
master_user
:master_user_password
Confirme la contraseña:
master_user_password
nota
Especifique una contraseña distinta de la que se muestra aquí como práctica recomendada de seguridad.
-
Introduzca el espacio de tabla predeterminado de ORDS_METADATA [SYSAUX].
Introduzca el espacio de tabla temporal de ORDS_METADATA [TEMP].
Introduzca el espacio de tabla predeterminado de ORDS_PUBLIC_USER [USERS].
Introduzca el espacio de tabla temporal de ORDS_PUBLIC_USER [TEMP].
-
Introduzca 1 si desea utilizar la gateway PL/SQL o 2 para omitir este paso. Si utiliza Oracle Application Express o migra desde mod_plsql, debe introducir 1 [1].
Elija el valor predeterminado.
-
Escriba el nombre de usuario de la base de datos de la gateway PL/SQL [APEX_PUBLIC_USER]
Elija el valor predeterminado.
-
Escriba la contraseña de la base de datos para APEX_PUBLIC_USER:
Escriba la contraseña y, a continuación, confírmela.
-
Escriba 1 para especificar contraseñas para los usuarios de la base de datos de los servicios RESTful de Application Express (APEX_LISTENER, APEX_REST_PUBLIC_USER) o escriba 2 para omitir este paso [1]:
Elija
2
para APEX 4.1.1.V1; elija1
para todas las demás versiones de APEX. -
[No es necesario para APEX 4.1.1.v1] Contraseña de la base de datos para APEX_LISTENER
Escriba la contraseña (si es necesario) y, a continuación, confírmela.
-
[No es necesario para APEX 4.1.1.v1] Contraseña de la base de datos para APEX_REST_PUBLIC_USER
Escriba la contraseña (si es necesario) y, a continuación, confírmela.
-
Escriba un número para seleccionar una característica para habilitar:
Escriba
1
para habilitar todas las características: SQL Developer Web, SQL habilitado para REST y API de base de datos. -
Escriba 1 si desea comenzar en modo autónomo o 2 para salir [1]:
Escriba
1
. -
Escriba la ubicación de recursos estáticos de APEX:
Si descomprimió los archivos de instalación de APEX en
/home/apexuser
, escriba/home/apexuser/apex/images
. De lo contrario, escriba
, dondeunzip_path
/apex/imagesunzip_path
es el directorio donde descomprimió el archivo. -
Escriba 1 si usa HTTP o escriba 2 si usa HTTPS [1]:
Si escribe
1
, especifique el puerto HTTP. Si escribe2
, especifique el puerto HTTPS y el nombre del host de SSL. La opción HTTPS le pide que especifique cómo proporcionará el certificado:-
Escriba
1
para usar el certificado autofirmado. -
Escriba
2
para proporcionar su propio certificado. Si escribe2
, especifique la ruta de acceso del certificado SSL y la ruta de acceso de la clave privada del certificado SSL.
-
-
-
Establezca una contraseña para el usuario
admin
de APEX. Para ello, use SQL*Plus para conectarse a la instancia de base de datos como usuario principal y, a continuación, ejecute los siguientes comandos.EXEC rdsadmin.rdsadmin_util.grant_apex_admin_role; grant APEX_ADMINISTRATOR_ROLE to
master
; @/home/apexuser/apex/apxchpwd.sqlSustituya
por el nombre de usuario maestro. Cuando el script demaster
apxchpwd.sql
se lo solicite, introduzca una nueva contraseña deadmin
. -
Inicie el agente de escucha ORDS. Ejecute el siguiente código.
java -jar ords.war
La primera vez que inicie ORDS, se le pedirá que proporcione la ubicación de los recursos estáticos de APEX. Esta carpeta de imágenes se encuentra en el directorio
/apex/images
en el directorio de instalación de APEX. -
Vuelva a la ventana de administración de APEX en el navegador y elija Administration. A continuación, elija Application Express Internal Administration. Cuando se le soliciten las credenciales, introduzca la siguiente información:
-
User name (Nombre de usuario –
admin
-
Password (Contraseña): la contraseña que se estableció con el script
apxchpwd.sql
Elija Login y a continuación defina una nueva contraseña para el usuario
admin
. -
El agente de escucha ya está listo para utilizarse.
Instalación y configuración de ORDS 22 y versiones posteriores
Ahora está listo para instalar y configurar Oracle Rest Data Services (ORDS) para su uso con Oracle APEX. Para los ejemplos de esta sección, suponemos que el nombre del host independiente es myapexhost.example.com
y que está ejecutando Linux. Las instrucciones de ORDS 22 difieren de las instrucciones de las versiones anteriores.
Instalación y configuración de ORDS 22 y versiones posteriores para usarse con Oracle APEX
-
Visite Oracle REST data services
y examine el archivo Readme de la versión de ORDS que tiene pensado descargar. Asegúrese de que tiene instalada la versión de Java necesaria. -
Cree un nuevo directorio para su instalación de ORDS.
mkdir /home/apexuser/ORDS cd /home/apexuser/ORDS
-
Descargue el archivo
ords.
oversion.number
.zipords-latest.zip
de Oracle REST data services. -
Descomprima el archivo en el directorio
/home/apexuser/ORDS
. -
Conceda al usuario principal los privilegios necesarios para instalar ORDS.
Una vez instalada la opción Amazon RDS APEX, conceda al usuario principal los privilegios necesarios para instalar el esquema de ORDS. Puede hacerlo conectándose a la base de datos y ejecutando los siguientes comandos. Sustituya
por el nombre del usuario principal en mayúsculas.MASTER_USER
importante
Al ingresar el nombre de usuario, utilice mayúsculas, a menos que haya creado el usuario con un identificador que distingue entre mayúsculas y minúsculas. Por ejemplo, si ejecuta
CREATE USER myuser
oCREATE USER MYUSER
, el diccionario de datos almacenaMYUSER
. Sin embargo, si utiliza comillas dobles enCREATE USER "MyUser"
, el diccionario de datos almacenaMyUser
. Para obtener más información, consulte Concesión de privilegios SELECT o EXECUTE para objetos SYS.exec rdsadmin.rdsadmin_util.grant_sys_object('DBA_OBJECTS', '
MASTER_USER
', 'SELECT', true); exec rdsadmin.rdsadmin_util.grant_sys_object('DBA_ROLE_PRIVS', 'MASTER_USER
', 'SELECT', true); exec rdsadmin.rdsadmin_util.grant_sys_object('DBA_TAB_COLUMNS', 'MASTER_USER
', 'SELECT', true); exec rdsadmin.rdsadmin_util.grant_sys_object('USER_CONS_COLUMNS', 'MASTER_USER
', 'SELECT', true); exec rdsadmin.rdsadmin_util.grant_sys_object('USER_CONSTRAINTS', 'MASTER_USER
', 'SELECT', true); exec rdsadmin.rdsadmin_util.grant_sys_object('USER_OBJECTS', 'MASTER_USER
', 'SELECT', true); exec rdsadmin.rdsadmin_util.grant_sys_object('USER_PROCEDURES', 'MASTER_USER
', 'SELECT', true); exec rdsadmin.rdsadmin_util.grant_sys_object('USER_TAB_COLUMNS', 'MASTER_USER
', 'SELECT', true); exec rdsadmin.rdsadmin_util.grant_sys_object('USER_TABLES', 'MASTER_USER
', 'SELECT', true); exec rdsadmin.rdsadmin_util.grant_sys_object('USER_VIEWS', 'MASTER_USER
', 'SELECT', true); exec rdsadmin.rdsadmin_util.grant_sys_object('WPIUTL', 'MASTER_USER
', 'EXECUTE', true); exec rdsadmin.rdsadmin_util.grant_sys_object('DBMS_SESSION', 'MASTER_USER
', 'EXECUTE', true); exec rdsadmin.rdsadmin_util.grant_sys_object('DBMS_UTILITY', 'MASTER_USER
', 'EXECUTE', true); exec rdsadmin.rdsadmin_util.grant_sys_object('DBMS_LOB', 'MASTER_USER
', 'EXECUTE', true); exec rdsadmin.rdsadmin_util.grant_sys_object('DBMS_ASSERT', 'MASTER_USER
', 'EXECUTE', true); exec rdsadmin.rdsadmin_util.grant_sys_object('DBMS_OUTPUT', 'MASTER_USER
', 'EXECUTE', true); exec rdsadmin.rdsadmin_util.grant_sys_object('DBMS_SCHEDULER', 'MASTER_USER
', 'EXECUTE', true); exec rdsadmin.rdsadmin_util.grant_sys_object('HTP', 'MASTER_USER
', 'EXECUTE', true); exec rdsadmin.rdsadmin_util.grant_sys_object('OWA', 'MASTER_USER
', 'EXECUTE', true); exec rdsadmin.rdsadmin_util.grant_sys_object('WPG_DOCLOAD', 'MASTER_USER
', 'EXECUTE', true); exec rdsadmin.rdsadmin_util.grant_sys_object('DBMS_CRYPTO', 'MASTER_USER
', 'EXECUTE', true); exec rdsadmin.rdsadmin_util.grant_sys_object('DBMS_METADATA', 'MASTER_USER
', 'EXECUTE', true); exec rdsadmin.rdsadmin_util.grant_sys_object('DBMS_SQL', 'MASTER_USER
', 'EXECUTE', true); exec rdsadmin.rdsadmin_util.grant_sys_object('UTL_SMTP', 'MASTER_USER
', 'EXECUTE', true); exec rdsadmin.rdsadmin_util.grant_sys_object('DBMS_NETWORK_ACL_ADMIN', 'MASTER_USER
', 'EXECUTE', true); exec rdsadmin.rdsadmin_util.grant_sys_object('SESSION_PRIVS', 'MASTER_USER
', 'SELECT', true); exec rdsadmin.rdsadmin_util.grant_sys_object('DBA_USERS', 'MASTER_USER
', 'SELECT', true); exec rdsadmin.rdsadmin_util.grant_sys_object('DBA_NETWORK_ACL_PRIVILEGES', 'MASTER_USER
', 'SELECT', true); exec rdsadmin.rdsadmin_util.grant_sys_object('DBA_NETWORK_ACLS', 'MASTER_USER
', 'SELECT', true); exec rdsadmin.rdsadmin_util.grant_sys_object('DBA_REGISTRY', 'MASTER_USER
', 'SELECT', true);nota
Los comandos anteriores se aplican a las versiones 22 y posteriores de ORDS.
-
Instale el esquema de ORDS mediante el script
ords
descargado. Especifique los directorios que deben contener los archivos de configuración y los archivos de registro. Oracle Corporation recomienda no colocar estos directorios dentro del directorio que contiene el software del producto ORDS.mkdir -p /home/apexuser/ords_config /home/apexuser/ords_logs /home/apexuser/ORDS/bin/ords \ --config /home/apexuser/ords_config \ install --interactive --log-folder /home/apexuser/ords_logs
Para las instancias de base de datos que ejecutan la arquitectura de base de datos de contenedores (CDB), utilice ORDS 23.2 y versiones posteriores y pase el argumento
--pdb-skip-disable-lockdown
al instalar ORDS./home/apexuser/ORDS/bin/ords \ --config /home/apexuser/ords_config \ install --interactive --log-folder /home/apexuser/ords_logs --pdb-skip-disable-lockdown
El programa le pedirá la siguiente información. Los valores predeterminados aparecen entre corchetes. Para obtener más información, consulte Introduction to Oracle REST Data Services
en la documentación de Oracle. -
Choose the type of installation:
Elija
2
para instalar los esquemas de ORDS en la base de datos y crear un grupo de conexiones de base de datos en los archivos de configuración de ORDS locales. -
Specify the database connection type to use. Enter number for [1] Basic [2] TNS [3] Custom URL:
Elija el tipo de conexión deseado. En este ejemplo se supone que elige
1
. -
Enter the name of the database server [localhost]:
DB_instance_endpoint
Elija el valor predeterminado o introduzca el valor correcto.
-
Enter the database listener port [1521]:
DB_instance_port
Elija el valor predeterminado
1521
o introduzca el valor correcto. -
Enter the database service name [orcl]:
Introduzca el nombre de base de datos que utiliza la instancia de base de datos de RDS para Oracle.
-
Provide database user name with administrator privileges
Introduzca el nombre de usuario maestro para la instancia de base de datos de RDS para Oracle.
-
Enter the database password for [username]:
Introduzca la contraseña de usuario maestro para la instancia de base de datos de RDS para Oracle.
-
Enter the default tablespace for ORDS_METADATA and ORDS_PUBLIC_USER [SYSAUX]:
-
Enter the temporary tablespace for ORDS_METADATA [TEMP]. Enter the default tablespace for ORDS_PUBLIC_USER [USERS]. Enter the temporary tablespace for ORDS_PUBLIC_USER [TEMP].
-
Enter a number to select additional feature(s) to enable [1]:
-
Enter a number to configure and start ORDS in standalone mode [1]:
Elija
2
para omitir inmediatamente el inicio de ORDS en modo independiente. -
Enter a number to select the protocol [1] HTTP
-
Enter the HTTP port [8080]:
-
Enter the APEX static resources location:
Introduzca la ruta a los archivos de instalación de APEX (
/home/apexuser/apex/images
).
-
-
Establezca una contraseña para el usuario
admin
de APEX. Para ello, use SQL*Plus para conectarse a la instancia de base de datos como usuario principal y, a continuación, ejecute los siguientes comandos.EXEC rdsadmin.rdsadmin_util.grant_apex_admin_role; grant APEX_ADMINISTRATOR_ROLE to
master
; @/home/apexuser/apex/apxchpwd.sqlSustituya
por el nombre de usuario maestro. Cuando el script demaster
apxchpwd.sql
se lo solicite, introduzca una nueva contraseña deadmin
. -
Ejecute ORDS en modo independiente mediante el script
ords
con el comandoserve
. Para las implementaciones de producción, plantéese la posibilidad de utilizar servidores de aplicaciones Java EE admitidos, como Apache Tomcat u Oracle WebLogic Server. Para obtener información, consulte Deploying and Monitoring Oracle REST Data Servicesen la documentación de Oracle Database. /home/apexuser/ORDS/bin/ords \ --config /home/apexuser/ords_config serve \ --port 8193 \ --apex-images /home/apexuser/apex/images
Si ORDS se está ejecutando pero no puede acceder a la instalación de APEX, es posible que aparezca el siguiente error, sobre todo en las instancias que no son CDB.
The procedure named apex_admin could not be accessed, it may not be declared, or the user executing this request may not have been granted execute privilege on the procedure, or a function specified by security.requestValidationFunction configuration property has prevented access.
Para corregir este error, cambie la función de validación de solicitudes utilizada por ORDS ejecutando el script
ords
con el comandoconfig
. De forma predeterminada, ORDS usa el procedimientoords_util.authorize_plsql_gateway
, que solo se admite en las instancias de CDB. En el caso de las instancias que no son de CDB, puede cambiar este procedimiento por el paquetewwv_flow_epg_include_modules.authorize
. Consulte la documentación de Oracle Database y Oracle Support para conocer las mejores prácticas a la hora de configurar la función de validación de solicitudes adecuada para su caso de uso. -
Vuelva a la ventana de administración de APEX en el navegador y elija Administration. A continuación, elija Application Express Internal Administration. Cuando se le soliciten las credenciales, introduzca la siguiente información:
-
User name (Nombre de usuario –
admin
-
Password (Contraseña): la contraseña que se estableció con el script
apxchpwd.sql
Elija Login y a continuación defina una nueva contraseña para el usuario
admin
. -
El agente de escucha ya está listo para utilizarse.