База данных не существует postgresql

Я работаю над подключением БД Postgres к Django. Я создал БД через pgAdmin 4 под пользователем postgres. Я установил переменные окружения следующим образом

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.sqlite3',
        'NAME': BASE_DIR / 'db.sqlite3',
    }
}
try:
    if sys.argv[1:2] != ['test']:
        DATABASES = {
            'default': {
                'ENGINE': 'django.db.backends.postgresql',
                'HOST': env('PGHOST'),
                'USER': env('PGUSER'),
                'NAME': env('PGDATABASE'),
                'PASSWORD': env('PGPASSFILE'),
                'PORT': env('PGPORT'),
            }
        }
except:
    pass

с моим файлом .env, содержащим каждую переменную. Когда я пытаюсь перенести его через командную строку ubuntu, я получаю ошибку database <dbname> does not exist Я установил psycopg2 и pillow и установил local all postgres peer на local all postgres md5. Моя операционная система - windows 11, поэтому мне интересно, происходит ли это потому, что мой каталог проекта находится в ~/directory/to/path, а postgres и pgAdmin установлены в /etc/postgresql/ и /mnt/c/'Program Files'/PostgreSQL? Должен ли я переместить эти файлы из / в ~?

NOTE: Я выполнил psql canvasDB и получил обратно role "awilbur" does not exist

Если вы устанавливали postgresql через программу установки (что, как я предполагаю, является способом, поскольку вы работаете под Windows), вы могли помнить, что программа установки запрашивала у вас пароль. Если вы помните, попробуйте:

me@My-MacBook-Pro ~ [2]> psql -U postgres
Password for user postgres: 
psql (14.2, server 14.1)
Type "help" for help.

postgres=# CREATE DATABASE test;
CREATE DATABASE

Указав -U postgres, вы войдете в систему под пользователем по умолчанию, чей пароль по умолчанию - это пароль, введенный вами в программе установки.

Если нет, можно попробовать следующее: зайдите в Панель управления -> Административные инструменты -> Управление компьютером. В разделе "Локальные пользователи и группы" вы можете увидеть всех пользователей, созданных для вашей системы. Удалите "postgres" и переустановите PostgreSQL.

После того, как вы закончили, вы можете проверить:

postgres=# \l
                             List of databases
   Name    |  Owner   | Encoding | Collate | Ctype |   Access privileges   
-----------+----------+----------+---------+-------+-----------------------
 postgres  | postgres | UTF8     | C       | C     | 
 template0 | postgres | UTF8     | C       | C     | =c/postgres          +
           |          |          |         |       | postgres=CTc/postgres
 template1 | postgres | UTF8     | C       | C     | =c/postgres          +
           |          |          |         |       | postgres=CTc/postgres
 test      | postgres | UTF8     | C       | C     | 
(5 rows)
Вернуться на верх