Simple list tables question

Started by Mihai Tanasescuabout 22 years ago2 messagesgeneral
Jump to latest
#1Mihai Tanasescu
Mihai.Tanasescu@skyraven.pcnet.ro

Hello,

I've been a mysql user for about 2 years and I decided to try Postgre
SQL out.

I have the following problem that I'm trying to figure out:

- in mysql as user root I can connect to any databases not owned by
myself and I can list the tables they contain
- in postgre I have created another database owned by user "bbstatus"
If I login with user bbstatus to database bbstatus then I can do a
"\dt" and show the tables it contains but if I login with user postgres
which is a superuser and I try a "\dt" I get no results.

/usr/local/pgsql/bin/psql -U bbstatus bbstatus
Welcome to psql 7.4.2, the PostgreSQL interactive terminal.

Type: \copyright for distribution terms
\h for help with SQL commands
\? for help on internal slash commands
\g or terminate with semicolon to execute query
\q to quit

bbstatus=> \dt
List of relations
Schema | Name | Type | Owner
----------+--------------------------------+-------+----------
bbstatus | acct_clientip | table | bbstatus
bbstatus | acct_clients_and_filters | table | bbstatus

/usr/local/pgsql/bin/psql -U postgres bbstatus
Welcome to psql 7.4.2, the PostgreSQL interactive terminal.

Type: \copyright for distribution terms
\h for help with SQL commands
\? for help on internal slash commands
\g or terminate with semicolon to execute query
\q to quit

bbstatus=# \dt
No relations found.

Isn't the postgres user the same as the root user from mysql ?
I mean there must be a user that has enough rights by default to list
tables in any databases ( I don't like granting myself right for every
database someone creates)

#2Ron St-Pierre
rstpierre@syscor.com
In reply to: Mihai Tanasescu (#1)
Re: [NOVICE] Simple list tables question

Mihai Tanasescu wrote:

Hello,

I've been a mysql user for about 2 years and I decided to try Postgre
SQL out.

I have the following problem that I'm trying to figure out:

- in mysql as user root I can connect to any databases not owned by
myself and I can list the tables they contain
- in postgre I have created another database owned by user "bbstatus"
If I login with user bbstatus to database bbstatus then I can do a
"\dt" and show the tables it contains but if I login with user
postgres which is a superuser and I try a "\dt" I get no results.

/usr/local/pgsql/bin/psql -U bbstatus bbstatus
Welcome to psql 7.4.2, the PostgreSQL interactive terminal.

Type: \copyright for distribution terms
\h for help with SQL commands
\? for help on internal slash commands
\g or terminate with semicolon to execute query
\q to quit

bbstatus=> \dt
List of relations
Schema | Name | Type | Owner
----------+--------------------------------+-------+----------
bbstatus | acct_clientip | table | bbstatus
bbstatus | acct_clients_and_filters | table | bbstatus

/usr/local/pgsql/bin/psql -U postgres bbstatus
Welcome to psql 7.4.2, the PostgreSQL interactive terminal.

Type: \copyright for distribution terms
\h for help with SQL commands
\? for help on internal slash commands
\g or terminate with semicolon to execute query
\q to quit

bbstatus=# \dt
No relations found.

This is looking for tables in your default schema, which is 'public'. If
you want tables in the bbstatus schema listed you have to tell it so:
bbstatus=# \dt bbstatus.
Note that you need to include the period at the end.

Isn't the postgres user the same as the root user from mysql ?
I mean there must be a user that has enough rights by default to list
tables in any databases ( I don't like granting myself right for every
database someone creates)

---------------------------(end of broadcast)---------------------------
TIP 1: subscribe and unsubscribe commands go to majordomo@postgresql.org

Ron