8

My postgres yaml part looking like this:

postgres:
    container_name: 'postgres'
    image: postgres:10.1
    environment:
      - POSTGRES_USER=postgres
      - POSTGRES_PASSWORD=root
      - POSTGRES_DB=myids
    ports:
      - "5432:5432"
    networks:
      - app-network

Then when I am logging in with that credentials using HeidiSQL I cant see my database: enter image description here

Any ideas?

Update thanks to this answer I managed to find my database https://dba.stackexchange.com/a/1304 using this select:

SELECT datname FROM pg_database
WHERE datistemplate = false;

Now the question why HeidiSQL won't show that?

Sergino
  • 10,128
  • 30
  • 98
  • 159
  • Those are schemas, not databases - those are two very different concepts. With Postgres you connect to **one** database. Once you are connected, you can't switch to a different database. You can only access the schemas _inside_ that database. –  Nov 23 '17 at 11:57
  • HeidiSQL issues `SELECT nspname FROM pg_catalog.pg_namespace` to retrieve all schemata. And yes, HeidiSQL shows schemata, not databases. That's why the _Databas**e**_ setting in the session manager is not labelled _Databas**es**_ as in MySQL mode. – Anse Nov 23 '17 at 20:38

2 Answers2

12

We have to specify the database name in the connection manager, only then will it display the selected database. Please refer to the images below... enter image description here

enter image description hereenter image description hereenter image description here

There is no provision to view all the databases in PostgreSQL in HeidiSQL, but for MySQL the database name field is optional.

davmos
  • 9,324
  • 4
  • 40
  • 43
Cherry g
  • 246
  • 4
  • 14
0

Also make sure you don't have the star icon selected. Otherwise it will only show the tables marked as favorites