【问题标题】:Default isolation level for transaction (@atomic) with Django and PostgreSQL使用 Django 和 PostgreSQL 的事务 (@atomic) 的默认隔离级别
【发布时间】:2017-07-08 22:51:43
【问题描述】:

我想知道将 Django 与 PostgreSQL 数据库一起使用时的默认隔离级别是什么。 可序列化隔离? (https://www.postgresql.org/docs/9.1/static/transaction-iso.html#XACT-SERIALIZABLE)

有一个关于 MySQL (Django transaction isolation level in mysql & postgresql) 的讨论,但尽管它的名字似乎没有讨论 PostgreSQL

谢谢!

【问题讨论】:

    标签: django postgresql transactions atomic


    【解决方案1】:

    来自docs

    与 PostgreSQL 本身一样,Django 默认为 READ COMMITTED 隔离级别。

    【讨论】:

      【解决方案2】:

      可以使用这样的数据库设置来配置 Django:

      import psycopg2.extensions
      
      DATABASES = {
          # ...
          'OPTIONS': {
              'isolation_level': psycopg2.extensions.ISOLATION_LEVEL_SERIALIZABLE,
          },
      }
      

      文档 - https://docs.djangoproject.com/en/2.2/ref/databases/#isolation-level

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-08-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2018-10-23
        • 1970-01-01
        相关资源
        最近更新 更多