Postgresql Postgres索引创建时间

Postgresql Postgres索引创建时间,postgresql,Postgresql,Postgres正在创建超过2天的简单索引。我在哪里可以看到日志或关于状态索引创建的信息?在这种情况出现之前,我已经创建了几次索引,花费了大约一个小时或更少的时间。我有大约5.5m行,执行下一个命令: CREATE INDEX collapse_url ON tablle (url, collapse) 有两种可能性: CREATE INDEX语句正在等待锁定 您应该能够在pg_stat_activity视图中看到这一点 如果这是您的问题,请结束所有并发的长时间运行事务(例如,使用pg\u t

Postgres正在创建超过2天的简单索引。我在哪里可以看到日志或关于状态索引创建的信息?在这种情况出现之前,我已经创建了几次索引,花费了大约一个小时或更少的时间。我有大约5.5m行,执行下一个命令:

CREATE INDEX collapse_url ON tablle (url, collapse)

有两种可能性:

  • CREATE INDEX
    语句正在等待锁定

    您应该能够在
    pg_stat_activity
    视图中看到这一点

    如果这是您的问题,请结束所有并发的长时间运行事务(例如,使用
    pg\u terminate\u backend

  • createindex
    语句确实需要很长的时间(不太可能有几百万行)

    在这种情况下,您可以通过在创建索引之前增加
    maintenance\u work\u mem
    来加快处理速度

  • 在最近的版本中,这方面有了相关的改进:

    • PostgreSQL v11引入了并行索引构建

    • PostgreSQL v12引入了查看
      pg\u stat\u progress\u create\u index
      来监控
      create index
      的进度

    • PostgreSQL v12还引入了
      并发创建索引
      ,以避免对表进行长时间的
      访问独占
      锁定


      • 有两种可能性:

      • CREATE INDEX
        语句正在等待锁定

        您应该能够在
        pg_stat_activity
        视图中看到这一点

        如果这是您的问题,请结束所有并发的长时间运行事务(例如,使用
        pg\u terminate\u backend

      • createindex
        语句确实需要很长的时间(不太可能有几百万行)

        在这种情况下,您可以通过在创建索引之前增加
        maintenance\u work\u mem
        来加快处理速度

      • 在最近的版本中,这方面有了相关的改进:

        • PostgreSQL v11引入了并行索引构建

        • PostgreSQL v12引入了查看
          pg\u stat\u progress\u create\u index
          来监控
          create index
          的进度

        • PostgreSQL v12还引入了
          并发创建索引
          ,以避免对表进行长时间的
          访问独占
          锁定


        首先,检查
        CREATE INDEX
        语句是否被另一个进程/事务阻塞:。请使用您的查找更新您的帖子首先,检查
        CREATE INDEX
        语句是否确实被另一个进程/事务阻止:。请用您的发现更新您的帖子