Selecione suas preferências de cookies

Usamos cookies essenciais e ferramentas semelhantes que são necessárias para fornecer nosso site e serviços. Usamos cookies de desempenho para coletar estatísticas anônimas, para que possamos entender como os clientes usam nosso site e fazer as devidas melhorias. Cookies essenciais não podem ser desativados, mas você pode clicar em “Personalizar” ou “Recusar” para recusar cookies de desempenho.

Se você concordar, a AWS e terceiros aprovados também usarão cookies para fornecer recursos úteis do site, lembrar suas preferências e exibir conteúdo relevante, incluindo publicidade relevante. Para aceitar ou recusar todos os cookies não essenciais, clique em “Aceitar” ou “Recusar”. Para fazer escolhas mais detalhadas, clique em “Personalizar”.

Preparação para atualizar o arquivo de fuso horário

Modo de foco
Preparação para atualizar o arquivo de fuso horário - Amazon Relational Database Service

Uma atualização de arquivo de fuso horário tem duas fases separadas: preparar e atualizar. Embora não seja necessário, recomendamos enfaticamente que você execute a etapa de preparação. Nessa etapa, você descobre quais dados serão afetados pela execução do procedimento DBMS_DST.FIND_AFFECTED_TABLES de PL/SQL. Para ter mais informações sobre a janela de preparação, consulte Upgrading the Time Zone File and Timestamp with Time Zone Data (Atualização do arquivo de fuso horário e o carimbo de data/hora com os dados de fuso horário) na documentação do Oracle Database.

Para preparar a atualização do arquivo de fuso horário
  1. Conecte ao banco de dados Oracle usando um cliente SQL.

  2. Determine a versão atual do arquivo de fuso horário usada.

    SELECT * FROM V$TIMEZONE_FILE;
  3. Determine a versão mais recente do arquivo de fuso horário disponível na instância de banco de dados

    SELECT DBMS_DST.GET_LATEST_TIMEZONE_VERSION FROM DUAL;
  4. Determine o tamanho total das tabelas que têm colunas do tipo TIMESTAMP WITH LOCAL TIME ZONE ou TIMESTAMP WITH TIME ZONE.

    SELECT SUM(BYTES)/1024/1024/1024 "Total_size_w_TSTZ_columns_GB" FROM DBA_SEGMENTS WHERE SEGMENT_TYPE LIKE 'TABLE%' AND (OWNER, SEGMENT_NAME) IN (SELECT OWNER, TABLE_NAME FROM DBA_TAB_COLUMNS WHERE DATA_TYPE LIKE 'TIMESTAMP%TIME ZONE');
  5. Determine os nomes e tamanhos dos segmentos que têm colunas do tipo TIMESTAMP WITH LOCAL TIME ZONE ou TIMESTAMP WITH TIME ZONE.

    SELECT OWNER, SEGMENT_NAME, SUM(BYTES)/1024/1024/1024 "SEGMENT_SIZE_W_TSTZ_COLUMNS_GB" FROM DBA_SEGMENTS WHERE SEGMENT_TYPE LIKE 'TABLE%' AND (OWNER, SEGMENT_NAME) IN (SELECT OWNER, TABLE_NAME FROM DBA_TAB_COLUMNS WHERE DATA_TYPE LIKE 'TIMESTAMP%TIME ZONE') GROUP BY OWNER, SEGMENT_NAME;
  6. Execute a etapa de preparação.

    • O procedimento DBMS_DST.CREATE_AFFECTED_TABLE cria uma tabela para armazenar quaisquer dados afetados. Passe o nome desta tabela ao procedimento DBMS_DST.FIND_AFFECTED_TABLES. Para ter mais informações, consulte CREATE_AFFECTED_TABLE Procedure (Procedimento CREATE_AFECTED_TABLE) na documentação do Oracle Database.

    • O procedimento CREATE_ERROR_TABLE cria uma tabela para registrar erros. Para ter mais informações, consulte CREATE_ERROR_TABLE Procedure (Procedimento ERROR_TABLE) na documentação do Oracle Database.

    O exemplo a seguir cria os dados afetados e as tabelas de erro e localiza todas as tabelas de afetados.

    EXEC DBMS_DST.CREATE_ERROR_TABLE('my_error_table') EXEC DBMS_DST.CREATE_AFFECTED_TABLE('my_affected_table') EXEC DBMS_DST.BEGIN_PREPARE(new_version); EXEC DBMS_DST.FIND_AFFECTED_TABLES('my_affected_table', TRUE, 'my_error_table'); EXEC DBMS_DST.END_PREPARE; SELECT * FROM my_affected_table; SELECT * FROM my_error_table;
  7. Consulte as tabelas de afetados e de erro.

    SELECT * FROM my_affected_table; SELECT * FROM my_error_table;
PrivacidadeTermos do sitePreferências de cookies
© 2025, Amazon Web Services, Inc. ou suas afiliadas. Todos os direitos reservados.