一.工具备份数据

打开windows下的命令窗口:开始->cmd->安装数据库的目录->进入bin目录;

导出命令:pg_dump –h localhost –U postgres –p 5432 –d postgres  –f “D:/test.dmp”

-h:服务器地址;

-p:端口号;

-U:这里的“U”要大写,用户身分

-d:数据库名称;

-f:文件输出的目录和名称;

恢复数据:

psql -h localhost -U postgres -d new_db  -f "D:\test.dmp"

二.备份归档

创建 WAL 备份目录,比如:  d:\pg_xlog_archive 1

修改 postgresql.conf 中的 archive_command 设置,比如:      archive_command = 'copy "%p" d:\\pg_xlog_archive\\%f'       注:%p 要用双引号括起来处理安装目录中有空格的情况。  archive_mode = on    wal_level='archive'

2   用psql登录数据库服务器,然后执行下面的过程  psql -Ubeigang < beigang_dump.pgdump:      SELECT pg_reload_conf();

3  psql接着执行过程  SELECT pg_start_backup('label');    注:label 建议使用备份目录的全路径。

4  psql接着执行过程  SELECT pg_stop_backup();

5  检查WAL日志归档目录,有的话就成功了。

恢复:

1,停止数据库

2.删除  data目录

3,恢复备份

jar cvfm classes.jar mymanifest -C foo/ .

4,清空/data/pg_xlog/目录下所有文件

5,创建/pg_xlog/及其下面的archive_status目录

6,在/data/目录下创建recovery.conf

7,启动数据库

三.冷备份

PostgreSQL 冷备份, 指在数据库关机状态下对数据库的数据文件进行的备份

冷备份需要备份的是数据库集群主目录($PGDATA), 表空间目录, 事务日志(pg_xlog)目录.

如果在参数文件中指定了其他目录或文件, 某些也需要备份下来.

还原:环境,数据库版本一致;将上述备份内容替换(先删除)

四 主从复制备份

1.主数据库配置

开数据目录下的postgresql.conf文件然后做以下修改:

  1. listen_address = ‘*’(默认localhost)
  2. wal_level = hot_standby(默认是minimal)
  3. max_wal_senders=2(默认是0)
  4. wal_keep_segments=64(默认是0)
  5. 在主库创建一个超级用户来专门负责让standby连接去拖WAL日志:create user repl superuser password '111111';
  6. 打开数据目录下的pg_hba.conf文件然后做以下修改: 

2 从数据库配置

pg_basebackup命令行工具在从库上生成基础备份,命令如下:

./pg_basebackup -h 192.168.111.101 -U repl -F p -x -P -R -D /usr/local/postgresql/data/ -l replbackup201611
从库数据目录下的postgresql.conf文件,将hot_standby改为启用状态,即hot_standby=on

postgresql数据库备份的更多相关文章

  1. PostgreSQL 数据库备份与还原

    PostgreSQL 数据库备份与还原 目录 备份 还原 栗子 备份 PostgreSQL提供的一个工具pg_dump,逻辑导出数据,生成sql文件或其他格式文件,pg_dump是一个客户端工具,可以 ...

  2. PostgreSQL 数据库备份脚本

    PostgreSQL 数据库备份脚本 #!/bin/bash # PG家目录(/opt/postgresql/pg96/) PG_HOME=${PGHOME} # pg数据库连接信息 PG_HOST= ...

  3. postgresql数据库备份和恢复

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

  4. docker容器中Postgresql 数据库备份

    查看运行的容器: docker ps 进入目标容器: docker exec -u root -it 容器名 /bin/bash docker 中,以root用户,创建备份目录,直接执行如下命令, p ...

  5. postgresql数据库备份和恢复(超快)

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

  6. windows下postgresql数据库备份和还原

    1.通过cmd进入数据库的bin目录 cd C:\Program Files\PostgreSQL\9.6\bin 2.执行pg_dump备份命令,localhost 或者IP pg_dump -h ...

  7. PostgreSQL 数据库备份

    --CMD管理员进入 --进入目录: C:\Program Files\PostgreSQL\9.6\bin --备份: pg_dump -U postgres MP > C:\mptest.b ...

  8. 12 postgresql数据库备份和恢复

    数据表结构备份与恢复 备份 1.找到postgres 安装目录,在找到bin文件夹,会看到一堆exe后缀的文件,用win+r 打开cmd,将pg_dump.exe 拖进cmd黑窗口中 2.基本语法:- ...

  9. [完整版]Postgresql 数据库 备份以及恢复的过程

    0. 准备工作 linux机器上面 必须安装上pg数据库 然后 需要将 pg的主程序目录 放到环境变量里面去 便于执行命令. 1. 先备份 . 备份目标数据库: pg_dump -h -F c -f ...

随机推荐

  1. 说一说本人对linux系统学习的方法和经验

    摘要: 相信大伙都听说过linux系统,然而对于这个系统,总使让新手感觉茫然,诺达的系统.下面是一段百度中的介绍: 相信大伙都听说过linux系统,然而对于这个系统,总使让新手感觉茫然,诺达的系统.下 ...

  2. Eclipse ee项目 Java Resources文件报错解决方法

    通常是JDK版本配置问题,这里使用的是JDK1.8版本 确保jre版本为本机配置的版本 打开Navigator目录的.settings文件夹修改org.eclipse.wst.common.compo ...

  3. 模仿select下拉列表

    <!DOCTYPE html><html> <head> <meta charset="UTF-8"> <title>& ...

  4. 微信小程序des加密、PHP des解密

    最近在做对小程序传输数据进行加密,加密方法有很多,使用的是des对称加密 采用的是CBC模式, 引用的插件为tripledes.js,https://github.com/Favour1111in/h ...

  5. C++内存管理-new,delete,new[],placement new的简单使用

    技术在于交流.沟通,本文为博主原创文章转载请注明出处并保持作品的完整性 首先,我们先看一下C++应用程序,使用memory的途径如下图所示 C++应用程序中申请内存基于分配器的实现(std::allo ...

  6. Tomcat version 7.0 only supports J2EE 1.2, 1.3, 1.4, and Java EE 5 Web modules

    原文出处:http://jingwang0523.blog.163.com/blog/static/9090710320113294551497/ 最近在用eclipse做项目,新建项目时什么都贪新, ...

  7. echarts背景分割区域填充不同颜色(x轴为time),实时刷新

    先来看下图片吧,这是实现效果: 思路: 因为要实时刷新,可以使用setInterval(),但是要控制好定时器的起与停,否则容易错乱以及页面卡死: 主要就是利用定时器五秒刷新,重绘echarts图:= ...

  8. 关于Jordan标准形

    [转载请注明出处]http://www.cnblogs.com/mashiqi 2017/06/25 设$A$是$n$维线性空间$V$上的线性变换,它的特征值与相应的代数重数分别为$\lambda_i ...

  9. c++ 网络库

    1.libevent 2.boost::asio 3.ace boost::asio以前看过,不过忘记了 学习,学习

  10. idea快捷键的设置

    因为开始学java被培训机构里的无良老师给带偏,"染上了"MyEclipse的快捷键"恶习",于是很难改了. 所以,在使用idea时,要设置快捷键了,快点适应之 ...