免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 3016 | 回复: 6
打印 上一主题 下一主题

请教高手, 数据库的迁移问题 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2006-03-08 16:34 |只看该作者 |倒序浏览
我在RedHat Linux 7.1上用Postgresql, 有20个数据库.

现在因为机器的性能问题, 想把它们全部移到一个新的服务器
(装有RedHat Enterprise Linux ES 2.1)上去. 能不能把base
目录整个拷贝过去?
因为数据库太多.一个一个pg_dump非常麻烦.
请教高手指点. 谢谢!

论坛徽章:
0
2 [报告]
发表于 2006-03-08 22:52 |只看该作者
可以一次把所有数据库都dump,具体请参考Postgresql手册

论坛徽章:
0
3 [报告]
发表于 2006-03-08 22:55 |只看该作者
也可以直接使用dump和管道配和,直接传输到新机器上。

具体见手册。

论坛徽章:
0
4 [报告]
发表于 2006-03-09 13:03 |只看该作者
pg_dumpall

论坛徽章:
0
5 [报告]
发表于 2006-03-10 09:40 |只看该作者
原帖由 litrin 于 2006-3-9 13:03 发表
pg_dumpall


pg_dumpall卸载20个数据库之后, 再怎么把它们装进去呢?
有pg_restoreall吗?

论坛徽章:
0
6 [报告]
发表于 2006-03-10 14:27 |只看该作者
[quote]原帖由 [i]iandyouandhe[/i] 于 2006-3-10 09:40 发表


pg_dumpall卸载20个数据库之后, 再怎么把它们装进去呢?
有pg_restoreall吗? [/quote]


如此懒惰。。。无言。。。

手册 第III章,22节,以下节选:
[quote]
22.1.2. 使用 pg_dumpall

上面的方法在备份整个数据库集群的时候比较麻烦而且不方便。因此我们提供了 pg_dumpall 程序。 pg_dumpall 备份一个给出的集群中的每个数据库,同时还确保保留象用户和组这样的全局数据状态。 这个命令的基本用法是:

pg_dumpall > outfile

生成的转储可以用 psql 恢复:

psql template1 < infile

(实际上,你可以声明任意现有的数据库进行连接,但是如果你是向一个空的数据库装载,那么 template1 是你唯一的选择。) 恢复pg_dumpall的转储的时候通常需要数据库超级用户权限,因为我们需要它来恢复用户和组信息。
[/quote]

论坛徽章:
0
7 [报告]
发表于 2006-03-14 00:46 |只看该作者
还是一个一个搞吧。配合sql 生成命令也不麻烦
finance=> select 'pg_dump -Upostgres -i -v -F c -f ' || datname || '.backup ' || datname from pg_database;
                          ?column?                           
-------------------------------------------------------------
pg_dump -Upostgres -i -v -F c -f postgres.backup postgres
pg_dump -Upostgres -i -v -F c -f finance.backup finance
pg_dump -Upostgres -i -v -F c -f template1.backup template1
pg_dump -Upostgres -i -v -F c -f template0.backup template0
(4 行)
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP