On Thu, 2006-11-05 at 18:44 +0200, Martijn van Oosterhout wrote: > On Thu, May 11, 2006 at 10:41:51AM -0600, Blair Lowe wrote: > > [root@www etc]# psql temp99 > > Welcome to psql 7.3.4, 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 > > > > temp99=# select oid from pg_class where relname = 'bbs_auth_access'; > > oid > > ------- > > 17736 > > (1 row) > > temp99=# \q > > [root@www etc]# pg_dump -s temp99 | grep 'CREATE.*bbs_auth_access' > > CREATE TABLE bbs_auth_access ( > > [root@www etc]# > > Eh? All you've proved here was that a table that is in that database > also appears in the dump. You need to show a case where the select > return no rows ie. the table doesn't exist in the database but does > exist in the dump. Thanks Martijn for the help! I think that you are misunderstanding the problem. pgdump exports data from other users that have tables granted to public. The table that I show above is one of them, and the owner (thanks to your great dba tutorial on oid) is bbs_auth_access, and not template1: select relname from pg_class where oid = 17736; relname ----------------- bbs_auth_access (1 row) phpbb_mainlandpc=> \q To access this user's table, I can be logged on as anyone, and that is expected in SQL when there are public grants. I am not expecting to get everyone else's stuff when I run pg_dump, only the stuff in their schema. TTYL, Blair.