postgres数据库导入导出

windows下pg的数据库的导出:

导出:pg_dump  -hlocalhost -p 5432 -d postgres -Upostgres -f "f:\dqwhsc"

导入:psql -hlocalhost -p 5432 -d newdb -U postgres -f "f:\dqwhsc"

pg_restore回复数据库:

pg_restore -hlocalhost -p 5432 -d dqwhsc -U postgres "E:
\chinaunicom\deploy\20170928\dqwhpt_20170928020002"

--注意:如果是导入的只有table,如果table不存在会自动创建,如果存在,数据会追加。

 

当我们在使用drop database testdb命令删除数据库时,会提示该数据库正在被使用,这样我们就无法删除,此时我们可以通过如下语句断开该数据库的所有链接:

SELECT pg_terminate_backend(pg_stat_activity.pid) FROM pg_stat_activity WHERE datname='testdb' AND 
pid<>pg_backend_pid();

1.pg_terminate_backend表示终止与数据库的链接的进程id的函数。

2.pg_stat_activity存储服务进程的属性和状态。

3.pg_backend_pid获取当前会话进程ID。

你可能感兴趣的:(postgres)