Low OIDs (< 16384) when creating databases in single user mode
When creating a new database using the following script:
PGBINDIR="/opt/homebrew/Cellar/postgresql@16/16.9/bin/"
rm -rf /tmp/db
"$PGBINDIR/initdb" -U postgres -D /tmp/db --auth-local=trust
--encoding 'UTF-8' --locale='C'
"$PGBINDIR/postgres" --single -D /tmp/db postgres <<HERE
CREATE DATABASE test;
select oid,datname from pg_database;
HERE
The id 14022 is assigned. This then confuses pgAdmin which expects
databases to have an ID >= 16384 (unless named postgres/edb)
Am I wrong in creating the database this way? Or is pgAdmin wrong in
assuming ids have to be >=16384 ?
Is there a way to ensure new IDs are in the usual range when starting
in in single user mode?
Arnold Hendriks <unilynx@gmail.com> writes:
Is there a way to ensure new IDs are in the usual range when starting
in in single user mode?
No. Start the DB in normal mode, then create objects that you
want to be considered user-defined.
regards, tom lane