Árvore de páginas

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.
Informações
titleAtenção

Página destinada a atualizações anteriores ao fluig 1.5.613 e anteriores.

Versões homologadas do Oracle

Para verificar as versões homologadas do Oracle acesse a Matriz de Portabilidade. 


Configuração do banco

É necessário que o administrador do banco Oracle® (DBA) efetue algumas alterações de segurança no banco de dados Oracle®, fazendo com que o usuário (schema) informado na instalação do TOTVS Fluig Plataforma não possua permissão de leitura/alteração em outros schemas do banco Oracle®, caso existam.
Deve possuir permissão de leitura/alteração somente no usuário (schema) utilizado pelo Fluigpela plataforma. 


Criação do usuário e concessão de privilégios

Para a criação de um novo usuário em banco de dados Oracle usamos a instrução CREATE USER, conforme sintaxe abaixo:

...

Neste momento é necessário executar os procedimentos SQL abaixo com o usuário userid no banco de dados a ser usado para o fluiga plataforma:

Aviso
titleAtenção!
  • É imprescindível conectar no banco de dados com o usuário userid para a execução dos procedimentos abaixo, a fim de garantir o isolamento e integridade da operação.
  • O servidor fluig deve estar parado no momento da execução do script.
Bloco de código
languagesql
DECLARE
  AUX_USERCONNECTED VARCHAR2(30);  
