Ferramentas do usuário

Ferramentas do site


oracleapexinstall

Oracle APEX Installation

Olá, nesse artigo iremos instalar o APEX - Oracle Application Express.

Links úteis:

Pré-requisitos:

  • A versão do APEX que iremos instalar é a: 24.1
  • A versão do ORDS que iremos instalar é a: 24.3.1.306.1450

Abaixo os passos necessários para instalação da ferramenta:

Como usuário: oracle

Download APEX:

wget https://download.oracle.com/otn_software/apex/apex_24.1.zip

Download ORDS:

wget https://download.oracle.com/otn_software/java/ords/ords-24.3.1.306.1450.zip

Vamos descompactar o APEX:

unzip apex_24.1.zip

Vamos descompactar o ORDS:

mkdir -p /home/oracle/ords
unzip ords-24.3.1.306.1450.zip -d /home/oracle/ords

Vamos copiar o diretório de imagens que está dentro do diretório do APEX para o diretório do ORDS:

cd /home/oracle/apex
cp -rp images /home/oracle/ords

A partir do diretório do APEX (/home/oracle/apex) vamos realizar a conexão ao banco de dados e iniciar a instalação:

cd /home/oracle/apex
sqlplus / as sysdba
show pdbs
    CON_ID CON_NAME			  OPEN MODE  RESTRICTED
---------- ------------------------------ ---------- ----------
	 2 PDB$SEED			  READ ONLY  NO
	 3 PDBP_APEX			  READ WRITE NO
alter session set container = PDBP_APEX;

Vamos criar uma tablespace dedicada:

create tablespace TBS_APEX_DATA datafile '+DATA' size 50M autoextend on;

Vamos iniciar o processo de instalação das packages necessárias:

@apexins.sql TBS_APEX_DATA TBS_APEX_DATA TEMP /i/
  • Esse processo por ser demorado devido a quantidade de objetos a serem criados.

Abaixo o output do final da execução do script @apexins.sql

# Actions in Phase 3:
#
    ok 1 - BEGIN							|   0,00
    ok 2 - Updating DBA_REGISTRY					|   0,00
    ok 3 - Computing Pub Syn Dependents 				|   0,00
    ok 4 - Upgrade Hot Metadata and Switch Schemas			|   0,00
    ok 5 - Removing Jobs						|   0,02
    ok 6 - Creating Public Synonyms					|   0,00
    ok 7 - Granting Public Synonyms					|   0,07
    ok 8 - Granting to FLOWS_FILES					|   0,00
    ok 9 - Creating FLOWS_FILES grants and synonyms			|   0,00
    ok 10 - Syncing ORDS Gateway Allow List				|   0,00
    ok 11 - Creating Jobs						|   0,00
    ok 12 - Creating Dev Jobs						|   0,00
    ok 13 - Installing FLOWS_FILES Objects				|   0,02
    ok 14 - Installing APEX$SESSION Context				|   0,00
    ok 15 - Recompiling APEX_240100					|   0,02
    ok 16 - Installing APEX REST Config 				|   0,00
    ok 17 - Set Loaded/Upgraded in Registry				|   0,00
    ok 18 - Setting Patch Status: APPLIED				|   0,00
    ok 19 - Removing Unused SYS Objects and Public Privs		|   0,00
    ok 20 - Validating Installation					|   0,03
ok 3 - 20 actions passed, 0 actions failed				|   0,15



Thank you for installing Oracle APEX 24.1.0

Oracle APEX is installed in the APEX_240100 schema.

The structure of the link to the Oracle APEX administration services is as follows:
http://host:port/ords/apex_admin

The structure of the link to the Oracle APEX development interface is as follows:
http://host:port/ords


timing for: Phase 3 (Switch)
Elapsed:    0,15


timing for: Complete Installation
Elapsed:    6,00

SYS> 

Vamos criar a conta de administrador da instância do APEX:

@apxchpwd.sql

Abaixo o output da execução do script @apxchpwd.sql

SYS> @apxchpwd.sql
...set_appun.sql
================================================================================
This script can be used to change the password of an Oracle APEX
instance administrator. If the user does not yet exist, a user record will be
created.
================================================================================
Enter the administrator's username [ADMIN] 
User "ADMIN" does not yet exist and will be created.
Enter ADMIN's email [ADMIN] admin@admin.com
Enter ADMIN's password [] 
Created instance administrator ADMIN.
  • É necessário definirmos o nome de usuário, email e senha do usuário administrador da instância do APEX.

Configuring RESTful Services

Durante uma nova instalação, é necessário configurar os serviços de Restful:

@apex_rest_config.sql

Abaixo o output da execução do script @apex_rest_config.sql

SYS> @apex_rest_config.sql

Enter a password for the APEX_LISTENER user              [] 
Enter a password for the APEX_REST_PUBLIC_USER user              [] 
...set_appun.sql
...setting session environment
...create APEX_LISTENER and APEX_REST_PUBLIC_USER users
...grants for APEX_LISTENER and ORDS_METADATA user
SYS> 
  • É necessário definirmos as senhas dos usuários: APEX_LISTENER e APEX_REST_PUBLIC_USER.

Podemos verificar os novos usuários/schemas criados durante esse processo:

select username from dba_users where username like 'APEX%';
USERNAME
------------------------------------------------
APEX_LISTENER
APEX_PUBLIC_ROUTER
APEX_PUBLIC_USER
APEX_REST_PUBLIC_USER
APEX_240100

Vamos desbloquear os usuários abaixo:

alter user APEX_PUBLIC_USER account unlock;
alter user APEX_240100 account unlock;

Vamos habilitar os serviços de rede dentro do banco de dados:

BEGIN
    DBMS_NETWORK_ACL_ADMIN.APPEND_HOST_ACE(
        host => '*',
        ace => xs$ace_type(privilege_list => xs$name_list('connect'),
                           principal_name => 'APEX_240100',
                           principal_type => xs_acl.ptype_db));
END;
/
  • Lembre-se de ajustar o valor do parâmetro <principal_name> conforme a saída da query anterior.
  • A saída anterior traz o nome do schema como: APEX_240100

Vamos verificar qual é a porta atual do serviço HTTP dentro do banco:

select dbms_xdb.gethttpport from dual;

No meu caso o serviço não têm porta definida:

GETHTTPPORT
-----------
       0

Vamos então definir a porta como 8080.

exec dbms_xdb.sethttpport('8080');
select dbms_xdb.gethttpport from dual;

Vamos verificar novamente após realizarmos a alteração:

GETHTTPPORT
-----------
       8080

Podemos seguir agora com a configuração do ORDS.

Como usuário: root

su - 
mv /home/oracle/ords /u01
mkdir -p /etc/ords/config
mkdir -p /etc/ords/logs
chown -R oracle:oinstall /etc/ords

Como usuário: oracle

export JAVA_HOME=<SEU_DIRETORIO_JAVA>
export PATH=$PATH:$JAVA_HOME/bin
/u01/ords/bin/ords --config /etc/ords/config install \
     --log-folder /etc/ords/logs \
     --admin-user SYS \
     --db-hostname oracledbapex \
     --db-port 1521 \
     --db-servicename PDBP_APEX \
     --feature-db-api true \
     --feature-rest-enabled-sql true \
     --feature-sdw true \
     --gateway-mode proxied \
     --gateway-user APEX_PUBLIC_USER \
     --proxy-user

Abaixo os parâmetros da linha de comando usados durante essa instalação:

  • –log-folder
  • –admin-user
  • –db-hostname
  • –db-port
  • –db-servicename
  • –feature-db-api true
  • –feature-rest-enabled-sql true
  • –feature-sdw true
  • –gateway-mode proxied
  • –gateway-user
  • –proxy-user

Vamos configurar o diretório estático das imagens no ORDS: standalone.static.path

/u01/ords/bin/ords --config /etc/ords/config config set standalone.static.path /u01/ords/images

Como usuário: root

Vamos adicionar o serviço do ORDS ao systemd.

vi /etc/systemd/system/ords.service

Cole o seguinte conteúdo no arquivo /etc/systemd/system/ords.service:

[Unit]
Description=Oracle REST Data Services
After=network.target

[Service]
User=oracle
Group=oinstall
WorkingDirectory=/u01/ords
ExecStart=/u01/ords/bin/ords --config /etc/ords/config serve
Restart=always
RestartSec=5s

[Install]
WantedBy=multi-user.target

Vamos reiniciar o serviço/daemon do systemd:

systemctl daemon-reload

Vamos habilitar a inicialização automática sempre que o sistema for reiniciado:

systemctl enable ords.service

Para que o usuário oracle possa iniciar, reinicilizar e para o serviço, precisamos adicionar uma nova entrada no sudoers:

visudo

ou

vi /etc/sudoers

Cole o seguinte conteúdo:

oracle ALL=(ALL) NOPASSWD: /bin/systemctl start ords.service, /bin/systemctl stop ords.service, /bin/systemctl restart ords.service, /bin/systemctl status ords.service
  • Lembrando de levar em consideração toda e qualquer entrada já existente para o usuário oracle

Como usuário: oracle

Vamos iniciar o serviço do ORDS:

sudo systemctl start ords.service
sudo systemctl status ords.service

Agora podemos realizar o acesso a interface Web do ORDS e APEX:

A página “HOME” do ORDS, fornece acesso a 3 ferramentas:

  1. SQL Developer versão Web.
  2. Oracle APEX.
  3. Gerenciador de autenticação do ORDS.

Ao clicar no botão “GO” da aplicação central “Oracle APEX” seremos redirecionados a tela de login da ferramenta.

Lembrando que a página Home do APEX, também pode ser acessada diretamente através da seguinte URL:

Já o acesso ao WORKSPACE:

  • WORKSPACE: INTERNAL
  • Username: ADMIN
  • Password: Senha configurada durante a execução do script @apxchpwd.sql.

Ao logarmos pela primeira vez, nos é apresentada a tela de criação de WORKSPACE:

  • Não é obrigatória a criação de um novo workspace ao fazer o primeiro login, sendo possível criá-los posteriormente.

- Até a próxima.

Oracle APEX Installation

— Autor: Leonardo Lopes 19/11/2024 18H:38

oracleapexinstall.txt · Última modificação: 19/11/2024 18H:38 por admin