Re: 回复: 回复: BUG #16101: tables in the DB is not available after pg_restore

From: Tomas Vondra <tomas(dot)vondra(at)2ndquadrant(dot)com>
To: 唯一★ <270246512(at)qq(dot)com>
Cc: pgsql-bugs <pgsql-bugs(at)lists(dot)postgresql(dot)org>
Subject: Re: 回复: 回复: BUG #16101: tables in the DB is not available after pg_restore
Date: 2019-11-13 15:18:03
Message-ID: 20191113151803.6ye47vh3vyp5ufah@development
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-bugs

On Wed, Nov 13, 2019 at 10:43:20PM +0800, 唯一★ wrote:
>hi,&nbsp;
>
>
>The restore command is "pg_dump -h 127.0.0.1 -U postgres -d cmdb -p 5432 -Fc -f bk_1"
>Here are reproduce steps.
>1. login in the postgres DB with super user postgres and create DB
>&nbsp;CREATE DATABASE cmdb OWNER cm WITH TEMPLATE = template0;
>&nbsp;GRANT ALL PRIVILEGES ON DATABASE cmdb to cm;
>
>
>
>2.pop the data to DB.
>&nbsp;pgbench -i -h 127.0.01 -U cm -s 20 -d cmdb
>
>
>3.use the pg_dump to backup the data.
>&nbsp;pg_dump -h 127.0.0.1 -U postgres -d cmdb -p 5432 -Fc -f bk_1
>4.take the restore via pg_restore.
>&nbsp;pg_restore -h 127.0.0.1 -U postgres -d cmdb bk_1 -c -v
>

Works just fine for me:

[user(at)development ~]$ pg_ctl -D tmp/data init
...
[user(at)development ~]$ pg_ctl -D tmp/data -l pg.log start
waiting for server to start.... done
server started
[user(at)development ~]$ createdb cmdb
[user(at)development ~]$ pgbench -i -s 1 cmdb
dropping old tables...
NOTICE: table "pgbench_accounts" does not exist, skipping
NOTICE: table "pgbench_branches" does not exist, skipping
NOTICE: table "pgbench_history" does not exist, skipping
NOTICE: table "pgbench_tellers" does not exist, skipping
creating tables...
generating data...
100000 of 100000 tuples (100%) done (elapsed 0.06 s, remaining 0.00 s)
vacuuming...
creating primary keys...
done.
[user(at)development ~]$ pg_dump -d cmdb -p 5432 -Fc -f bk_1
[user(at)development ~]$ pg_restore -d cmdb2 bk_1 -c -v
pg_restore: connecting to database for restore
...
pg_restore: warning: errors ignored on restore: 7
[user(at)development ~]$ psql cmdb2
psql (12.1)
Type "help" for help.

cmdb2=# \d
List of relations
Schema | Name | Type | Owner
--------+------------------+-------+-------
public | pgbench_accounts | table | user
public | pgbench_branches | table | user
public | pgbench_history | table | user
public | pgbench_tellers | table | user
(4 rows)

Are you sure you're running the pg_restore on the right machine and not
on the same system where you did the pg_dump? Don't you have some
per-user search_path setting applied using ALTER USER?

regards

--
Tomas Vondra http://www.2ndQuadrant.com
PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services

In response to

Responses

Browse pgsql-bugs by date

  From Date Subject
Next Message Andres Freund 2019-11-13 15:48:37 Re: REINDEX CONCURRENTLY unexpectedly fails
Previous Message Tom Lane 2019-11-13 15:07:03 Re: Random crashes - segmentation fault