🕑 Tutorial: Revisión de Cambio de Hora en Sistemas Oracle y Linux (Chile)

Table of contents
- Introducción
- 🔍 Paso 1: Verificar Zona Horaria en Oracle Database
- 🖥️ Paso 2: Configuración de Zona Horaria en Oracle Linux
- 🔁 Paso 3: Automatización del Cambio de Hora
- 📅 ¿Funciona este cron para 2026, 2027, 2028, 2029 y 2030?
- ✅ Paso 4: Validación del Cambio
- 📧 Paso 5: Envío de Alertas por Correo (Opcional)
- 📚 Recursos Adicionales
- 🧪 Bonus: Comprobación en Sistemas Distribuidos
- 🧭 Conclusión

Introducción
En Chile, el cambio de hora se realiza dos veces al año, alternando entre:
Horario de verano: UTC-3 (desde septiembre)
Horario de invierno: UTC-4 (desde abril)
Este tutorial está dirigido a administradores de bases de datos y sistemas que utilizan:
Oracle Database: 12c, 19c, 21c y 23c
Sistemas Operativos: Oracle Linux 7.9 y 8
Aquí aprenderás a verificar, ajustar y automatizar el cambio de hora, evitando problemas de sincronización en tus sistemas críticos.
🔍 Paso 1: Verificar Zona Horaria en Oracle Database
1.1 Verificación de zona horaria actual
sqlCopiarEditarSELECT DBTIMEZONE FROM DUAL;
1.2 Cambiar zona horaria (si aplica)
sqlCopiarEditarALTER DATABASE SET TIME_ZONE = 'America/Santiago';
⚠️ Este cambio requiere reiniciar la base de datos.
🖥️ Paso 2: Configuración de Zona Horaria en Oracle Linux
2.1 Verificar configuración actual
timedatectl
2.2 Cambiar zona horaria
sudo timedatectl set-timezone America/Santiago
🔁 Paso 3: Automatización del Cambio de Hora
3.1 Usar cron
para ajustar automáticamente en las fechas oficiales
Asegúrate de revisar las fechas oficiales del cambio de hora cada año en horaoficial.cl.
Ejemplo de entradas en crontab
(modo root):
# Horario de verano (primer sábado de septiembre a las 03:00 AM)
0 3 1-7 9 6 timedatectl set-timezone America/Santiago
# Horario de invierno (primer sábado de abril a las 03:00 AM)
0 3 1-7 4 6 timedatectl set-timezone America/Santiago
📅 ¿Funciona este cron
para 2026, 2027, 2028, 2029 y 2030?
Recordemos la lógica:
bashCopiarEditar# Horario de verano: primer sábado de septiembre (días 1 a 7 de septiembre, si es sábado)
0 3 1-7 9 6 timedatectl set-timezone America/Santiago
# Horario de invierno: primer sábado de abril (días 1 a 7 de abril, si es sábado)
0 3 1-7 4 6 timedatectl set-timezone America/Santiago
El número
6
al final = sábado1-7
= primeros 7 días del mes9
= septiembre,4
= abrilHora = 03:00 AM
🔍 Validación práctica por año (primer sábado del mes):
Año | Abril | Septiembre |
2026 | Sábado 4 | Sábado 5 |
2027 | Sábado 3 | Sábado 4 |
2028 | Sábado 1 | Sábado 2 |
2029 | Sábado 7 | Sábado 1 |
2030 | Sábado 6 | Sábado 7 |
✅ En todos los años del 2026 al 2030, el primer sábado del mes cae entre el día 1 y el 7, así que el cron propuesto funcionará perfectamente.
🧠 Recomendación extra de La Botica del DBA:
Aun así, revisar anualmente el sitio horaoficial.cl es buena práctica, porque los gobiernos pueden cambiar la política de horarios (como ya ha pasado en Chile antes).
Puedes dejar un
recordatorio recurrente
en tu calendario para revisar esto a fines de marzo y agosto de cada año.
✅ Paso 4: Validación del Cambio
4.1 En Oracle Database
SELECT DBTIMEZONE FROM DUAL;
4.2 En Oracle Linux
timedatectl
📧 Paso 5: Envío de Alertas por Correo (Opcional)
Puedes configurar correos automáticos antes y después del cambio de hora para confirmar que los sistemas han sido ajustados correctamente.
5.1 Query de control antes y después del cambio:
-- Fecha actual del sistema
SELECT TO_CHAR(SYSDATE, 'dd/mm/yyyy HH24:MI:SS') FROM dual;
-- Nombre de la instancia
SELECT instance_name FROM v$instance;
5.2 Enviar correo con mailx
Ejemplo de script de envío:
#!/bin/bash
ASUNTO="Cambio de Hora SRBOTICAP - $(date '+%d/%m/%Y %H:%M')"
MENSAJE="Se ha realizado/verificado el cambio de hora en el servidor $(hostname). Fecha actual: $(date)"
echo "$MENSAJE" | mailx -r SRBOTICAP@laboticadeldba.com -s "$ASUNTO" admin@laboticadeldba.com
💡 Puedes programar este script como
cronjob
minutos después del cambio de hora, o ejecutarlo manualmente como parte del procedimiento.
📚 Recursos Adicionales
🧪 Bonus: Comprobación en Sistemas Distribuidos
Si estás en un entorno Oracle RAC o tienes múltiples servidores, asegúrate de validar el cambio en todos los nodos para evitar inconsistencias de tiempo en los logs, trace files o sincronización de procesos.
🧭 Conclusión
El cambio de hora en Chile puede parecer trivial, pero una configuración incorrecta puede causar:
Fallas en sincronización de jobs
Inconsistencias en registros de auditoría
Problemas con backups y replicación
Este tutorial busca ayudarte a tener tus sistemas preparados y evitar estos problemas con pasos simples pero efectivos.
¿Lo probaste? ¿Tienes dudas?
Comenta aquí abajo o escríbeme directamente: admin@laboticadeldba.com
📬 Suscríbete a La Botica del DBA para más recetas técnicas, hacks y tips.
Subscribe to my newsletter
Read articles from Mauricio Muñoz Palma directly inside your inbox. Subscribe to the newsletter, and don't miss out.
Written by

Mauricio Muñoz Palma
Mauricio Muñoz Palma
Bienvenidos a "La Botica del DBA" Donde la pasión por las bases de datos Oracle se transforma en conocimiento y excelencia. Este espacio está diseñado para ser el laboratorio de ideas, soluciones y estrategias que todo DBA necesita para optimizar, innovar y liderar en el mundo de las bases de datos. Desde los fundamentos hasta las últimas tendencias, aquí encontrarás guías prácticas, análisis profundos y herramientas que impulsarán tu carrera y tus proyectos al siguiente nivel.