Árvore de páginas

Navegue por aqui!

01. Premissas Gerais

  • As informações deste documento devem ser utilizadas como referência, considerando também fatores externos e tendências de negócio, como crescimento do número de estabelecimentos, usuários concorrentes e uso de softwares de terceiros no mesmo ambiente do TOTVS Varejo Supermercados - ERP Linha Consinco.
  • O dimensionamento do ambiente de banco de dados deve ser realizado por empresa ou profissional com experiência em planejamento de capacidade. Temos parceiros especializados que podem apoiar nessa atividade.
  • Recomenda-se a utilização de servidor dedicado exclusivamente ao Oracle Database, sem hospedar outros serviços ou softwares que não estejam relacionados aos produtos da Oracle ou à sua sustentação.
  • Não há restrições quanto ao uso de ambiente Oracle em alta disponibilidade (RAC).
  • Não há restrições quanto à virtualização do ambiente Oracle Database, desde que todos os pré-requisitos e orientações da fabricante sejam integralmente atendidos.
  • Os itens descritos como “exemplos”, “referências” e/ou “padrões” de tecnologias têm caráter meramente informativo e explicativo. Sempre considerar os recursos e tecnologias mais atuais disponíveis no mercado.
  • Recomenda-se a adoção e implementação de políticas adequadas de segurança de acesso ao banco de dados. Consulte nossa documentação de Política de acesso ao banco de dados para atendimentos de suporte.
  • Recomenda-se que a administração do banco de dados seja realizada por empresa ou profissional especializado.
  • A TOTVS reserva-se o direito de atualizar, modificar, incluir ou excluir informações deste documento a qualquer momento, sem aviso prévio, em função da evolução de seus produtos e tecnologias.

02. Requisitos de Ambiente

Validação de Pré-requisitos

Os requisitos básicos e verificáveis podem ser validados por meio da ferramenta de validação de banco de dados.

Requisitos de Hardware

  • Processador com arquitetura de servidor 64-bit (recomendado x86)
  • Espaço mínimo disponível inicial de 200 GB

  • Método RAID de alta performance para banco de dados recomendado pelo fabricante

  • Discos de armazenamento de alta performance para banco de dados (recomendado SSD, NVMe ou superior)


A quantidade de CPU, memória RAM e, principalmente, o espaço utilizado pelo banco de dados, assim como a taxa de crescimento, variam conforme os produtos instalados, integrações com softwares de terceiros, divisão de negócio, frequência de uso e parâmetros dos módulos utilizados. Por isso, o espaço consumido e a taxa média de crescimento mensal são apenas estimativas para auxiliar no planejamento de capacidade, já que essas condições são específicas de cada ambiente. Recomenda-se o monitoramento periódico para ajustar os recursos disponíveis de acordo com a taxa de crescimento e o uso efetivo do ambiente.

Planejamento de Capacidade - Com ERP Completo

Usuários SimultâneosCPU

Memória RAM

Taxa Cresc. Disco/Mês

Até 5 usuários4 núcleos lógicos (fator 0,8 por usuário)16 GB (fator 3,2 por usuário)~0,5 GB
Até 15 usuários8 núcleos lógicos (fator 0,5 por usuário)32 GB (fator 2,1 por usuário)~1 GB
Até 30 usuários16 núcleos lógicos (fator 0,5 por usuário)64 GB (fator 2,1 por usuário)~3 GB
Até 60 usuários24 núcleos lógicos (fator 0,4 por usuário)128 GB (fator 2,1 por usuário)~10 GB
Até 120 usuários30 núcleos lógicos (fator 0,3 por usuário)240 GB (fator 2,0 por usuário)~25 GB
Até 240 usuários36 núcleos lógicos (fator 0,2 por usuário)288 GB (fator 1,2 por usuário)~50 GB
Até 480 usuários48 núcleos lógicos (fator 0,1 por usuário)384 GB (fator 0,8 por usuário)~150 GB
Até 840 usuários66 núcleos lógicos (fator 0,08 por usuário)528 GB (fator 0,6 por usuário)~300 GB
Até 1.000 usuários72 núcleos lógicos (fator 0,07 por usuário)576 GB (fator 0,5 por usuário)~550 GB

Requisitos de Software

  • Utilizar plataforma operacional homologada (ver tópico Sistemas Operacionais Homologados).
  • Oracle Standard ou Enterprise. ¹
  • Oracle AWS RDS. ²

