setting local time without restarting server

Started by A. Mousalmost 22 years ago5 messagesgeneral
Jump to latest
#1A. Mous
a.mous@shaw.ca

Hi,

Is there a function that would allow me to set the local time while the
server is running? I can't seem to find anything on this...

Thanks,
Peter

#2Bruno Wolff III
bruno@wolff.to
In reply to: A. Mous (#1)
Re: setting local time without restarting server

On Thu, May 13, 2004 at 12:56:48 -0600,
Anony Mous <A.Mous@shaw.ca> wrote:

Hi,

Is there a function that would allow me to set the local time while the
server is running? I can't seem to find anything on this...

You probably want to set the timezone, not the local time.
You can do that with something like:
SET TIMEZONE='EST5EDT';

#3A. Mous
a.mous@shaw.ca
In reply to: Bruno Wolff III (#2)
Re: setting local time without restarting server

Thanks, but I do want to set the system time.

It's actually for testing purposes. Our software looks to the db server to
obtain the local date and time, however, to test various cases we need to
fiddle with this value. I'd like to do it without having to first change
the system time, and then re-start the postmaster. Sorry, I should have
clarified this in my first e-mail.

-Peter

-----Original Message-----
From: Bruno Wolff III [mailto:bruno@wolff.to]
Sent: May 13, 2004 2:07 PM
To: Anony Mous
Cc: pgsql-general@postgresql.org
Subject: Re: [GENERAL] setting local time without restarting server

On Thu, May 13, 2004 at 12:56:48 -0600,
Anony Mous <A.Mous@shaw.ca> wrote:

Hi,

Is there a function that would allow me to set the local time while the
server is running? I can't seem to find anything on this...

You probably want to set the timezone, not the local time.
You can do that with something like:
SET TIMEZONE='EST5EDT';

#4Bruno Wolff III
bruno@wolff.to
In reply to: Bruno Wolff III (#2)
Re: setting local time without restarting server

On Thu, May 13, 2004 at 15:07:13 -0500,
Bruno Wolff III <bruno@wolff.to> wrote:

On Thu, May 13, 2004 at 12:56:48 -0600,
Anony Mous <A.Mous@shaw.ca> wrote:

Hi,

Is there a function that would allow me to set the local time while the
server is running? I can't seem to find anything on this...

You probably want to set the timezone, not the local time.
You can do that with something like:
SET TIMEZONE='EST5EDT';

Thinking about this some more; this only changes it for the session not
the default for new sessions.

Reading the documentation suggests that you can set the timezone in the
config file and sighup the postmaster to get it to reread the config file.
It might also be possible to change the underlying system's timezone
and do a sighup to have it pick up the correct timezone.

If the underlying system has the correct timezone, but for some reason has
the wrong time, you should be able to change its time. How you do that
varies a bit from system to system. Under *nix systems you usually use
the 'date' command (if you aren't using ntp). Under Linux, at least,
you also want to run setclock to set the hardware clock to the right
time so the time is still correct after the next reboot.

#5Tom Lane
tgl@sss.pgh.pa.us
In reply to: A. Mous (#3)
Re: setting local time without restarting server

Anony Mous <A.Mous@shaw.ca> writes:

Thanks, but I do want to set the system time.

You cannot do that from within Postgres, because it requires root
privileges.

I'd like to do it without having to first change
the system time, and then re-start the postmaster.

Who said anything about restarting the postmaster? Just set the system
time (eg, with date(1)).

regards, tom lane