注意事项

  • 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数据库计划任务定期备份恢复的方法的更多相关文章

  1. Linux下MySQL数据库主从同步配置

    说明: 操作系统:CentOS 5.x 64位 MySQL数据库版本:mysql-5.5.35 MySQL主服务器:192.168.21.128 MySQL从服务器:192.168.21.129 准备 ...

  2. Linux下MySQL数据库的备份与恢复

    Linux下MySQL数据库的备份与恢复 作者:Grey 原文地址: Github 语雀 博客园 基于版本 MySQL5.7 Deepin Linux 15.11 xtrabackup-2.4.18 ...

  3. linux下mysql数据库的操作

    本文主要针对linux下mysql数据库的安装,以及数据库的创建和简单的数据库操作进行说明. ①.Mysql数据库的安装: 数据库的安装分为源码安装和rpm安装. 当然对于老手来说需要进行一些自定义的 ...

  4. Linux下链接数据库图形化工具

    (一).Linux环境下mysql的安装.SQL操作 Linux下安装MySQL (rmp --help) 基本步骤:上传软件->检查当前Linux环境是否已经安装,如发现系统自带的,先卸载-& ...

  5. linux下oracle数据库字符集修改

    linux下oracle数据库字符集修改 0.RHEL6.7.oracle11gr2 1.登录oracle.在安装oracle的用户下进入数据库. $ sqlplus / as sysdba 2.查询 ...

  6. 记录--linux下mysql数据库问题

    本次主要记录一下linux下mysql数据库的一些问题,也是之前经常用到的知识,这里简单总结一些问题,方便自己以后的回顾.原来一直使用的是阿里云的RDS数据库mysql版,主要是因为上次阿里云做活动可 ...

  7. linux下oracle数据库的启动

    linux下oracle数据库的启动 一.切换oracle用户 命令:su - oracle 二.运行sqlplus命令,进入sqlplus环境 命令:sqlplus /nolog (nolog参数表 ...

  8. linux下history命令显示历史指令记录的使用方法

    Linux系统当你在shell(控制台)中输入并执行命令时,shell会自动把你的命令记录到历史列表中,一般保存在用户目录下的.bash_history文件中.默认保存1000条,你也可以更改这个值 ...

  9. Linux下用rm删除的文件的恢复方法

    Linux下用rm删除的文件的恢复方法_Linux教程_Linux公社-Linux系统门户网站https://www.linuxidc.com/Linux/2008-08/14744.htm linu ...

  10. linux下如何批量杀JAVA进程或某个进程方法

    linux下如何批量杀JAVA进程或某个进程方法 在工作中经常需要停止JAVA进程,停止时间也比较长,那么有时候因为一些情况,需要把 linux 下JAVA所有进程 kill 掉,又不能用killal ...

随机推荐

  1. 消除视觉Transformer与卷积神经网络在小数据集上的差距

    摘要:本文通过多种操作构建混合模型,增强视觉Transformer捕捉空间相关性的能力和其进行通道多样性表征的能力,弥补了Transformer在小数据集上从头训练的精度与传统的卷积神经网络之间的差距 ...

  2. 原来的 service 命令与 systemctl 命令对比

    service [服务] start       systemctl start [unit type] 启动服务 #启动网络服务  systemctl start network.servicese ...

  3. APP安全加固怎么做?加固技术、加固方法、加固方案

    ​ 前面的文章中我们为大家介绍了移动应用安全检测的测试依据.测试方法.和测试内容,本文我们着重分享App安全加固的相关内容. ​ (安全检测内容) 通过前面的文章我们知道了app安全检测要去检测哪些内 ...

  4. 1024程序员节献礼,火山引擎ByteHouse带来三重产品福利

    更多技术交流.求职机会,欢迎关注字节跳动数据平台微信公众号,回复[1]进入官方交流.   随着信息技术飞速发展,互联网.Web3.物联网.人工智能相继出现. 在这近三十年的高速发展中,"程序 ...

  5. Nginx在windows下常用命令

    cmd 进入Nginx解压目录 执行以下命令 start nginx : 启动nginx服务 nginx -s reload :修改配置后重新加载生效 nginx -s reopen :重新打开日志文 ...

  6. Solon Aop 特色开发(2)注入或手动获取Bean

    Solon,更小.更快.更自由!本系列专门介绍Solon Aop方面的特色: <Solon Aop 特色开发(1)注入或手动获取配置> <Solon Aop 特色开发(2)注入或手动 ...

  7. ME31K 创建框架协议

    1业务说明 在实际业务需求中,需要和供应商签订协议. 此文档使用BAPI:BAPI_CONTRACT_CREATE创建协议 2前台实现 事务代码:ME31K 输入抬头信息 行项目 行项目详细内容 保存 ...

  8. 如何在传统前端项目中进行javascript模块化编程,并引入使用vue.js、element-ui,并且不依赖nodejs和webpack?

    最近接手一个Web三维项目,前后端分离,前端是传统的前端项目,但又是模块化的开发方式,在修改的过程中,我需要做一些增删改查的功能,又想尽可能少的写css.尽可能少的直接操作DOM元素,所以引入了ele ...

  9. secure boot(三)secure boot的签名和验签方案

    简介 FIT 格式支持存储镜像的hash值,并且在加载镜像时会校验hash值.这可以保护镜像免受破坏,但是,它并不能保护镜像不被替换. 而如果对hash值使用私钥签名,在加载镜像时使用公钥验签则可以保 ...

  10. element-ui实现部分引用

    1.首先安装 babel-plugin-component组件: 2.修改babel.js配置 1 module.exports = { 2 presets: [ 3 '@vue/app', 4 [' ...