`
liuhd2010
  • 浏览: 148092 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类

[转]PostgreSQL数据库备份与恢复

 
阅读更多

PostgreSQL自带一个客户端pgAdmin,里面有个备份,恢复选项,也能对数据库进行备份 恢复(还原),但最近发现数据库慢慢庞大的时候,经常出错,备份的文件过程中出错的几率那是相当大,手动调节灰常有限。所以一直寻找完美的备份恢复方案。

 

梦里寻他千百度,伊人却在灯火阑珊处...其实PostgreSQL内置不少的工具,寻找的备份恢复方案就在其中:pg_dump,psql。这两个指令在数据库的安装目录下,比如我自己本地安装的,路径形如:C:\Program Files\PostgreSQL\9.0\;然后进入到bin文件夹,会看到不少的exe文件,这就是PostgreSQL内置的工具了。里面会找到pg_dump.exe,psql.exe两个文件。我们怎么用他们?

Windows里面,DOS命令行进入PostgreSQL的安装目录,然后如下:

 

备份数据库,指令如下:

  1. pg_dump -h 164.82.233.54 -U postgres databasename > C:\databasename.bak
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

最后执行备份指令:

  1. pg_dump -h 164.82.233.54 -U postgres databasename > C:\databasename.bak
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 文件夹里。

 

恢复数据库,指令如下:

  1. psql -h localhost -U postgres -d databasename < C:\databasename.bak
psql -h localhost -U postgres -d databasename <  C:\databasename.bak

 

     eg:在PostgreSQL中新建数据库mydb,将备份文件还原至mydb数据库中命令如下

     psql -h localhost -U postgres -d mydb < E:\db\mydb.backup

 

指令解释:如上命令,psql是恢复数据库命令,localhost是要恢复到哪个数据库的地址,当然你可以写上ip地址,也就是说能远程恢复(必须保证数据库允许外部访问的权限哦~);postgres 就是要恢复到哪个数据库的用户;databasename 是要恢复到哪个数据库。< 的意思是把C:\databasename.bak文件导入到指定的数据库里。

以上所有的是针对windows而言的,如果在linux下,会不会有效?

 

 

在linux里依然有效。有一个值得注意的是:如果直接进入PostgreSQL的安装目录bin下,执行命令,可能会出现 找不到pg_dump,psql的现象,我们在可以这样:

备份:

  1. /opt/PostgreSQL/9.0/bin/pg_dump -h 164.82.233.54 -U postgres databasename > databasename.bak
/opt/PostgreSQL/9.0/bin/pg_dump -h 164.82.233.54 -U postgres databasename > databasename.bak

 

恢复:

  1. /opt/PostgreSQL/9.0/bin/psql -h localhost -U postgres -d databasename < databasename.bak
/opt/PostgreSQL/9.0/bin/psql -h localhost -U postgres -d databasename < databasename.bak
分享到:
评论

相关推荐

    postgresql数据库备份和恢复

    在PostgreSQL数据库备份方面,通常的工具包括内置的客户端工具pgAdmin,它提供了用户图形界面来进行数据库的备份和恢复操作。然而,随着数据库规模的增长,直接使用pgAdmin进行操作可能变得不那么稳定和可靠,这就...

    Window 下的PostgreSQL 数据库备份和恢复工具[GUI].

    Window 下的PostgreSQL 数据库备份和恢复工具[GUI],供大家一起共同分享使用。

    PostgreSQL数据库备份脚本

    **PostgreSQL数据库备份脚本详解** 在IT领域,数据库的安全性是至关重要的,定期备份是保障数据安全的重要手段。PostgreSQL作为一款强大的开源关系型数据库系统,提供了多种方式进行数据库的备份与恢复。本文将深入...

    postgresql数据库定时备份脚本(linux)

    七、备份恢复 1. **使用pg_restore**:将.sql文件恢复到新的数据库。 2. **使用pg_basebackup恢复**:直接替换现有数据目录或恢复到新的位置。 确保定期检查备份的完整性和可恢复性,以验证备份策略的有效性。在...

    如何恢复PostgreSQL数据库

    恢复 PostgreSQL 数据库通常是通过备份和恢复实现的。在特殊情况下,系统故障,PostgreSQL 数据库无法打开,这时候只有求助与存放在硬盘上的物理文件。PostgreSQL 数据一般是存放在 data 目录下的,要恢复数据可通过...

    postgresql备份与恢复pgadmin3工具.docx

    pgAdmin 3 提供了多种备份方式,包括单个表备份、整个数据库备份和自定义备份。下面是使用 pgAdmin 3 工具来备份 PostgreSQL 数据库的步骤: 1. 打开 pgAdmin 3 工具,并连接到要备份的 PostgreSQL 数据库。 2. 在...

    PostgreSQL数据库备份工具

    本文将详细介绍一款专用于PostgreSQL数据库备份的工具,其特性包括支持Windows操作系统、本机和远程数据库的手动与定时备份。 首先,这款工具适应于Windows操作系统,意味着Windows用户可以方便地在自己的桌面环境...

    备份PostgreSQL和MySQL数据库

    数据库备份是保障业务连续性和数据安全的关键步骤,尤其对于依赖MySQL和PostgreSQL等关系型数据库存储关键信息的企业而言。这两种数据库管理系统(DBMS)都提供了内置的工具来方便地进行数据备份,使得用户可以在...

    5.5-数据库备份与恢复.ppt

    数据库备份与恢复 数据库备份与恢复是数据库管理系统中非常重要的一部分,它们可以帮助数据库管理员保护数据库中的数据,避免数据丢失或损坏。下面我们将详细介绍数据库备份与恢复的概念、类型、方法和实现方式。 ...

    备份和恢复PostgreSQL数据库

    PostgreSQL数据库的备份和恢复是一项非常重要的数据库管理任务。备份可以防止由于操作失误、硬件故障、系统崩溃或其他意外情况导致的数据丢失。在PostgreSQL中,系统提供了专门的备份工具pg_dump和pg_dumpall来进行...

    Python编写PostgreSQL数据库结构比对程序源代码

    这在数据库迁移、升级或备份恢复等场景中非常有用,可以确保目标数据库与源数据库的模式完全匹配。 描述中提到,源代码可以直接在PyCharm中运行。PyCharm是一款广受欢迎的Python集成开发环境(IDE),它提供了代码...

    PostgreSQL备份与恢复技术介绍.pptx

    PostgreSQL 备份与恢复技术是数据库管理员的重要任务之一,本文将详细介绍 PostgreSQL 的备份与恢复技术,包括物理备份与恢复、逻辑备份与恢复、时间点恢复和特殊的数据恢复。 物理备份与恢复 物理备份是指对整个...

    关系型数据库(如MySQL, PostgreSQL):数据库备份与恢复策略.docx

    关系型数据库(如MySQL, PostgreSQL):数据库备份与恢复策略.docx

    Postgresql备份和恢复

    **PostgreSQL备份与恢复详解** ...通过理解并实施这些备份和恢复策略,可以大大提高PostgreSQL数据库系统的健壮性和数据安全性。在实际操作中,应结合业务需求和资源条件,选择最适合的备份方案。

    Postgresql 备份与恢复研究.txt

    - **说明**: 此命令将指定的数据库备份到一个名为`outfile`的文件中。 2. **增量备份** - **说明**: 在实际生产环境中,增量备份通常用于减少备份时间并节省存储空间。但是,PostgreSQL本身并不直接支持增量备份...

    Commvault数据库备份恢复功能介绍.pptx

    Commvault数据库备份恢复功能介绍还提供了MySQL Enterprise Backup(MEB)功能,该功能可以与媒体管理软件(MMS)集成,提供了一个完整的备份和恢复解决方案。 Commvault数据库备份恢复功能介绍的业务价值包括: ...

    各种数据库的备份与恢复

    总的来说,数据库备份与恢复是一个综合性的主题,涉及到数据库管理、故障恢复策略、业务连续性等多个方面。选择合适的备份方法和工具,结合定期测试恢复流程,是确保数据安全和业务稳定运行的重要步骤。在实际操作中...

    Python数据库备份与恢复:技术详解与代码实现

    本文详细介绍了如何使用Python进行数据库的备份与恢复,包括技术原理、代码示例和最佳实践。通过掌握这些技巧,你可以更好地保障数据的安全...希望这篇文章能够成为你学习和应用Python数据库备份与恢复技术的有力指南。

    特别有用的PostgreSQL数据库复制与CDC实施方案详细手册

    本文档详细介绍了PostgreSQL数据库复制与CDC的基本概念、操作配置、以及运维管理,旨在为数据库管理员和开发者提供详尽的实施方案。 首先,我们需要理解PostgreSQL数据库复制的基本概念。数据库复制功能是指实时...

Global site tag (gtag.js) - Google Analytics