Pular para o conteúdo
Visualizando 3 posts - 1 até 3 (de 3 do total)
  • Autor
    Posts
  • #76886
    Marcio68Almeida
    Participante

      Possuo 3 servidores Linux, RedHat Enterprise 4.0 com o Oracle 9i praticamente com a mesma configuração em cada um deles (a principal diferença está na memória).
      Por algum motivo que ainda não me foi explicado claramente, os servidores, no último dia 15, mudaram a hora para horário de verão, o que adiantou o relógio em uma hora.
      Pois bem, o pessoal efetuou o mesmo processo em todos os servidores, só que um deles ainda está com o horário errado no Oracle, o horário no sistema operacional e no clock estão corretos.
      Pergunto :
      1. Tem algum lugar específico para alterar no sistema operacional que faça o banco olhar para o horário certo ???
      2. Tem algum lugar no banco que, sem derruba-lo, eu consiga alterar o timezone para todas as sessões, não para cada sessão ?

      #76905
      Marcio68Almeida
      Participante

        Tem algumas na internet dicas que não funcionaram, reiniciei o banco e tudo voltou a funcionar, pelo menos até a próxima mudança de horário…

        #76906
        rosterne
        Participante

          Márcio,

          vc pode olhar o horário atual do banco no formato timestamp da seguinte forma:

          – select systimestamp from dual;

          Para alterar o timezone do banco, faça:

          Ex:

          – alter database set timezone = ‘+2:00’;

          Para ver o timezone atual do banco, faça:

          – select dbtimezone from dual;

          Vc tb pode opter os timezones e os nomes dos timezones na v$timezone_names.

          Para retorna um timezone de uma região, vc pode utilizar a seguinte query:

          Ex:
          – select TZ_OFFSET(‘America/Sao_Paulo’) from dual;

          OBS: É importante saber que o timezone é somente relevante para as colunas contendo timizone. Se você não tiver nenhumas destas colunas na base de dados então o timezone da base de dados não tem nenhuma função, ou seja, não há nenhuma necessidade preocupar em ajusta-la. O timezone da base de dados geralmente é ajustado somente no momento de criação da base de dados.

          Um outro ponto é que regiões como o Brasil têm mudanças de horario(Horário de verão) que significa que a informação do timezone na base de dados fica desincronizado com o mundo real.

          Obviamente isto pode afetar a exatidão do tempo dos dados para estas regiões armazenadas com TIMESTAMP WITH LOCAL ZONE.

          Se você planeja usar o TIMESTAMP WITH LOCAL ZONE , e você necessita controlar os dados do tempo destas regiões, você deve usar o offset(já mencionado acima). Ao invéz do nome da região da zona de tempo especificar o timestamp.

          Espero ter ajudado.

        Visualizando 3 posts - 1 até 3 (de 3 do total)
        • Você deve fazer login para responder a este tópico.
        plugins premium WordPress