web-dev-qa-db-fra.com

django.db.utils.OperationalError Impossible de se connecter au serveur

Je ne sais pas comment résoudre ce problème

Je ne sais pas pourquoi j'obtiens cette erreur lorsque j'essaie de runserver:

Performing system checks...

System check identified no issues (0 silenced).
Unhandled exception in thread started by <function wrapper at 0x1085589b0>
Traceback (most recent call last):
  File "/Library/Python/2.7/site-packages/Django/utils/autoreload.py", line 222, in wrapper
    fn(*args, **kwargs)
  File "/Library/Python/2.7/site-packages/Django/core/management/commands/runserver.py", line 107, in inner_run
    self.check_migrations()
  File "/Library/Python/2.7/site-packages/Django/core/management/commands/runserver.py", line 159, in check_migrations
    executor = MigrationExecutor(connections[DEFAULT_DB_ALIAS])
  File "/Library/Python/2.7/site-packages/Django/db/migrations/executor.py", line 17, in __init__
    self.loader = MigrationLoader(self.connection)
  File "/Library/Python/2.7/site-packages/Django/db/migrations/loader.py", line 49, in __init__
    self.build_graph()
  File "/Library/Python/2.7/site-packages/Django/db/migrations/loader.py", line 184, in build_graph
    self.applied_migrations = recorder.applied_migrations()
  File "/Library/Python/2.7/site-packages/Django/db/migrations/recorder.py", line 59, in applied_migrations
    self.ensure_schema()
  File "/Library/Python/2.7/site-packages/Django/db/migrations/recorder.py", line 49, in ensure_schema
    if self.Migration._meta.db_table in self.connection.introspection.get_table_list(self.connection.cursor()):
  File "/Library/Python/2.7/site-packages/Django/db/backends/__init__.py", line 165, in cursor
    cursor = self.make_debug_cursor(self._cursor())
  File "/Library/Python/2.7/site-packages/Django/db/backends/__init__.py", line 138, in _cursor
    self.ensure_connection()
  File "/Library/Python/2.7/site-packages/Django/db/backends/__init__.py", line 133, in ensure_connection
    self.connect()
  File "/Library/Python/2.7/site-packages/Django/db/utils.py", line 94, in __exit__
    six.reraise(dj_exc_type, dj_exc_value, traceback)
  File "/Library/Python/2.7/site-packages/Django/db/backends/__init__.py", line 133, in ensure_connection
    self.connect()
  File "/Library/Python/2.7/site-packages/Django/db/backends/__init__.py", line 122, in connect
    self.connection = self.get_new_connection(conn_params)
  File "/Library/Python/2.7/site-packages/Django/db/backends/postgresql_psycopg2/base.py", line 134, in get_new_connection
    return Database.connect(**conn_params)
  File "/Library/Python/2.7/site-packages/psycopg2/__init__.py", line 164, in connect
    conn = _connect(dsn, connection_factory=connection_factory, async=async)
Django.db.utils.OperationalError: could not connect to server: Connection refused
        Is the server running on Host "127.0.0.1" and accepting
        TCP/IP connections on port 5432?

Lorsque j'essaie de me connecter à postgres:

psql: could not connect to server: No such file or directory
        Is the server running locally and accepting
        connections on Unix domain socket "/tmp/.s.PGSQL.5432"?

settings.py:

DATABASES = {
    'default': {
        'ENGINE': 'Django.db.backends.postgresql_psycopg2',
        'NAME': 'beerad',
        'USER': 'bli1',
        'PASSWORD': '',
        'Host': '127.0.0.1',
        'PORT': '5432',
    }
}
23
Liondancer

Il peut y avoir quelques problèmes:

  1. PostgreSQL n'est pas en cours d'exécution. Vérifiez-le avec Sudo service postgresql status
  2. Votre PostgresSQl ne fonctionne pas sur le port 5432. Vous pouvez le vérifier en tapant Sudo netstat -nl | grep postgres

  3. Vous avez quelque chose de mal à essayer de vous connecter à votre base de données comme le nom d'utilisateur, le mot de passe ou le nom de la base de données. Vérifiez que ce sont les postgres qui vous demandent de le connecter et que c'est le nom de base de données auquel vous souhaitez accéder.

  4. Problèmes avec postmaster.pid dans postgres. Cela peut se produire en raison d'un arrêt mal effectué. Cela permet de rappeler un pid vivant qui ne permet pas à votre serveur de démarrer. Pour y remédier, vous devez:

     * rm /usr/local/var/postgres/postmaster.pid 
     * pg_resetxlog -f /usr/local/var/postgres
    

    Après cela, il devrait fonctionner correctement si vous faites le runserver de postgres

Aide sous Mac OSX: Comment démarrer le serveur PostgreSQL sur Mac OS X?

38
Ricardo Burillo

Dans mon cas, tout était bien configuré et Postgres avait le bon port, PostgreSQL fonctionnait normalement, mais le port 5432 était partagé avec phppgadmin, je pouvais accéder au phppgadmin qui me donne un accès Web au serveur de base de données Postgres, mais mon Django l'application ne fonctionnait pas, elle retournerait une erreur de connexion refusée. j'ai donc changé le numéro de port sur le fichier de configuration phppgadmin (/etc/phppgadmin/config.inc.php) à 5433 de 5432 et tout a bien fonctionné.

2
Aldo Okware

Pour Windows

Accédez à la barre de recherche et écrivez simplement "Open psql "et appuyez sur Entrée.

Une fois l'écran ouvert, relancez Django project.

2
Abdul Majeed

Essayez de tuer tous les processus postgres. Im sur un MAC et cette solution que j'ai trouvée sur le forum Ubuntus fonctionne vraiment.

https://askubuntu.com/questions/547434/how-to-nicely-stop-all-postgres-processesenter image description here

2
Jcc.Sanabria

Accédez à l'instance aws -> groupes de sécurité -> source -> entrant -> :: 0

0
Ankush Sahu

La commande suivante fonctionne pour moi (Windows) -

pg_ctl -D "C:\Program Files\PostgreSQL\11\data" restart

Ensuite, exécutez à nouveau le serveur-

python manage.py runserver
0
Leena Bhandari