postgresql数据库备份
一.工具备份数据
打开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文件然后做以下修改:
- listen_address = ‘*’(默认localhost)
- wal_level = hot_standby(默认是minimal)
- max_wal_senders=2(默认是0)
- wal_keep_segments=64(默认是0)
- 在主库创建一个超级用户来专门负责让standby连接去拖WAL日志:create user repl superuser password '111111';
- 打开数据目录下的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数据库备份的更多相关文章
- PostgreSQL 数据库备份与还原
PostgreSQL 数据库备份与还原 目录 备份 还原 栗子 备份 PostgreSQL提供的一个工具pg_dump,逻辑导出数据,生成sql文件或其他格式文件,pg_dump是一个客户端工具,可以 ...
- PostgreSQL 数据库备份脚本
PostgreSQL 数据库备份脚本 #!/bin/bash # PG家目录(/opt/postgresql/pg96/) PG_HOME=${PGHOME} # pg数据库连接信息 PG_HOST= ...
- postgresql数据库备份和恢复
PostgreSQL自带一个客户端pgAdmin,里面有个备份,恢复选项,也能对数据库进行备份 恢复(还原),但最近发现数据库慢慢庞大的时候,经常出错,备份的文件过程中出错的几率那是相当大,手动调节灰 ...
- docker容器中Postgresql 数据库备份
查看运行的容器: docker ps 进入目标容器: docker exec -u root -it 容器名 /bin/bash docker 中,以root用户,创建备份目录,直接执行如下命令, p ...
- postgresql数据库备份和恢复(超快)
PostgreSQL自带一个客户端pgAdmin,里面有个备份,恢复选项,也能对数据库进行备份 恢复(还原),但最近发现数据库慢慢庞大的时候,经常出错,备份的文件过程中出错的几率那是相当大,手动调节灰 ...
- windows下postgresql数据库备份和还原
1.通过cmd进入数据库的bin目录 cd C:\Program Files\PostgreSQL\9.6\bin 2.执行pg_dump备份命令,localhost 或者IP pg_dump -h ...
- PostgreSQL 数据库备份
--CMD管理员进入 --进入目录: C:\Program Files\PostgreSQL\9.6\bin --备份: pg_dump -U postgres MP > C:\mptest.b ...
- 12 postgresql数据库备份和恢复
数据表结构备份与恢复 备份 1.找到postgres 安装目录,在找到bin文件夹,会看到一堆exe后缀的文件,用win+r 打开cmd,将pg_dump.exe 拖进cmd黑窗口中 2.基本语法:- ...
- [完整版]Postgresql 数据库 备份以及恢复的过程
0. 准备工作 linux机器上面 必须安装上pg数据库 然后 需要将 pg的主程序目录 放到环境变量里面去 便于执行命令. 1. 先备份 . 备份目标数据库: pg_dump -h -F c -f ...
随机推荐
- python信号量
同进程的一样 Semaphore管理一个内置的计数器,每当调用acquire()时内置计数器-1:调用release() 时内置计数器+1:计数器不能小于0:当计数器为0时,acquire()将阻塞线 ...
- Unity中UGUI鼠标穿透UI问题的解决方法
不过在使用时需要先获取两个红色显示的变量,graphicRaycaster和eventSystem. 这两个变量分别对应的是Canvas中的GraphicRaycaster组件和创建UI时自动生成的“ ...
- day051 django第二天 django初识\代码
模板渲染 JinJa2 from wsgiref.simple_sever import make_sever from jinjia2 import Template def index(): wi ...
- Linux 搭建Hadoop集群 成功
内容基于(自己的真是操作步骤编写) Linux 搭建Hadoop集群---Jdk配置 Linux 搭建Hadoop集群 ---SSH免密登陆 一:下载安装 Hadoop 1.1:下载指定的Hadoop ...
- jmeter解决request response中文乱码问题
一:主要内容 解决request请求入参中文乱码问题 解决response响应数据中文乱码问题 二:解决request和response中文乱码问题 request结果:-中文已经不乱码了 respo ...
- 理解linux下的load
我们在做Linux负载计算的时候,我们需要了解负载的几个概念 1)Linux负载是什么 2)Linux负载怎么计算 3)如何区分目前负载是“好”还是“坏” 4)什么时候应该注意哪些不正常的值 1) ...
- vue学习笔记 - 篇2
1.借助Vue.extend()方法创建组件 注意点 var Aaa = Vue.extend({ template: "<h1>这是标题</h1>" }) ...
- VC++、MFC Sqlite3数据库的使用
SQLite数据库是一种本地的轻型数据库,在存储一些本地的数据的时候,或者不需要用到Oracle,SQL2008之类的大型数据库的时候,Sqlite的优势就能够得到发挥.程序需要采集数据存储起来,可以 ...
- Spring中的@Bean注解、@Configuration注解、@Value
1.首先是注册bean类:@Component.@Responsitory.@Controller.@Service.Configuration这些注解是把要实例化的对象装化成一个bean,放到Ioc ...
- 德州扑克AI--Programming Poker AI(译)
前言: 最近在研究德州扑克的AI, 也想由浅入深的看下, 在网上找了一圈, 发现很多文章都提到了一篇文章: Programming Poker AI. 仔细拜读了一下, 觉得非常不错. 这里作下简单的 ...