我有一个 Posgresql 数据库(我是所有者),我想删除它并从转储中重新创建它。
问题是,有几个应用程序(两个网站,rails 和 perl)定期访问数据库。所以我收到“其他用户正在访问数据库”错误。
我读过一种可能性是获取所涉及进程的pid并单独杀死它们。如果可能的话,我想做一些更清洁的事情。
Phppgadmin 似乎做了我想做的事:我可以使用它的 Web 界面删除模式,即使网站处于打开状态,也不会出错。所以我正在研究它的代码是如何工作的。但是,我不是 PHP 专家。
我试图了解 phppgadmin 代码,以了解它是如何做到的。我发现了一行(Schemas.php 中的 257),上面写着:
$data->dropSchema(...)
$data
是一个全局变量,我找不到它的定义位置。
任何指针将不胜感激。