Rumah >pembangunan bahagian belakang >Golang >Bagaimana untuk Menyelesaikan 'pq: tidak boleh menggugurkan pangkalan data yang sedang dibuka' Ralat dalam PostgreSQL?
Postgres Drop Pangkalan Data Ralat: "pq: tidak boleh menggugurkan pangkalan data yang sedang dibuka"
Ralat ini berlaku apabila cuba menggugurkan pangkalan data anda sedang disambungkan kepada. Menurut dokumentasi Postgres, seseorang tidak boleh menggugurkan pangkalan data yang mempunyai sambungan terbuka. Untuk membetulkan isu ini, sambung ke pangkalan data lain dan laksanakan perintah DROP DATABASE pada sambungan itu.
Sebagai alternatif, jika pelanggan lain disambungkan ke pangkalan data, anda boleh memutuskan sambungan mereka secara paksa untuk membenarkan operasi drop. Walau bagaimanapun, ini memerlukan keistimewaan superuser. Untuk memutuskan sambungan pelanggan secara paksa daripada pangkalan data bernama "mydb," gunakan arahan berikut:
If PostgreSQL < 9.2: SELECT pg_terminate_backend(procpid) FROM pg_stat_activity WHERE datname = 'mydb'; Else: SELECT pg_terminate_backend(pid) FROM pg_stat_activity WHERE datname = 'mydb';
Setelah semua pelanggan telah diputuskan sambungan, anda boleh menyambung ke pangkalan data lain dan laksanakan perintah DROP DATABASE untuk mengalih keluar yang dikehendaki. pangkalan data.
Atas ialah kandungan terperinci Bagaimana untuk Menyelesaikan 'pq: tidak boleh menggugurkan pangkalan data yang sedang dibuka' Ralat dalam PostgreSQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!