场景

根据业务需求,需要将user1下的dev数据库和user2下的auth数据库整合到user1的新库prod。

经过

  1. PostgreSql服务器root用户登录上去发现没有postgres用户。进入home目录发现是mydb。则切换到mydb用户
  • su mydb
  1. 创建新数据库prod
  • psql -c "create database prod"
  1. 以流的方式,将dev的auth数据库中的数据复制到prod库中
  • pd_dump dev |psql prod
  • pg_dump auth |psql prod
  1. 用当前用户进入默认数据库
  • psql
  1. 查看所有数据库,发现prod数据库用户是mydb
  • \l
  1. 更新prod所有者为user1
  • ALTER DATABASE prod OWNER TO user1;
  • \q
  1. 用图形工具连接数据库,发现原ahth库的表没有访问权限,故切换到新数据库
  • psql prod
  1. 把所有者为user2表的所有者更新为user1
  • REASSIGN OWNED BY user2 TO user1;
  1. 再次使用图形化工具访问数据,正常

结束

参考链接 postgres复制数据库

posted on 2023-02-06 16:05  idanyang  阅读(14)  评论(0编辑  收藏  举报