¹ A versão Oracle Express Edition (Oracle XE ou FREE) não é suportada.

² Devido às características e restrições do ambiente Amazon RDS para Oracle, algumas funcionalidades podem não estar disponíveis ou podem exigir ações operacionais específicas.

03. Requisitos de Instalação

Os requisitos descritos neste item são obrigatórios para o correto funcionamento do ERP Linha Consinco. Alguns requisitos são opcionais, mas sua ausência pode impedir o funcionamento de determinados recursos do produto.

Premissas

  • Utilizar versão Oracle Database homologada (ver tópico Oracle Database Homologados).
  • Utilizar character set no padrão WE8MSWIN1252.
  • Utilizar national character set no padrão AL16UTF16.

Parâmetros Oracle

  • Manter o valor All_Rows (default) ou Choose para o parâmetro Optimizer_Mode
  • Manter o valor Exact (default) para o parâmetro Cursor_Sharing ¹
  • Manter o valor Manual (default) para o parâmetro Result_Cache_Mode ¹
  • Definir o valor de 2000 para o parâmetro Open_Cursors
  • Definir o valor False para o parâmetro Optimizer_Adaptive_Features (12.1) ¹
  • Definir o parâmetro Optimizer_Index_Cost_Adj com valor de 20 ²
  • Definir o parâmetro Optimizer_Index_Caching com valor de 90 ²

¹ Existem problemas de performance conhecidos no ERP ao alterar esses parâmetros.

² De forma geral, recomenda-se seguir a sugestão e ajustá-la conforme o entendimento específico de cada ambiente.

Pacotes de Componentes

  • Oracle XML Database
  • Oracle Database Java Packages

Criação de Usuário e Tablespace

  • Criar o usuário CONSINCO destinado aos módulos do ERP ¹
  • A senha do usuário CONSINCO obrigatoriamente precisa estar em maiúscula
  • Criar a tablespace TSD_CONSINCO para armazenamento de dados ²
  • Criar a tablespace TSI_CONSINCO para armazenamento de índices
  • Definir a tablespace padrão do usuário CONSINCO como TSD_CONSINCO
  • Criar usuário INTEGRACAO destinado a integração com software de NFe ¹
  • Criar a tablespace TSD_INTEGRACAO para armazenamento de dados
  • Definir a tablespace padrão do usuário INTEGRACAO como TSD_INTEGRACAO

¹ A importação do dump de implantação já cria os usuários CONSINCO e INTEGRACAO.

² Caso o gerenciamento de alocação da tablespace não seja automático, é necessário que o tamanho do initial extent suporte a criação de campos LOBs (XMLType).

Privilégios

  • Privilégio ao usuário CONSINCO para Connect
  • Privilégio ao usuário CONSINCO para Resource
  • Privilégio ao usuário CONSINCO para Administer Database Trigger
  • Privilégio ao usuário CONSINCO para Create Trigger
  • Privilégio ao usuário CONSINCO para Unlimited Tablespace
  • Privilégio ao usuário CONSINCO para Connect e Resolve na ACL ¹
  • Privilégio ao usuário CONSINCO para acesso V$Session
  • Privilégio ao usuário CONSINCO para acesso Gv$Session
  • Privilégio ao usuário CONSINCO para executar Alter System ² ³
  • Privilégio ao usuário CONSINCO para executar Alter Session
  • Privilégio ao usuário CONSINCO para acesso Select Any Dictionary ou Select Catalog Role ²
  • Privilégio ao usuário CONSINCO para Debug Connect Session ²
  • Privilégio ao usuário CONSINCO para Debug Any Procedure ²
  • Privilégio ao usuário CONSINCO para executar Sys.Utl_Smtp
  • Privilégio ao usuário CONSINCO para executar Sys.Utl_File
  • Privilégio ao usuário CONSINCO para executar Sys.Utl_Tcp
  • Privilégio ao usuário CONSINCO para read, write, delete na java.io.FilePermission ¹

¹ Privilégio necessário para o correto funcionamento de recursos específicos do produto.

² A ausência do privilégio pode impossibilitar ou dificultar atividades de análise de suporte (ex: encerramento de sessão).

³ A ausência do privilégio pode inibir ou desabilitar recursos do produto, necessários para a atualização do ERP, como por exemplo o encerramento de sessões e a parada da fila de JOBs e Schedules. Como alternativa, podem ser criadas Stored Procedures que permitam ao produto encerrar sessões e manipular a fila de JOBs/Schedules de forma controlada.

