Dúvida
Como instalar e configurar o banco de dados Oracle do PEP 2.0?
Objetivo
Como instalar e configurar o banco de dados Oracle do PEP 2.0.
Versão
Versões homologadas: 11g Standard ou Enterprise e posteriores.
Solução
1. Configurações Gerais e Parametrizações
Após instalação do software Oracle, será necessária a criação e configuração da instância
de banco de dados que será utilizada pelo PEP. A instância poderá ser criada através de interface
gráfica (DBCA) ou via linha de comando, aplicando todos os scripts necessários (arquivos
dbca.bat ou sqlplus.exe no diretório $ORACLE_HOME/BIN).
Na criação do banco de dados, serão configurados os parâmetros de inicialização da
instância. Seguem abaixo algumas configurações e parâmetros de inicialização com valores
sugeridos para o banco de dados PEP. Esses valores podem sofrer alterações conforme o
ambiente instalado o banco de dados, e a demanda de conexões da aplicação.
Configurações Gerais (Obrigatório):
Character Set | WE8MSWIN1252 |
nls_language | 'BRAZILIAN PORTUGUESE' |
nls_territory | 'BRAZIL' |
Parâmetros de Inicialização (Variável conforme demanda de conexões e ambiente):
Parâmetro | Valor Mínimo Sugerido |
open_cursors 1 | 1000 |
processes 1 | 550 |
sessions 1 | 500 |
job_queue_processes 1 | 100 |
sga_target 1 | 10G |
pga_aggregate_target 1 | 4G |
memory_target 1 2 | 14G |
1 Dimensionar conforme ambiente e demanda.
2 Em caso de ativação do Gerenciamento Automático de Memória, é necessário utilizar o
parâmetro “memory_target”, colocando a quantidade de memória total disponível para a
instância (parâmetros “sga_target” + “pga_aggregate_target”)
2. Configuração de Tablespaces
O banco de dados do PEP possui duas tablespaces, onde são separados os segmentos de
tabelas e índices. Por padrão, cada tablespace é criada com um datafile correspondente, com o
valor de 1GB, com extensão automática ativada, que é o suficiente para a carga inicial na
instalação. Essa configuração pode ser alterada conforme necessidade e estratégia criada pela
equipe de DBA que irá implantar o sistema. Pode-se, por exemplo, criar mais de um arquivo para
cada tablespace e alocá-los em discos diferentes dentro do servidor de banco de dados.
Para criação das duas tablespaces, será necessário utilizar usuário com privilégio de DBA,
na execução dos comandos utilizando o SQLPLUS ou alguma outra ferramenta de gerenciamento
de banco de dados.
Por padrão, os datafiles das tablespaces ficarão no mesmo diretório dos demais datafiles
criados no momento da instalação do banco de dados. Esse diretório pode ser localizado na
consulta abaixo:
select file_name from dba_data_files;
E para criar as tablespaces, executar os comandos abaixo.
Nomes sugeridos:
- Tablespace para dados: TS_PEP_DATA
- Tablespace para Índices: TS_PEP_INDEX
create tablespace TS_PEP_DATA datafile
'\[SERVER_PATH]\TS_PEP_DATA.dbf' size 1G autoextend on segment
space management auto;
create tablespace TS_PEP_INDEX datafile
'\[SERVER_PATH]\TS_PEP_INDEX.dbf' size 1G autoextend on segment
space management auto;
2. Configuração de Acessos
2.1 Criação de Role e Usuários
Após a criação e configuração do banco de dados e das tablespaces do PEP, será necessário
a criação dos usuários que a aplicação utilizará. Os scripts abaixo deverão ser executados a partir
de um usuário com permissões DBA.
Criar a role abaixo que contém todas as permissões que o usuário Owner da aplicação irá
precisar.
Nomes sugeridos:
- Role: OWNER_ROLE
create role OWNER_ROLE;
grant connect to OWNER_ROLE;
grant resource to OWNER_ROLE;
grant create job to OWNER_ROLE;
grant create materialized view to OWNER_ROLE;
grant create procedure to OWNER_ROLE;
grant create sequence to OWNER_ROLE;
grant create table to OWNER_ROLE;
grant create trigger to OWNER_ROLE;
grant create type to OWNER_ROLE;
grant create view to OWNER_ROLE;
Após, criar os dois usuários que a aplicação utilizará:
- Usuário Owner: Usuário que detém o schema com todos os objetos do banco de dados
(tabelas, views, procedures, etc). - Usuário Consulta: Usuário que só tem permissão de acesso aos objetos do usuário
Owner. A aplicação vai utilizar este usuário para conectar com o banco de dados. Usuário não
deverá ter permissões para criar ou alterar estruturas de objetos, apenas acessar para leitura
ou escrita de dados.
Nomes sugeridos:
- Usuário Owner: PEP
- Usuário Consulta: CONS_PEP
- Senha Usuário Owner: “t0tv$dba”
- Senha Usuário Consulta: “CONS_PEP”
create user PEP
identified by "t0tv$dba"
default tablespace TS_PEP_DATA
temporary tablespace TEMP
quota unlimited on TS_PEP_DATA
quota unlimited on TS_PEP_INDEX;
grant OWNER_ROLE to PEP;
create user CONS_PEP
identified by "CONS_PEP"
default tablespace TS_PEP_DATA
temporary tablespace TEMP
quota unlimited on TS_PEP_DATA
quota unlimited on TS_PEP_INDEX;
grant connect to CONS_PEP;
2.2. Criação de Trigger de Logon
As triggers de logon são necessárias para alterar alguns comportamentos dos usuários da
aplicação no momento de conexão com o banco de dados.
Necessário executar com usuário com permissões DBA os comandos abaixo:
CREATE OR REPLACE TRIGGER PEP.TRG_ALTER_SESSION
AFTER LOGON ON CONS_PEP.SCHEMA
begin
execute immediate 'alter session set current_schema=PEP';
execute immediate 'alter session set nls_comp=linguistic';
execute immediate 'alter session set nls_sort=binary_ai';
execute immediate 'alter session set
nls_date_format=''DD/MM/RR''';
end;
/
CREATE OR REPLACE TRIGGER PEP.TRG_ALTER_SESSION_OWNER
AFTER LOGON ON PEP.SCHEMA
begin
execute immediate 'alter session set nls_comp=linguistic';
execute immediate 'alter session set nls_sort=binary_ai';
execute immediate 'alter session set
nls_date_format=''DD/MM/RR''';
end;
/
2.3. Importação da base
A importação dos objetos do banco de dados é executada através do comando IMPDP
(utilitário Data Pump Import), onde serão importados os objetos de um arquivo com extensão
“.dmp”. Esse arquivo precisa ser colocado em um diretório do Oracle no servidor de banco de
dados para ser acessado pela ferramenta de importação.
Verificar diretórios disponíveis:
select directory_name, directory_path from dba_directories;
Obs: Importante verificar qual a versão do utilitário Data Pump está utilizando. Vai
depender da versão do Oracle Client instalada. É necessário estar na mesma versão do banco de
dados ou em versão inferior.
Configurações do Dump enviado:
(Podem haver alterações nos nomes dos usuários no dump enviado. Favor confirmar com
equipe técnica da TOTVS para fazer a importação)
- BD Versão: Oracle Database Enterprise Edition Release 11.2.0.3.0
- Usuário Owner: PEP
- Usuário Consulta: CONS_PEP
- Tablespace para Dados: TS_PEP_DATA
- Tablespace para Índices: TS_PEP_INDEX
- Versão compatível: 10.2 ou superior
O executável IMPDP deve ser executado na janela de comando do Windows (cmd.exe),
apenas alterando os parâmetros conforme configuração do ambiente (usuário/senha, instância
e diretório onde foi copiado o dump).
Sintaxe do comando IMPDP (executar em linha única, no prompt de comando do sistema
operacional):
IMPDP [USER]/[PWD]@[DBSERVER]/[DATABASE]
SCHEMAS=[OLD_USER1]
TRANSFORM=(oid:n)
EXCLUDE=TRIGGER
REMAP_SCHEMA=[OLD_USER1]:[NEW_USER1],[OLD_USER2]:[NEW_USER2]
DIRECTORY=[DIR_NAME]
DUMPFILE=[DUMP_FILE_NAME.dmp]
LOGFILE=PEP_IMPORT.log
Após conclusão do processo, verificar log de importação criado no diretório indicado no
comando.
0 Comentários