What is the default password for Postgres


WARNING: trust means exactly that. Anyone who can connect to the PostgreSQL server can control it. If you set trust mode that allows superusers like user postgres (or all users) to connect, they get total control of your PostgreSQL and can probably run shell commands too. You should usually only use it to change the password then restore the configuration back to the auth mode you were using before.


If you used an unattended installer script, the password will be in the script or associated config file.

Otherwise, treat it the same as if you lost/forgot the password rather than never knowing it:

  • Edit pg_hba.conf, setting the auth mode to trust instead of the default md5
  • In the Services control panel restart the PostgreSQL service
  • Connect with psql or PgAdmin or whatever
  • ALTER USER postgres PASSWORD 'mynewpassword';
  • Edit pg_hba.conf again and set the auth mode back to md5
  • Restart PostgreSQL again

pg_hba.conf is in your data directory. By default it'll be %PROGRAMFILES%\PostgreSQL\9.3\data.

To edit it you'll have to use the security tab to give yourself read/write permissions (via a UAC prompt). This might require you to set yourself as the owner of the file.


On unix systems it's more secure to prepend a

local all all peer

line to pg_hba.conf and then sudo -u postgres psql (assuming your PostgreSQL server runs as user postgres) to get an interactive psql session without using a password. That way you don't have to use trust.


[LINUX]

might work for windows too

After installing postgres follow following steps in order to setup password for default system account of Linux execute following in terminal:

user:~$ sudo -i -u postgres
postgres@user:~$ psql

after executing above two commands you will get into postgres shell

Execute this query in postgres shell:

postgres=# ALTER USER postgres PASSWORD 'mynewpassword';

your new password is 'mynewpassword' without quotes and now you can connect with external GUI tools like DBeaver


On initialisation you can access the DB as:

Username: postgres

Password: postgres