Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/linux/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在postgresql中删除表_Sql_Linux_Postgresql_Ubuntu - Fatal编程技术网

如何在postgresql中删除表

如何在postgresql中删除表,sql,linux,postgresql,ubuntu,Sql,Linux,Postgresql,Ubuntu,到目前为止,我的服务器上安装了一个postgresql,运行良好。但是现在有一个表(所有其他表都可以正常工作),我无法通过pgadmin3或drop打开它 我已尝试重新启动服务器。没有帮助。我还尝试从服务器上的命令行中删除带有DROP table的表。只是卡住了。我已经执行了这个命令,在过去的一个小时里它一直挂在控制台上 我不知道该怎么办。数据目录中可能有我可以删除的文件吗?最可能的解释是:其他一些打开的事务在表上持有独占锁 您正在使用pgAdmin,因此可以与进行检查。“活动”窗格列出所有当前

到目前为止,我的服务器上安装了一个postgresql,运行良好。但是现在有一个表(所有其他表都可以正常工作),我无法通过pgadmin3或drop打开它

我已尝试重新启动服务器。没有帮助。我还尝试从服务器上的命令行中删除带有DROP table的表。只是卡住了。我已经执行了这个命令,在过去的一个小时里它一直挂在控制台上


我不知道该怎么办。数据目录中可能有我可以删除的文件吗?

最可能的解释是:其他一些打开的事务在表上持有独占锁

您正在使用pgAdmin,因此可以与进行检查。“活动”窗格列出所有当前连接。例如,每个打开的SQL窗口都有一个(或多个)列表。寻找长时间运行的连接

您还可以尝试发出一个
下拉表
,并检查此列表。运气好的话,你会看到是什么阻碍了它。一旦您确定了麻烦制造者并确保不需要它,您就可以终止该过程。由于设置不正确,可能正在进行真空吸尘


或者某些东西严重损坏。

您可以尝试转储数据库,看看是否有效?另外,还可以查看和日志消息选项。将其更改为“调试”,并查看在尝试删除表时发生的情况。

对于Windows用户。尝试按照以下步骤重新启动Postgresql:开始->运行->(然后键入:)services.msc。选择本地postgresql Server,然后按“重新启动”。现在,继续并尝试删除要删除的数据库或表(通过pgAdmin)。希望能有帮助。

您需要更准确地回答。如果
drop table
只是挂起,则需要更多的详细信息,而询问pg黑客或pg bug列表是更好的方式。