Permasalahan “Local Time” pada SQL Server dan/atau Windows Server

Utk manajemen Windows Server yang digunakan sebagai database server, pada keperluan ‘mission critical’ saya lebih prefer turn off windows update (salah satu alasannya adalah jika update dinyalakan maka akan ada down time yg disebabkan instalasi update). Hal ini ternyata berimbas ke setting waktu pada Windows Server (termasuk ke MSSQL server) yang menjadi tidak cocok (lebih lambat dibanding jam sesungguhnya), apalagi jika ternyata insert update data melibatkan getdate().

Kenapa setting waktu bisa melambat? keterlambatan terjadi ketika load server mendekati beban puncak. Keterlambatan waktu bervariasi antara milisecond hingga second dan jika terjadi terlalu lama secara kumulatif akan menjadi besar.

Ada beberapa pilihan solusi:

  1. Melakukan sinkronisasi waktu secara manual. Utk melakukan secara manual bisa melalui GUI – ‘change date time setting’ di pojok kanan bawah. Atau bisa melakukan secara command line melalui CMD dengan sintaks berikut: win32tm /resync. Cara ini digunakan kalau keterlambatan waktu yang terjadi tidak terlalu sering
  2. Jika keterlambatan waktu sering sekali terjadi (server sering mengalami heavy load) maka cara yang praktis yaitu dengan menggunakan ‘Task Scheduler’. Panduan lengkap silahkan download file berikut.

Cara ke-2 bisa dimodifikasi jika task schedulernya mau dijalankan misalnya 2x per hari, dsb. Selanjutnya jika sudah membuat task scheduler, silahkan diperiksa last running code-nya untuk mengetahui apakah service berjalan atau tidak.

Leave a Reply

Your email address will not be published. Required fields are marked *