BUG #14636: pg_dumpall -d
The following bug has been logged on the website:
Bug reference: 14636
Logged by: Adrian Klaver
Email address: adrian.klaver@aklaver.com
PostgreSQL version: Unsupported/Unknown
Operating system: Linux openSUSE Leap 42.2
Description:
Pulled the nightly build of Postgres 10:
2017-04-30 20:30:26
Testing dump/restore from a 9.6 instance to the 10 instance. Tried dumping
the globals using pg_dumpall and connected using:
aklaver@tito:~> /usr/local/pgsql10/bin/pg_dumpall -g -d postgres -U postgres
-p 5432 -f production_globals.sql
pg_dumpall: missing "=" after "postgres" in connection info string
This not what I usually do and when I used -l it worked as expected. The bug
is that the docs say:
https://www.postgresql.org/docs/devel/static/app-pg-dumpall.html
"-d connstr
--dbname=connstr
Specifies parameters used to connect to the server, as a connection
string. See Section 33.1.1 for more information.
The option is called --dbname for consistency with other client
applications, but because pg_dumpall needs to connect to many databases,
database name in the connection string will be ignored. Use -l option to
specify the name of the database used to dump global objects and to discover
what other databases should be dumped.
"
Instead an error is raised.
--
Sent via pgsql-bugs mailing list (pgsql-bugs@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-bugs
On Mon, May 1, 2017 at 7:08 AM, <adrian.klaver@aklaver.com> wrote:
Pulled the nightly build of Postgres 10:
2017-04-30 20:30:26
Testing dump/restore from a 9.6 instance to the 10 instance. Tried dumping
the globals using pg_dumpall and connected using:
aklaver@tito:~> /usr/local/pgsql10/bin/pg_dumpall -g -d postgres -U postgres
-p 5432 -f production_globals.sql
pg_dumpall: missing "=" after "postgres" in connection info stringThis not what I usually do and when I used -l it worked as expected. The bug
is that the docs say:
https://www.postgresql.org/docs/devel/static/app-pg-dumpall.html"-d connstr
--dbname=connstrSpecifies parameters used to connect to the server, as a connection
string. See Section 33.1.1 for more information.The option is called --dbname for consistency with other client
applications, but because pg_dumpall needs to connect to many databases,
database name in the connection string will be ignored. Use -l option to
specify the name of the database used to dump global objects and to discover
what other databases should be dumped.
"Instead an error is raised.
The documentation and the behavior look correct to me. You did not
specify a correct connection string using -d, and just used a database
name. If you want to have a database name ignored in the connection
string defined by -d, you need to use "dbname=postgres".
--
Michael
--
Sent via pgsql-bugs mailing list (pgsql-bugs@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-bugs
On 04/30/2017 10:45 PM, Michael Paquier wrote:
On Mon, May 1, 2017 at 7:08 AM, <adrian.klaver@aklaver.com> wrote:
Pulled the nightly build of Postgres 10:
2017-04-30 20:30:26
Testing dump/restore from a 9.6 instance to the 10 instance. Tried dumping
the globals using pg_dumpall and connected using:
aklaver@tito:~> /usr/local/pgsql10/bin/pg_dumpall -g -d postgres -U postgres
-p 5432 -f production_globals.sql
pg_dumpall: missing "=" after "postgres" in connection info stringThis not what I usually do and when I used -l it worked as expected. The bug
is that the docs say:
https://www.postgresql.org/docs/devel/static/app-pg-dumpall.html"-d connstr
--dbname=connstrSpecifies parameters used to connect to the server, as a connection
string. See Section 33.1.1 for more information.The option is called --dbname for consistency with other client
applications, but because pg_dumpall needs to connect to many databases,
database name in the connection string will be ignored. Use -l option to
specify the name of the database used to dump global objects and to discover
what other databases should be dumped.
"Instead an error is raised.
The documentation and the behavior look correct to me. You did not
specify a correct connection string using -d, and just used a database
name. If you want to have a database name ignored in the connection
string defined by -d, you need to use "dbname=postgres".
Aah, I was not paying attention and did not realize that -d changed
context. Thanks for clearing this up for me. Ignore the report.
--
Adrian Klaver
adrian.klaver@aklaver.com
--
Sent via pgsql-bugs mailing list (pgsql-bugs@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-bugs