Le mer. 4 sept. 2019 à 18:51, James B. Byrne <byrnejb@xxxxxxxxxxxxx> a écrit :
I was experimenting with creating a copy of an existing database from
a pg_dump sql backup file. I made an misake in failing to delimit an
environment variable and in consequence I issued this command as user
postgres:
I should have used:
gunzip < "$APP_DBNAME".pgsql.gz | pg_restore --create --clean
--user=postgres --dbname="$APP_DBNAME"_copy && vacuumdb
--user=postgres --full --analyze "$APP_DBNAME"_copy
But, instead I did this:
gunzip < $APP_DBNAME.pgsql.gz | pg_restore --create --clean
--user=postgres --dbname=$APP_DBNAME_copy && vacuumdb
--user=postgres --full --analyze $APP_DBNAME_copy
which resulted in this:
gunzip < hll_redmine.pgsql.gz | pg_restore --create --clean
--user=postgres --dbname= && vacuumdb --user=postgres --full
--analyze
Which caused the postgres database to be overwritten with
hll_redmine.pgsql.gz. Is there an easy way to get this back or do I
have to reinitialise the whole thing?
Well, you can connect to some database (but not postgres), drop the postgres one, and create it again.
--
Guillaume.