BEGIN
  SELECT SYS_CONTEXT('USERENV', 'CURRENT_SCHEMA')USER
    INTO AUX_USERCONNECTED
    FROM DUAL;
  IF (AUX_USERCONNECTED <> 'SYS') AND (AUX_USERCONNECTED <> 'SYSTEM') THEN
    EXECUTE IMMEDIATE ('CREATE OR REPLACE VIEW ' ||AUX_USERCONNECTED|| '.ALL_OBJECTS AS' ||
                      ' SELECT * FROM SYS.ALL_OBJECTS WHERE OWNER =' ||
                      ' SYS_CONTEXT(' || CHR(39) || 'USERENV' || CHR(39) || ', ' ||IN (SELECT USER FROM DUAL)');
    EXECUTE IMMEDIATE ('CREATE OR REPLACE              CHR(39)VIEW ' || 'CURRENT_SCHEMA' || CHR(39) AUX_USERCONNECTED|| ')');
    EXECUTE IMMEDIATE ('CREATE VIEW .ALL_SYNONYMS AS' ||
                      ' SELECT * FROM SYS.ALL_SYNONYMS WHERE OWNER =' ||
                      ' SYS_CONTEXT(' || CHR(39) || 'USERENV' || CHR(39) || ', ' ||IN (SELECT USER FROM DUAL)');
    EXECUTE IMMEDIATE ('CREATE OR REPLACE              CHR(39)VIEW ' || 'CURRENT_SCHEMA' AUX_USERCONNECTED|| CHR(39) || ')');
    EXECUTE IMMEDIATE ('CREATE VIEW '.ALL_SEQUENCES AS' ||
                      ' SELECT * FROM SYS.ALL_SEQUENCES WHERE SEQUENCE_OWNER =' ||
                      ' SYS_CONTEXT(' || CHR(39) || 'USERENV' || CHR(39) || ', ' ||IN (SELECT USER FROM DUAL)');
    EXECUTE IMMEDIATE ('CREATE OR REPLACE VIEW             CHR(39) || 'CURRENT_SCHEMA' || CHR(39) || ')');
    EXECUTE IMMEDIATE ('CREATE VIEW ' ||AUX_USERCONNECTED|| '.ALL_CONSTRAINTS AS' ||
                      ' SELECT * FROM SYS.ALL_CONSTRAINTS WHERE OWNER =' ||
                      ' SYS_CONTEXT(' || CHR(39) || 'USERENV' || CHR(39) || ', ' ||IN (SELECT USER FROM DUAL)');
    EXECUTE IMMEDIATE ('CREATE OR REPLACE              CHR(39)VIEW ' || 'CURRENT_SCHEMA' || CHR(39) AUX_USERCONNECTED|| ')');
    EXECUTE IMMEDIATE ('CREATE VIEW .ALL_CONS_COLUMNS AS' ||
                      ' SELECT * FROM SYS.ALL_CONS_COLUMNS WHERE OWNER =' ||
                      ' SYS_CONTEXT(' || CHR(39) || 'USERENV' || CHR(39) || ', ' ||IN (SELECT USER FROM DUAL)');
    EXECUTE IMMEDIATE ('CREATE OR REPLACE              CHR(39)VIEW ' || 'CURRENT_SCHEMA' AUX_USERCONNECTED|| CHR(39) || ')');
    EXECUTE IMMEDIATE ('CREATE VIEW '.ALL_INDEXES AS' ||
                      ' SELECT * FROM SYS.ALL_INDEXES WHERE OWNER =' ||
                      ' SYS_CONTEXT(' || CHR(39) || 'USERENV' || CHR(39) || ', ' ||IN (SELECT USER FROM DUAL)');
    EXECUTE IMMEDIATE ('CREATE OR REPLACE VIEW             CHR(39) || 'CURRENT_SCHEMA' || CHR(39) || ')');
    EXECUTE IMMEDIATE ('CREATE VIEW ' ||AUX_USERCONNECTED|| '.ALL_IND_COLUMNS AS' ||
                      ' SELECT * FROM SYS.ALL_IND_COLUMNS WHERE TABLE_OWNER =' ||
                      ' SYS_CONTEXT(' || CHR(39) || 'USERENV' || CHR(39) || ', ' ||IN (SELECT USER FROM DUAL)');
    EXECUTE IMMEDIATE ('CREATE OR REPLACE VIEW             CHR(39) || 'CURRENT_SCHEMA' || CHR(39) || ')');
    EXECUTE IMMEDIATE ('CREATE VIEW ' ||AUX_USERCONNECTED|| '.ALL_TABLES AS' ||
                      ' SELECT * FROM SYS.ALL_TABLES WHERE OWNER =' ||
                      ' SYS_CONTEXT(' || CHR(39) || 'USERENV' || CHR(39) || ', ' ||IN (SELECT USER FROM DUAL)');
    EXECUTE IMMEDIATE ('CREATE OR REPLACE              CHR(39)VIEW ' || 'CURRENT_SCHEMA' AUX_USERCONNECTED|| CHR(39) || ')');
    EXECUTE IMMEDIATE ('CREATE VIEW '.ALL_TAB_COLUMNS AS' ||
                      ' SELECT * FROM SYS.ALL_TAB_COLUMNS WHERE OWNER =' ||
                      ' SYS_CONTEXT(' || CHR(39) || 'USERENV' || CHR(39) || ', ' ||
                      CHR(39) || 'CURRENT_SCHEMA' || CHR(39) || ')')IN (SELECT USER FROM DUAL)');
  END IF;
END;

 

...

 



Oracle 12c

Caso seja utilizado Oracle 12c ou superior é necessário alterar o arquivo <INSTALL_FLUIG>\jboss\bin\standalone.conf.bat(standalone.conf em ambientes Linux) e incluir a seguinte linha:

...

Nota
titleObservação

NLS (National Language Support) é utilizado para definir datas, números, moeda e configurações de idioma.

O NLS_CHARACTERSET para o Fluig a plataforma é AL32UTF8.

 


 



Datasource - Finalidade da Tag new-connection-sql

No arquivo de configuração standalone.xml ([Instalação fluig]/jboss/standalone/configuration) da plataforma fluig é incluído pela wizard de instalação, quando selecionado o banco de dados Oracle, a tag abaixo, tendo a seguinte finalidade:

...

  • O parâmetro nls_comp especifica o comportamento de agrupamento da sessão do banco de dados. É utilizado como LINGUISTIC, aonde as comparações irão ignorar maiúsculos e minúsculos inclusive quando utilizamos LIKE, pois a busca passa a ser alfabética, e não a padrão binária.
  • O parâmetro nls_sort especifica a sequência de agrupamento para consultas ORDER BY. É usado como BINARY_CI, ou seja valor BINARY. Significa que a ordenação dos caracteres seguirão de acordo com a ordem em que os caracteres aparecem no Character Set em uso, e o CI é para ignorar maiúsculas e minusculas.

...