注意事项

  • 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. 数据库运维家中常备:上限约400MB/s,比COPY等工具还好用的数据利器

    摘要:随着数据仓库业务的发展,GDS使用场景日益增多,这就要求GDS仍要不断迭代,充分深入挖掘用户需求,提高产品化程度. 1. GDS定位 GDS是GaussDB(DWS)提供的一个数据导入导出工具, ...

  2. 多领域应用落地,火山引擎ByteHouse加速云数仓升级

    更多技术交流.求职机会,欢迎关注字节跳动数据平台微信公众号,回复[1]进入官方交流群   近日,火山引擎数智平台VeDI直播活动「超话数据」在线举办,来自火山引擎的产品及解决方案专家分享了以ByteH ...

  3. Solon 开发调试时能热更新吗?

    1.调试模式 开启"调试模式"后,支持动态模板文件.静态资源文件可以实现动态更新.增加启动参数即可开启: --debug=1 使用 solon-test 进行单元测试时,会自动添加 ...

  4. Java 匿名函数的概念和写法

    匿名函数的实现 1.定义一个函数式接口.只有一个抽象方法的接口就是函数式接口 //1.定义一个函数式接口.只有一个抽象方法的接口就是函数式接口 interface ILike { void hit(l ...

  5. Java Bean 注册对象

    注册对象 POM.xml <dependency> <groupId>cn.hutool</groupId> <artifactId>hutool-al ...

  6. hystrix.stream dashboard

    9001 POM.XML <?xml version="1.0" encoding="UTF-8"?> <project xmlns=&quo ...

  7. MyBatis ORA-01465: 无效的十六进制数字

    MyBatis 在插入 Oralce 时报:ORA-01465: 无效的十六进制数字 解决方法: # 插入或更新时 String -> BLOB字段:RAWTOHEX(#{字段名}) Strin ...

  8. Windows 安装 MySQL 5.7 x64 位

    设置MySQL 创建数据库,默认为UTF-8 下载地址:https://downloads.mysql.com/archives/installer/ 安装 网站上只有 x86 没有 x64 位,之前 ...

  9. 【docker】运维相关名词 Iaas-Paas和Saas docker镜像设置 启动与停止常用命令 镜像相关命令 容器相关命令

    目录 上节回顾 今日内容 1 什么是Iaas-Paas和Saas 2 docker 启动设置镜像 2.1 启动与停止常用命令 3 镜像相关命令 4 容器相关命令 练习 上节回顾 # 1 flask-s ...

  10. java编译期和运行期和string原理

     编译期:   是指把源码交给编译器编译成计算机可以执行的文件的过程.在Java中也就是把Java代码编成class文件的过程.编译期只是做了一些翻译功能,并没有把代码放在内存中运行起来,而只是把代码 ...