【问题标题】:django.db.utils.OperationalError: server closed the connection unexpectedlydjango.db.utils.OperationalError:服务器意外关闭了连接
【发布时间】:2017-03-31 02:18:19
【问题描述】:

无法解决是什么错误。

django.db.utils.OperationalError: server closed the connection unexpectedly
    This probably means the server terminated abnormally
    before or while processing the request.

当我运行以下任何命令时,我都会继续获取跟踪

  1. python manage.py makemigrations
  2. python manage.py runserver
Unhandled exception in thread started by <function wrapper at     0x0000000003DAC4A8>
Traceback (most recent call last): File "C:\Python27\lib\site-packages\django\utils\autoreload.py", line 226, in wrapper fn(*args, **kwargs)
    File "C:\Python27\lib\site packages\django\core\management\commands\runserver.py", line 124, in inner_run
    self.check_migrations()
  File "C:\Python27\lib\site-packages\django\core\management\base.py", line 437, in check_migrations
    executor = MigrationExecutor(connections[DEFAULT_DB_ALIAS])
    File "C:\Python27\lib\site-packages\django\db\migrations\executor.py", line 20, in __init__
    self.loader = MigrationLoader(self.connection)
    File "C:\Python27\lib\site-packages\django\db\migrations\loader.py", line 52, in __init__
    self.build_graph()
    File "C:\Python27\lib\site-packages\django\db\migrations\loader.py", line 203, in build_graph
    self.applied_migrations = recorder.applied_migrations()
    File "C:\Python27\lib\site-packages\django\db\migrations\recorder.py", line 65, in applied_migrations
    self.ensure_schema()
    File "C:\Python27\lib\site-packages\django\db\migrations\recorder.py", line 52, in ensure_schema
    if self.Migration._meta.db_table in self.connection.introspection.table_names(self.connection.cursor()):
    File "C:\Python27\lib\site-packages\django\db\backends\base\base.py", line 231, in cursor
    cursor = self.make_debug_cursor(self._cursor())
    File "C:\Python27\lib\site-packages\django\db\backends\base\base.py", line 204, in _cursor
    self.ensure_connection()
    File "C:\Python27\lib\site-packages\django\db\backends\base\base.py", line 199, in ensure_connection
    self.connect()
    File "C:\Python27\lib\site-packages\django\db\utils.py", line 94, in __exit__
    six.reraise(dj_exc_type, dj_exc_value, traceback)
    File "C:\Python27\lib\site-packages\django\db\backends\base\base.py", line 199, in ensure_connection
    self.connect()
    File "C:\Python27\lib\site-packages\django\db\backends\base\base.py", line 171, in connect
    self.connection = self.get_new_connection(conn_params)
    File "C:\Python27\lib\site-packages\django\db\backends\postgresql\base.py", line 176, in get_new_connection
    connection = Database.connect(**conn_params)
    File "C:\Python27\lib\site-packages\psycopg2\__init__.py", line 164, in connect
    conn = _connect(dsn, connection_factory=connection_factory, async=async)
django.db.utils.OperationalError: server closed the connection unexpectedly
        This probably means the server terminated abnormally
        before or while processing the request.

提前致谢。

【问题讨论】:

  • 你能显示你的数据库设置吗?
  • DATABASES = { 'default': { 'ENGINE': 'django.db.backends.postgresql_psycopg2', 'NAME': 'dab_name', 'USER': 'my_user_name', 'PASSWORD': 'my_password', 'HOST': 'ec2-54-225-242.compute-1.amazonaws.com', 'PORT': '5432', } }
  • 这个错误似乎也发生在长时间运行的任务(4h)的开始和结束时使用数据库操作。知道如何克服这个问题吗?

标签: python django postgresql


【解决方案1】:

这通常意味着您的 PostgreSQL 服务器运行不正常。您可能需要通过

重新启动它

Linux

sudo /etc/init.d/postgresql restart

窗户

sc stop postgresql
sc start postgresql

Mac OS X

How to start PostgreSQL server on Mac OS X?

如果重启解决了,请注意之前服务器故障的根本原因仍然需要调查。

【讨论】:

    【解决方案2】:

    我再次卸载和安装 postgresql 解决了这个问题。

    在 Mac 上

    卸载:

    brew uninstall --force postgres
    

    安装:

    brew install postgres
    

    PS:更改 Linux 或 Windows 的命令。

    之后,运行 makemigrations 并迁移。

    【讨论】:

      【解决方案3】:

      当父进程中建立的进程分叉和连接在子进程中不起作用时发生。

      我使用 huggingface/tokenizersBERT 获取句子嵌入,然后将它们插入 Postgres 数据库。首先建立数据库连接,然后分叉器生成相同的django.db.utils.OperationalError

      我解决了by disablingTOKENIZER_PARALLELISM。尽管对于您的问题,升级到更高版本的 Django 可能会有所帮助,如 here 所述。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2018-02-20
        • 2012-09-29
        • 1970-01-01
        • 1970-01-01
        • 2022-11-30
        相关资源
        最近更新 更多