Exemplo de criação da Procedure para Kill Session
-- Procedure
CREATE OR REPLACE PROCEDURE sys.sp_kill_session(p_sid NUMBER, p_serial NUMBER, inst_id NUMBER)
as
BEGIN

EXECUTE IMMEDIATE 'ALTER SYSTEM KILL SESSION '''||p_sid||','||p_serial||','||'@'||inst_id||''' IMMEDIATE';

EXCEPTION
WHEN OTHERS THEN
RAISE_APPLICATION_ERROR(-20000, sqlerrm);
END sp_kill_session;
/
-- Criação do sinônimo
CREATE PUBLIC SYNONYM sp_kill_session
FOR sys.sp_kill_session;

--Grant na procedure
grant execute on sys.sp_kill_session to consinco;
Exemplo de criação da Procedure para Alteração da Fila de JOBs/Schedules
CREATE OR REPLACE PROCEDURE sys.sp_altera_job_queue_processes(p_degree integer)
as
BEGIN
       EXECUTE IMMEDIATE 'ALTER SYSTEM SET JOB_QUEUE_PROCESSES = ' || p_degree; 
EXCEPTION
     WHEN OTHERS THEN
          RAISE_APPLICATION_ERROR(-20000, sqlerrm);
END sp_altera_job_queue_processes;
/
-- Criação do sinônimo
CREATE PUBLIC SYNONYM sp_altera_job_queue_processes FOR sys.sp_altera_job_queue_processes;
 
--Grant na procedure
grant execute on sys.sp_altera_job_queue_processes to consinco;

04. Administração

As informações deste item baseiam-se em boas práticas de administração do Oracle Database para os produtos TOTVS Varejo Supermercados - ERP Linha Consinco. Em alguns cenários, características do ambiente, equipamentos, volumetria e número de acessos simultâneos podem exigir recomendações específicas ou diferentes, inclusive conforme orientações da própria Oracle.

Premissas

  • A criação e manutenção de tarefas agendadas (jobs/schedules) no banco de dados é responsabilidade administrativa (DBA).
  • Quando necessárias, as tarefas agendadas devem ser criadas utilizando a funcionalidade Scheduler.
  • As tarefas agendadas devem ter o parâmetro NLS_LANGUAGE definido com o valor AMERICAN.
  • A coleta periódica de estatísticas deve ser realizada utilizando o objeto Pkg_Estatistica, DBMS_Stats ou método equivalente, para todo o schema ¹.
  • Manter sem estatísticas as tabelas e índices temporários (GTT), preferencialmente alocando-os de forma que não sejam coletados.
  • A coleta de estatísticas deve ser realizada para todos os owners Consinco.
  • Periodicamente, o DBA deve avaliar a exclusão de colunas sinalizadas como unsable para liberação de espaço no banco de dados ².

¹ A coleta automática de estatísticas do Oracle não é suficiente na maioria dos casos para o TOTVS Varejo Supermercados - ERP Linha Consinco. Recomenda-se implementar uma política adicional de coleta periódica conforme descrito neste item.

² Em alguns casos, o comando drop de uma coluna pode ser substituído por unsable durante processos de atualização do ERP, especialmente quando a tabela possui grande volumetria. Essa prática evita comprometer o tempo de atualização, reduzindo a necessidade de janelas de atualização prolongadas

Recomendações

  • Criar políticas de backup físico e lógico periódicas para o banco de dados (RMAN, Data Pump).
  • Utilizar no máximo 70% da memória RAM disponível no servidor para o Oracle.
  • Manter redo logs em quantidade e tamanho adequados para um bom intervalo de switch (~15 minutos).
  • Configurar o parâmetro Expire_Time no arquivo sqlnet.ora com valor próximo a 10 minutos.
  • Configurar o parâmetro Recv_Timeout no arquivo sqlnet.ora com valor NONE.
  • Configurar o parâmetro Send_Timeout no arquivo sqlnet.ora com valor NONE.
  • Definir o valor Unlimited para a regra Failed_Login_Attempts no perfil dos owners Consinco.
  • Definir o valor Unlimited para a regra Password_Life_Time no perfil dos owners Consinco.
  • Definir o parâmetro Job_Queue_Processes com valor inferior ao parâmetro Cpu_Count.
  • Avaliar e, sempre que possível, aplicar periodicamente os Patch Set Updates (PSU) fornecidos pela Oracle para a versão utilizada.

05. Particionamento de tabelas

Para clientes que utilizam a versão Enterprise do Oracle Database e possuem licença da option de particionamento, as tabelas listadas abaixo são candidatas a particionamento, que, quando implementado corretamente, pode melhorar o desempenho das consultas, otimizar o consumo de recursos e facilitar o gerenciamento do banco de dados.

Nome da TabelaColuna(s) de ParticionamentoIntervalo Sugerido
Aba_LancamentoDtacontabilMês
Aba_SaldoDataMês
Abam_LancamentosIntegracaoDtacontabilMês

Ct_Lancamento

Dtalancamento

Mês

Ct_RazaoDtalancamento

Mês

Fi_ContabilizacaoDtacontabilizaMês
Fi_TitoperacaoDtaoperacaoMês
Fi_TsmovtooperadorDtamovimentoMês
Ge_LogxmlDtaregistroAno
Mac_GercompraDtahorinclusaoAno
Mad_ProdlogprecoDtahoralteracaoAno
Madmv_AbcdistribprodDtaentradasaidaMês
Map_AuditoriaDtaauditoriaAno
Mfl_CupomfiscalDtamovimentoMês
Mfl_DoctofiscalDtamovimentoMês
Mfl_FinanceiroDtaaberturaMês
Mrl_ControleqtdeestoqueDtabaseMês
Mrl_CustodiaDtaentradasaidaMês
Mrl_CustodiaempDtaentradasaidaMês
Mrl_CustodiafamDtaentradasaidaMês
Mrl_CustoverbaDtafinalAno
Mrl_LanctoestoqueDtaentradasaidaMês
Mrl_ProdestoquediaDtaentradasaidaMês
Mrl_ProdvdforapromNroempresaEmpresa
Mrl_ProdvendadiaNroempresaEmpresa
Msu_Pedidosuprim_LogDtahoraalteracaologAno
Msux_Psitemexpcontrolesi_LogDtahoraalteracaologAno
Mrl_Custoverba_LogDtahorinclusaoAno
Pdv_DoctoDtamovimentoMês
Rf_ApuracaoanaliticaAno, MesMês
Rf_ApurapcanaliticaAno, MesMês
RF_ContabauxDtacontabilMês
Rf_CupommestreDtaemissaoMês
Rf_CupomeletronicoDtaemissaoMês
Rf_CupeletrnfcesintDtaemissaoMês
Rf_LogalteracaoDtaocorrenciaAno
Rf_NotamestreDtalancamento

Mês

Para as tabelas listadas acima que forem particionadas, recomenda-se que todas as tabelas filhas utilizem o método Reference Partitioning.

Importante

Recomenda-se criar uma partição default quando o particionamento for por Range, ou utilizar Interval Partitioning, evitando interrupções em operações caso as partições não sejam criadas previamente; recomenda-se aplicar particionamento apenas em tabelas históricas com volume de dados expressivo.

06. Compressão de dados

Para clientes com Oracle Exadata e recurso HCC (Hybrid Columnar Compression), é possível reduzir até 10x o espaço consumido aplicando compressão nos modos Query Low ou Archive High, conforme o padrão de acesso de cada tabela/partição.

Para clientes com Oracle Enterprise e licenciamento da option Advanced Compression, a compressão pode ser aplicada também em índices, oferecendo níveis superiores ao HCC.

Para clientes com Oracle Enterprise e apenas o recurso Basic Compression, é possível aplicar compressão mesmo em tabelas não particionadas, obtendo redução considerável no consumo de espaço.

Tabelas particionadas são candidatas à compressão utilizando os recursos acima; recomenda-se escolher o tipo de compressão conforme os recursos adquiridos e baseado em testes em ambiente de homologação.

Importante

  • Recomenda-se não comprimir partições que ainda podem sofrer muitas alterações devido ao uso operacional dos dados no ERP (ex.: mês anterior e mês corrente), pois isso pode comprometer o desempenho das rotinas.

  • Nas versões mais recentes do Oracle Database (19c), o recurso de compressão está disponível apenas na edição Enterprise; confirme com o fornecedor possíveis custos adicionais para uso em seu ambiente.

  • Apesar dos benefícios da compressão de dados, o consumo de CPU pode aumentar dependendo da estratégia adotada; recomenda-se monitorar o consumo antes e após a compressão.

07. Ambiente de Homologação

A criação de bases de homologação ou teste pode ser feita utilizando uma cópia reduzida da base de produção, reduzindo consumo de espaço no servidor e tempo de criação. Esse método aplica cortes nas maiores tabelas do ERP, reduzindo significativamente o tamanho da base. A redução influencia diretamente nos testes de desempenho; portanto, a execução de scripts e a atualização do ERP nesta base não refletem o tempo real de produção, servindo apenas como referência proporcional. Cortes em tabelas históricas podem afetar algumas consultas, mas normalmente não impactam a maioria dos testes e análises de homologação.

Utilize o template de arquivo de parâmetros (expdp) fornecido na Central de Downloads como exemplo para criar um dump reduzido do banco de produção. No arquivo de parâmetros, informe a data de corte conforme o exemplo fornecido; datas mais recentes resultam em dumps e bases de homologação menores. Tabelas de logs serão exportadas vazias e tabelas %BKP% serão ignoradas.

No template sugerido, estatísticas de tabelas e índices não são exportadas no dump; recomenda-se coletá-las após o restore da base de homologação.

A criação de ambiente de homologação a partir de dump de produção em uso pode gerar erros de Unique Constraint devido a sequences desatualizadas; caso ocorra, ajuste as sequences utilizando o script disponível na Central de Downloads.

Recomenda-se fortemente que a senha dos usuários do banco de dados em ambiente de homologação seja diferente da senha utilizada em produção.

08. Oracle Database homologados

As versões da tabela abaixo correspondem às releases mais recentes disponíveis (PSU, RU) na ocasião da homologação do ERP; não é recomendada a utilização de versões inferiores em produção, e para versões superiores, recomenda-se testar previamente em homologação, garantindo compatibilidade sem restringir atualizações de segurança e correções fornecidas pelo fabricante para a versão em uso.

Para versões de Oracle Client homologadas para o ERP, consulte a documentação de instalação do Oracle Client.

Versão Database
Homologada
Release Mínima
Homologada

Versão Inicial
Suporte ERP

Término Suporte
Estendido Oracle ¹

Previsão de Término
Suporte ERP ²
Oracle 19c19.10.0.021.01Abril/2027Indefinido
Oracle 12R212.2.0.117.01Março/2022Janeiro/2025 (24.01)
Oracle 12R112.1.0.217.01Julho/2022Janeiro/2025 (24.01)
Oracle 11R211.2.0.4Setembro/2012Dezembro/2020Julho/2024 (23.07)
Oracle 10R210.2.0.4Julho/2006 Julho/2013Maio/2017

Importante

¹ O fornecedor do banco de dados pode alterar as datas de término de suporte conforme comunicados no site oficial (MOS). Recomenda-se verificar essas informações diretamente com o fornecedor. Não é recomendada a utilização de versões sem suporte ativo.

² A data futura de término de suporte do ERP para a versão do banco de dados é uma previsão e pode ser alterada conforme o ciclo de desenvolvimento do produto; comunicados oportunos serão enviados para confirmar o encerramento do suporte.

Informações adicionais sobre releases e patches de correção fornecidos pelo fornecedor do banco de dados estão disponíveis em https://support.oracle.com.

09. Sistemas Operacionais homologados

Recomenda-se utilizar plataforma operacional Unix 64-bit, preferencialmente Oracle Linux, conforme recomendação do fornecedor e por ser predominante em ambientes com TOTVS Varejo Supermercados - ERP Linha Consinco.

PlataformaDistribuição / Versão
Linux x86 64-bitVer Oracle Database Preinstallation
Linux 64-bit for AMDVer Oracle Database Preinstallation
AIX-Based Systems (64-bit)Ver Oracle Database Preinstallation
HP-UX (64-bit)Ver Oracle Database Preinstallation
Windows Server x86 64-bit** Não recomendado **

10. Parâmetros de Sistema Operacional

KERNEL

A Oracle especifica parâmetros de kernel e HugePages essenciais para o funcionamento adequado e performático do banco de dados. Para detalhes completos sobre esses parâmetros e suas configurações recomendadas, consulte a documentação oficial da Oracle:

LIMITES

A Oracle recomenda configurações específicas de limites de recursos para garantir que o banco de dados tenha recursos suficientes para operar eficientemente. Para informações detalhadas sobre essas configurações, consulte a documentação oficial da Oracle: