我知道两种复制postgres数据库的方法,但是它们都要求你拥有对数据库的独占访问权限,这是你在尝试从生产中复制数据库时没有的东西,以便用它来测试某些东西,比如软件升级/迁移。
psql>create database mydb_test with template mydb owner dbuser;
ERROR: source database "mydb" is being accessed by other users
>createdb -O dbuser -T mydb mydb_test
createdb: database creation failed: ERROR: source database "mydb" is being accessed by other users
答案 0 :(得分:5)
有效:
psql
create database mydb_test owner dbuser;
\q
pg_dump mydb|psql -d mydb_test