场景
根据业务需求,需要将user1下的dev数据库和user2下的auth数据库整合到user1的新库prod。
经过
- PostgreSql服务器root用户登录上去发现没有postgres用户。进入home目录发现是mydb。则切换到mydb用户
- su mydb
- 创建新数据库prod
- psql -c "create database prod"
- 以流的方式,将dev的auth数据库中的数据复制到prod库中
- pd_dump dev |psql prod
- pg_dump auth |psql prod
- 用当前用户进入默认数据库
- psql
- 查看所有数据库,发现prod数据库用户是mydb
- \l
- 更新prod所有者为user1
- ALTER DATABASE prod OWNER TO user1;
- \q
- 用图形工具连接数据库,发现原ahth库的表没有访问权限,故切换到新数据库
- psql prod
- 把所有者为user2表的所有者更新为user1
- REASSIGN OWNED BY user2 TO user1;
- 再次使用图形化工具访问数据,正常
结束
参考链接 postgres复制数据库
作者:idanyang
出处:http://www.cnblogs.com/idanyang/
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。