postgresql数据库备份和恢复
2018-03-31 10:59
465 查看
raquelleyf注:在数据库中数据很大的时候,通过pgAdmin备份,尤其是远程连接后备份需要相当长的时间,直接在服务器操作会加快速度。原文链接:http://www.open-open.com/lib/view/open1385448336182.htmlPostgreSQL自带一个客户端pgAdmin,里面有个备份,恢复选项,也能对数据库进行备份 恢复(还原),但最近发现数据库慢慢庞大的时候,经常出错,备份的文件过程中出错的几率那是相当大,手动调节灰常有限。所以一直寻找完美的备份恢复方案。 梦里寻他千百度,伊人却在灯火阑珊处...其实PostgreSQL内置不少的工具,寻找的备份恢复方案就在其中:pg_dump,psql。这两个指令 在数据库的安装目录下,比如我自己本地安装的,路径形如:C:\Program Files\PostgreSQL\9.5\;然后进入到bin文件夹,会看到不少的exe文件,这就是PostgreSQL内置的工具了。里面会找到 pg_dump.exe,psql.exe两个文件。我们怎么用他们?用法:备份数据库,指令如下:pg_dump -h 164.82.233.54 -U postgres databasename > C:\databasename.bak开始-运行-cmd 弹出dos控制台;然后 在控制台里,进入PostgreSQL安装目录bin下:cd C:\Program Files\PostgreSQL\9.0\bin最后执行备份指令: pg_dump -h 164.82.233.54 -U postgres databasename > C:\databasename.bak指令解释:如上命令,pg_dump 是备份数据库指令,164.82.233.54是数据库的ip地址(必须保证数据库允许外部访问的权限哦~),当然本地的数据库ip写 localhost;postgres 是数据库的用户名;databasename 是数据库名。> 意思是导出到C:\databasename.bak文件里,如果没有写路径,单单写databasename.bak文件名,那么备份文件会保存在C: \Program Files\PostgreSQL\9.0\bin 文件夹里。 恢复数据库,指令如下: psql -h localhost -U postgres -d databasename < C:\databasename.bak(测试没有成功)
pg_restore.exe --host localhost --port 5432 --username "postgres" --dbname "symbolmcnew" --no-password --verbose "databasename.backup"(测试成功)
指令解释:如上命令,psql是恢复数据库命令,localhost是要恢复到哪个数据库的地址,当然你可以写上ip地址,也就是说能远程恢复(必须保证 数据库允许外部访问的权限哦~);postgres 就是要恢复到哪个数据库的用户;databasename 是要恢复到哪个数据库。< 的意思是把C:\databasename.bak文件导入到指定的数据库里。以上所有的是针对windows而言的,如果在linux下,会不会有效? 在linux里依然有效。有一个值得注意的是:如果直接进入PostgreSQL的安装目录bin下,执行命令,可能会出现 找不到pg_dump,psql的现象,我们在可以这样:备份:/opt/PostgreSQL/9.5/bin/pg_dump -h 164.82.233.54 -U postgres databasename > databasename.bak恢复: /opt/PostgreSQL/9.5/bin/psql -h localhost -U postgres -d databasename < databasename.bak
原文链接:http://www.open-open.com/lib/view/open1385448336182.html
pg_restore.exe --host localhost --port 5432 --username "postgres" --dbname "symbolmcnew" --no-password --verbose "databasename.backup"(测试成功)
指令解释:如上命令,psql是恢复数据库命令,localhost是要恢复到哪个数据库的地址,当然你可以写上ip地址,也就是说能远程恢复(必须保证 数据库允许外部访问的权限哦~);postgres 就是要恢复到哪个数据库的用户;databasename 是要恢复到哪个数据库。< 的意思是把C:\databasename.bak文件导入到指定的数据库里。以上所有的是针对windows而言的,如果在linux下,会不会有效? 在linux里依然有效。有一个值得注意的是:如果直接进入PostgreSQL的安装目录bin下,执行命令,可能会出现 找不到pg_dump,psql的现象,我们在可以这样:备份:/opt/PostgreSQL/9.5/bin/pg_dump -h 164.82.233.54 -U postgres databasename > databasename.bak恢复: /opt/PostgreSQL/9.5/bin/psql -h localhost -U postgres -d databasename < databasename.bak
原文链接:http://www.open-open.com/lib/view/open1385448336182.html
相关文章推荐
- PostgreSQL 创建帐号,数据库,权限,备份,恢复
- postgresql数据库备份和恢复
- PostgreSQL数据库完美备份恢复
- pg_rman 实现对postgresql数据库的备份,恢复与管理
- postgresql的基本使用,以及数据库的备份与恢复
- postgresql数据库备份和恢复
- Postgresql 数据库备份,恢复
- 某电商项目PostgreSQL数据库备份恢复方案
- Windows下PostgreSQL10.0数据库备份和恢复
- postgresql 数据库备份和恢复
- pg_restore - 从一个由 pg_dump 创建的备份文件中恢复 PostgreSQL 数据库。
- 使用pg_rman软件来实现postgresql数据库的备份恢复
- postgresql 数据库备份与恢复
- PostgreSQL数据库完美备份恢复
- Postgresql命令行和数据库备份与恢复
- 【PostgreSQL】postgreSQL数据库备份与恢复技术比较
- Windows下Postgresql数据库的备份及恢复
- PostgreSQL数据库完美备份恢复
- 数据库postgresql的单表备份与恢复
- postgresql 数据库的备份与恢复(命令模式)