Linux下PG数据库计划任务定期备份恢复的方法
注意事项
- PG数据库需要注意的一点是需要安装OSSP-UUID的组件才能使用.
- 本次使用最除了冷备之外 最简单的 pg_dump和pg_restore的操作 的方式来进行处理
- 务必定期演练保证数据备份恢复可用
- 建议咨询数据库专家提供服务, 此命令在不进行严格测试前不建议用于生产.
备份过程
pg_dump -h 127.0.0.1 -U postgres -p 5432 -F c -f /gscloud2003pg.dmp gscloud2003
- 注意 备份命令比较简单. -h 指定服务器 -U 知道备份用的用户 -p 指定端口 -f 指定备份文件 最后面说明 要备份的数据库.
- 备份完成后就可以在根目录下看到备份文件.
- 注意PG的备份时没有任何提示. 如果数据库比较大可能会耗时较久.
- 注意备份出来的文件,如果是同名恢复非常简单不需要处理, 如果是异名恢复, 需要修改数据库内部的属主信息.
- 注意如果root用户没有执行pg_dump的指令的话, 可以到pg的安装目录下执行相关操作.
恢复操作
- 创建相关用户, 尽量同名恢复, 注意不直接覆盖生产环境, 避免数据丢失
切换到 pg的系统用户
su - postgres
登录 数据库
psql
创建表空间和用户等信息
创建用户
create role "gscloud2003" superuser login;
创建数据库
create database "gscloud2003" ;
设置密码
alter role "gscloud2003" with password 'Test20131127';
#注意使用双引号 比较好 能够 包含大小写的数据库名字 .
执行恢复操作.
pg_restore -U postgres -d gscloud2003 /gscloud2003pg.dmp
创建备份脚本
- 将备份数据库的命令设置为一个shell 脚本
- 注意我这里是使用的rpm 安装的pg数据 pg_dump等的命令切实存在于环境里面
- 增加一个文件: /deploy/backuppg
- 输入内容为: 注意 需要替换你自己的password. 会自动按照你备份的年月日时分 来创建备份文件.
export PGPASSWORD=YourDBPassword
export now=`date +"%Y%m%d%H%M"`
pg_dump -h 127.0.0.1 -U GSCLOUD2103PG -p 5432 -F c -f /pgbackup/gscloud2103pg_$now.dmp GSCLOUD2103PG
创建计划任务
- 输入
crontab -e进入计划任务设置界面. - 注意需要保证crond 服务保持开启状态.
- 注意需要优先保证自己的脚本是准确可执行的.
1 0 * * * /deploy/backuppg
- 注意
crontab -e打开的界面里面 - 分别对应为: 分 秒 日 月 周 执行命令
- 比如本次的命令就是凌晨 0点1分进行数据库备份操作

