- Este tópico contém 2 respostas, 2 vozes e foi atualizado pela última vez 19 anos, 4 meses atrás por
rosterne.
-
AutorPosts
-
23 de outubro de 2006 às 9:05 pm #76886
Marcio68Almeida
ParticipantePossuo 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 ?25 de outubro de 2006 às 8:51 pm #76905Marcio68Almeida
ParticipanteTem 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…
25 de outubro de 2006 às 9:08 pm #76906rosterne
ParticipanteMá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.
-
AutorPosts
- Você deve fazer login para responder a este tópico.