Ubah zona waktu instans ApsaraDB RDS for PostgreSQL jika pengaturan saat ini tidak memenuhi kebutuhan bisnis Anda atau jika aplikasi Anda menangani data di beberapa zona waktu. Hal ini memastikan bahwa data dikonversi dan ditampilkan secara akurat di berbagai zona waktu.
Prasyarat
Anda memiliki instans ApsaraDB RDS for PostgreSQL yang menggunakan cloud disk.
Catatan penggunaan
-
Pernyataan
SET timezonehanya berlaku untuk sesi saat ini dan tidak bersifat permanen. Untuk membuat perubahan tersebut permanen, ubah parameter seperti yang dijelaskan dalam Set instance parameters. -
Untuk mengatur zona waktu untuk database tertentu, jalankan pernyataan berikut:
ALTER DATABASE <database_name> SET timezone TO '<time_zone_name>';.CatatanUntuk mengembalikan zona waktu database ke nilai default sistem, jalankan pernyataan berikut:
ALTER DATABASE <database_name> SET timezone TO DEFAULT;. -
PostgreSQL mendukung dua tipe data untuk menyimpan timestamp: TIMESTAMP dan TIMESTAMPTZ. Pilih tipe data yang sesuai berdasarkan kebutuhan bisnis Anda:
-
TIMESTAMP: Tipe data ini menyimpan nilai tanggal dan waktu dalam UTC tetapi tidak menyimpan informasi zona waktu. Jika Anda mengubah zona waktu seperti yang dijelaskan dalam topik ini, hasil kueri untuk tipe data ini tetap tidak berubah.
-
TIMESTAMPTZ: Tipe data ini peka terhadap zona waktu. Saat Anda menyimpan timestamp, PostgreSQL mengonversinya ke UTC untuk penyimpanan. Saat Anda mengambil data tersebut, PostgreSQL mengonversinya dari UTC ke zona waktu yang diatur untuk instans atau sesi. Jika Anda mengubah zona waktu seperti yang dijelaskan dalam topik ini, hasil kueri untuk tipe data ini secara otomatis mencerminkan zona waktu baru.
-
Mengubah zona waktu
Untuk instans ApsaraDB RDS for PostgreSQL yang menggunakan cloud disk, buka halaman Parameters di Konsol untuk mengubah parameter timezone. Untuk petunjuk lengkapnya, lihat Set instance parameters.
Nilai default parameter timezone adalah Asia/Shanghai. Mengubah parameter ini tidak memerlukan restart instans.
Instans ApsaraDB RDS for PostgreSQL yang menggunakan Premium Local SSD tidak mendukung parameter timezone.
Lihat zona waktu yang didukung
Untuk melihat semua zona waktu yang didukung, jalankan perintah berikut:
SELECT name,utc_offset FROM pg_timezone_names;
Untuk informasi lebih lanjut tentang tabel pg_timezone_names, lihat pg_timezone_names.
Dokumen terkait
-
Jika Anda tidak mengonfigurasi parameter zona waktu saat membuat instans, sistem akan menetapkan zona waktu default berdasarkan wilayah. Untuk daftar wilayah dan nama zona waktu default yang sesuai, lihat Default time zone names for ApsaraDB RDS for PostgreSQL instances by region.
-
ApsaraDB RDS for PostgreSQL hanya mendukung nama zona waktu, bukan offset UTC. Untuk daftar nama zona waktu yang umum digunakan, lihat List of common time zone names for ApsaraDB RDS for PostgreSQL instances.
-
Anda juga dapat menggunakan operasi API untuk mengubah parameter timezone.
API
Description
Modifies instance parameters