注意事项
- 必须定义备份恢复演练.数据安全大于天
- 任何脚本和任何操作都是靠不住的, 必须人工验证备份可用, 可以恢复, 数据不会丢失.
Linux下PG数据库计划任务定期备份恢复的方法的更多相关文章
- Linux下MySQL数据库主从同步配置
说明: 操作系统:CentOS 5.x 64位 MySQL数据库版本:mysql-5.5.35 MySQL主服务器:192.168.21.128 MySQL从服务器:192.168.21.129 准备 ...
- Linux下MySQL数据库的备份与恢复
Linux下MySQL数据库的备份与恢复 作者:Grey 原文地址: Github 语雀 博客园 基于版本 MySQL5.7 Deepin Linux 15.11 xtrabackup-2.4.18 ...
- linux下mysql数据库的操作
本文主要针对linux下mysql数据库的安装,以及数据库的创建和简单的数据库操作进行说明. ①.Mysql数据库的安装: 数据库的安装分为源码安装和rpm安装. 当然对于老手来说需要进行一些自定义的 ...
- Linux下链接数据库图形化工具
(一).Linux环境下mysql的安装.SQL操作 Linux下安装MySQL (rmp --help) 基本步骤:上传软件->检查当前Linux环境是否已经安装,如发现系统自带的,先卸载-& ...
- linux下oracle数据库字符集修改
linux下oracle数据库字符集修改 0.RHEL6.7.oracle11gr2 1.登录oracle.在安装oracle的用户下进入数据库. $ sqlplus / as sysdba 2.查询 ...
- 记录--linux下mysql数据库问题
本次主要记录一下linux下mysql数据库的一些问题,也是之前经常用到的知识,这里简单总结一些问题,方便自己以后的回顾.原来一直使用的是阿里云的RDS数据库mysql版,主要是因为上次阿里云做活动可 ...
- linux下oracle数据库的启动
linux下oracle数据库的启动 一.切换oracle用户 命令:su - oracle 二.运行sqlplus命令,进入sqlplus环境 命令:sqlplus /nolog (nolog参数表 ...
- linux下history命令显示历史指令记录的使用方法
Linux系统当你在shell(控制台)中输入并执行命令时,shell会自动把你的命令记录到历史列表中,一般保存在用户目录下的.bash_history文件中.默认保存1000条,你也可以更改这个值 ...
- Linux下用rm删除的文件的恢复方法
Linux下用rm删除的文件的恢复方法_Linux教程_Linux公社-Linux系统门户网站https://www.linuxidc.com/Linux/2008-08/14744.htm linu ...
- linux下如何批量杀JAVA进程或某个进程方法
linux下如何批量杀JAVA进程或某个进程方法 在工作中经常需要停止JAVA进程,停止时间也比较长,那么有时候因为一些情况,需要把 linux 下JAVA所有进程 kill 掉,又不能用killal ...
随机推荐
- Serverless时代的微服务开发指南:华为云提出七大实践新标准
摘要:本文结合华为云在Serverless Microservice方面的实践,总结提炼出七大Serverless Microservice开发 "实践标准",为加速全域Serve ...
- 解读分布式调度平台Airflow在华为云MRS中的实践
摘要:Airflow是一个使用Python语言编写的分布式调度平台,通过DAG(Directed acyclic graph 有向无环图)来管理任务. 本文分享自华为云社区<分布式调度平台Air ...
- Java中观察者模式与委托,还在傻傻分不清
摘要:本文通过对比Java中观察者模式与委托,希望能够让开发者分清二者的区别和联系. 本文分享自华为云社区<Java中观察者模式与委托的对比>,作者: 小小张自由--张有博 . 代码背景 ...
- 论文解读丨LayoutLM: 面向文档理解的文本与版面预训练
摘要:LayoutLM模型利用大规模无标注文档数据集进行文本与版面的联合预训练,在多个下游的文档理解任务上取得了领先的结果. 本文分享自华为云社区<论文解读系列二十五:LayoutLM: 面向文 ...
- Mac 向日葵设置
- Jenkins Pipeline 流水线 - 拉代码(SVN) + Maven 编译打包
Jenkins Pipeline 流水线 步骤 拉取SVN代码 -> Maven 构建 -> Docker 编译 -> 发布至阿里云仓库 -> K8S 更新 Jenkins插件 ...
- dmesg 时间误差现象
案例现象 这天收到监控平台发来的告警,说有台机器程序崩溃了 因为以前也有过相关的错误,根据经验,用 dmesg命令看下内核信息 发现有点不对劲,报错信息的时间跟告警时间不一致,正常来讲报错时间应该跟告 ...
- PySpark 报错 java.lang.ClassNotFoundException: com.mysql.cj.jdbc.Driver
解决方案: mv mysql-connector-java-8.0.20.jar $SPARK_HOME/jars/ 驱动文件mysql-connector-java-8.0.20.jar是从mave ...
- 【驱动】I2C驱动分析(二)-驱动框架
I2C驱动框架简介 I2C 驱动属于总线-设备-驱动模型的,与I2C总线设备驱动模型相比,大体框架是一样,系统的整体框架如下所示. 最上层是应用层,在应用层用户可以直接用open read write ...
- uni-app editor富文本编辑器
https://blog.csdn.net/xudejun/article/details/91508189