Nano Hash - криптовалюты, майнинг, программирование

psycopg2.OperationalError: FATAL: ошибка аутентификации пароля для пользователя nouman

P.S. ЭТА ПРОБЛЕМА БЫЛА РЕШЕНА (Я ИСПОЛЬЗОВАЛ НЕПРАВИЛЬНЫЙ НОМЕР ПОРТА)

Я пытаюсь настроить Postgresql с помощью django 2.2 в ОС WINDOWS, но в итоге получаю ошибку. Вот что я сделал для настройки postgres для своего проекта:

  1. Установил последнюю версию postgresql со всей конфигурацией по умолчанию и дал свой пароль
  2. Создал базу данных в SQL Shell (psql), выполнив
  • СОЗДАТЬ ПОЛЬЗОВАТЕЛЯ nouman;

  • СОЗДАТЬ БАЗУ ДАННЫХ ВЛАДЕЛЕЦ блога nouman;

  1. Затем я обновил файл settings.py для базы данных следующим образом:
DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.postgresql',
        'NAME': 'blog',
        'USER': 'nouman',
        'PASSWORD': 'my password',
        'HOST': 'localhost',
        'PORT': '',
    }
}
  1. Я установил psycopg2 командой: pip install psycopg2.
  2. Но когда я обновляю базу данных с помощью миграции python manage.py, она дает эту ошибку:
Traceback (most recent call last):
  File "C:\Users\nouma\Desktop\djano2byexample\myenv\lib\site-packages\django\db\backends\base\base.py", line 217, in ensure_connection
    self.connect()
  File "C:\Users\nouma\Desktop\djano2byexample\myenv\lib\site-packages\django\db\backends\base\base.py", line 195, in connect
    self.connection = self.get_new_connection(conn_params)
  File "C:\Users\nouma\Desktop\djano2byexample\myenv\lib\site-packages\django\db\backends\postgresql\base.py", line 178, in get_new_connection
    connection = Database.connect(**conn_params)
  File "C:\Users\nouma\Desktop\djano2byexample\myenv\lib\site-packages\psycopg2\__init__.py", line 126, in connect
    conn = _connect(dsn, connection_factory=connection_factory, **kwasync)
psycopg2.OperationalError: FATAL:  password authentication failed for user "nouman"


The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "manage.py", line 21, in <module>
    main()
  File "manage.py", line 17, in main
    execute_from_command_line(sys.argv)
  File "C:\Users\nouma\Desktop\djano2byexample\myenv\lib\site-packages\django\core\management\__init__.py", line 381, in execute_from_command_line
    utility.execute()

-----------snip--------

  File "C:\Users\nouma\Desktop\djano2byexample\myenv\lib\site-packages\psycopg2\__init__.py", line 126, in connect
    conn = _connect(dsn, connection_factory=connection_factory, **kwasync)
django.db.utils.OperationalError: FATAL:  password authentication failed for user "nouman"

Ответы:


1

Вам нужно создать пользователя БД с помощью команды

CREATE ROLE username WITH LOGIN PASSWORD 'quoted password';
CREATE DATABASE databasename;
GRANT ALL PRIVILEGES ON DATABASE databasename TO username;

прочитайте здесь

17.01.2020
  • Я думаю, что это для Mac OS, но я использую Windows. 17.01.2020
  • в любом случае. Вы создали пользователя командой CREATE USER nouman;. поэтому у него нет пароля для входа в систему. Попробуйте использовать команду из моего ответа 17.01.2020
  • Спасибо за помощь, но, будучи новичком, я совершал глупую простую ошибку, которая теперь исправлена. 17.01.2020
  • @NoumanMalik Можете ли вы указать, что вы сделали, чтобы решить проблему? В чем была глупая ошибка? Спасибо! 07.05.2020
  • Я использовал неправильный номер порта 16.12.2020

  • 2

    Установка PostgresSQL по умолчанию всегда включает суперпользователя postgres. Первоначально вы должны подключиться к PostgreSQL как пользователь postgres, пока не создадите других пользователей (которые также называются ролями).

    Чтобы создать пользователя PostgreSQL, выполните следующие действия:

    1. В командной строке введите следующую команду от имени пользователя root сервера: su - postgres

    2. Теперь вы можете запускать команды как суперпользователь PostgreSQL. Чтобы создать пользователя, введите следующую команду: createuser --interactive --pwprompt

    3. Следуйте инструкциям в командной строке. PostgreSQL создает пользователя с указанными вами настройками.

    17.01.2020
    Новые материалы

    Кластеризация: более глубокий взгляд
    Кластеризация — это метод обучения без учителя, в котором мы пытаемся найти группы в наборе данных на основе некоторых известных или неизвестных свойств, которые могут существовать. Независимо от..

    Как написать эффективное резюме
    Предложения по дизайну и макету, чтобы представить себя профессионально Вам не позвонили на собеседование после того, как вы несколько раз подали заявку на работу своей мечты? У вас может..

    Частный метод Python: улучшение инкапсуляции и безопасности
    Введение Python — универсальный и мощный язык программирования, известный своей простотой и удобством использования. Одной из ключевых особенностей, отличающих Python от других языков, является..

    Как я автоматизирую тестирование с помощью Jest
    Шутка для победы, когда дело касается автоматизации тестирования Одной очень важной частью разработки программного обеспечения является автоматизация тестирования, поскольку она создает..

    Работа с векторными символическими архитектурами, часть 4 (искусственный интеллект)
    Hyperseed: неконтролируемое обучение с векторными символическими архитектурами (arXiv) Автор: Евгений Осипов , Сачин Кахавала , Диланта Хапутантри , Тимал Кемпития , Дасвин Де Сильва ,..

    Понимание расстояния Вассерштейна: мощная метрика в машинном обучении
    В обширной области машинного обучения часто возникает необходимость сравнивать и измерять различия между распределениями вероятностей. Традиционные метрики расстояния, такие как евклидово..

    Обеспечение масштабируемости LLM: облачный анализ с помощью AWS Fargate и Copilot
    В динамичной области искусственного интеллекта все большее распространение получают модели больших языков (LLM). Они жизненно важны для различных приложений, таких как интеллектуальные..