On Thu, Mar 30, 2006 at 05:20:00PM +0530, Pradeep Sharma wrote: > Thanks for the reply. But I guess there is some communication gap between > me and you regarding this topic. As I understood from your reply is, you > are talking about the date of Postgres setup/installation/upgrade.
No, I was talking about the creation time of a particular database. > Suppose I created a new database using the command: > > CREATE DATABASE <database_name> > > I want to know how can I get created date of the above database. As I mentioned, unless you logged the CREATE DATABASE statement I don't think the creation date is stored anywhere, but you could look at the modification times of the oldest files in the database's directory. For example, one of my databases is named test. I can find that database's oid by querying pg_database: test=> SELECT oid FROM pg_database WHERE datname = 'test'; oid ------- 16388 (1 row) I then list the files in that database's directory, sorted by time: % ls -lt $PGDATA/base/16388 | tail -2 -rw------- 1 postgres postgres 4 Dec 6 09:39 PG_VERSION -rw------- 1 postgres postgres 0 Dec 6 09:39 1248 >From this output I infer that the test database was created on 6 Dec. Most files in the directory are susceptible to being modified but I don't think anything touches PG_VERSION, so its modification time should reflect the database creation time unless something at the OS level modifies it. Try a command like the following: % ls -lt $PGDATA/base/*/PG_VERSION You should see that each database has a copy of this file and that each file has a different modification time (some might be within a few seconds of each other if databases were created around the same time, such as during a restore). Is this not what you're looking for? -- Michael Fuhr ---------------------------(end of broadcast)--------------------------- TIP 4: Have you searched our list archives? http://archives.postgresql.org