PostgreSQL不能备份或不能还原索引?

lantersen 2014-04-24 05:38:43
第一次用PGSQL,我用的是第三方控件创建的索引,可当我对数据库进行备份(pg_dump)并还原(psql)时,数据是还原了可索引没有还原,请教高人PGSQL是不是不能备份或不能还原已创建的索引?或者是在还原的时候需要加入特殊的参数。
另外,本人也做了另一个测试:不用第三方插件,用PGSQL创建的索引,当我对数据库进行备份(pg_dump)并还原(psql)时也不能被还原。是不是说明:PostgreSQL不能备份索引,只能在还原的数据库上重新创建索引呢?(数据量很大,创建索引需要很长时间)
...全文
265 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
lantersen 2014-04-26
  • 打赏
  • 举报
回复
谢谢wwwwb版主亲自坐阵,也谢谢trainee童鞋的回复,后来还是在还原的数据库上重新创建索引
trainee 2014-04-25
  • 打赏
  • 举报
回复
可以还原的。 pg_dump是逻辑备份(相对于物理备份而言), 备份文挡保存的是SQL语句(包括最后建立索引的SQL语句),你看一下备份文档就知道了。
wwwwb 2014-04-25
  • 打赏
  • 举报
回复
你是怎样备份的?试试 pg_dump -U <DB Username> <DB Name> -s > schema.sql
lantersen 2014-04-25
  • 打赏
  • 举报
回复
我用的是navicate点击“数据转储”功能默认导出的,然后用的是命令还原的。
慕丨灬云 2014-04-25
  • 打赏
  • 举报
回复
可以这两理解吗? 如果导出的.sql文件里 存在create index语句 也就等同于 导完数据 手动创建索引,只不过前者是在导入数据时自动创建索引,后者是手动创建。
wwwwb 2014-04-25
  • 打赏
  • 举报
回复
你备份出来的SQL语句 没有如 CREATE INDEX  之类的? 在建表SQL中是否有主键(索引)的代码?
lantersen 2014-04-25
  • 打赏
  • 举报
回复
那是不是需要对还原的数据重新创建索引?

954

社区成员

发帖
与我相关
我的任务
社区描述
PostgreSQL相关内容讨论
sql数据库数据库架构 技术论坛(原bbs)
社区管理员
  • PostgreSQL社区
  • yang_z_1
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