It is possible to "simple way" to check on the database is totally new and does not have modifications? When I am mentioning to a different database I am talking about a lately produced database (e.g. create database newdb) Possibly using psql to complete some SQL statement to check on information in pg_catalog
Thanks ahead of time.
I believe that easiest strategy is to check sql dump of both databases (implicit template is template1):
pg_dump -Fp -f templatedb.sql template1 pg_dump -Fp -f mydb.sql mydb diff templatedb.sql mydb.sql
Observe that template1 db features its own comment:
COMMENT ON DATABASE template1 IS 'Default template database';
Without more analysis, We highly recommend the following query
SELECT n.nspname as "Schema", c.relname as "Name", CASE c.relkind WHEN 'r' THEN 'table' WHEN 'v' THEN 'view' WHEN 'i' THEN 'index' WHEN 'S' THEN 'sequence' WHEN 's' THEN 'special' END as "Type", pg_catalog.pg_get_userbyid(c.relowner) as "Owner" FROM pg_catalog.pg_class c LEFT JOIN pg_catalog.pg_namespace n ON n.oid = c.relnamespace WHERE c.relkind IN ('r','v','S','') AND n.nspname <> 'pg_catalog' AND n.nspname <> 'information_schema' AND n.nspname !~ '^pg_toast' AND pg_catalog.pg_table_is_visible(c.oid) ORDER BY 1,2;
This is actually the query that psql uses to show the items in the
\d command. If caused by this question is certainly not, compared to database doesn't have tables, sights,... I suppose that en empty database is an indication of a recently produced database. Observe that the end result in the query above excludes
pg_catalog, so alterations in configurations or similar won't be came back.