备份恢复学的这么差,试用期你都过不了

本文涉及的产品
日志服务 SLS,月写入数据量 50GB 1个月
简介: 备份恢复学的这么差,试用期你都过不了

一、 数据库故障类型



1)user process failure 用户进程故障:pmon 自动处理
2)instance failure 实例故障: smon 自动处理
3)user errors 用户 错误: 需要 dba 通过备份恢复解决
4)media failure 介质故障: 必须通过备份和日志恢复
总结:备份恢复主要是用于保护数据(介质、用户、应用程序导致)、保留数据、传输数据


二、 备份恢复分类


0661c1a413ec45c6bf22ddc6a03944d9.png


ef85b30d7aa044e7a11ff0f669ebc000.png




还原即Restore(重储),恢复即是Recover(恢复)


2.1 逻辑备份与恢复


①传统的导入导出:exp/imp:
②数据泵导入导出:expdp/impdp
面向 object,逻辑备份就是热备数据库对象某一时刻状态,
不能运用在 media failure 上,逻辑备份的恢复就是还原备份,没有 recover 的概念。


2.2 物理备份与恢复


面向 media failure
①手工备份与恢复,也叫用户管理的备份与恢复(UMAN),
通过 OS 的命令,完成备份与还原,然后再运用日志进行恢复。
②自动备份与恢复,利用 oracle 的备份恢复工具 RMAN,使还原与恢复过程自动完成。
物理备份从方式上可以有 一致性备份(冷备) 和 非一致性备份(热备)
完整的备份策略应该以物理备份为主,逻辑备份为辅(用于备份一些重要的表)


2.3 闪回技术


一种利用 undo 数据或闪回日志的快速恢复技术。
可以针对不同层面问题进行逻辑恢复,
11g 支持七种 flashback 方式,
其中快速恢复区只和闪回数据库有关。


三、完全恢复与不完全恢复



1)完全恢复:
利用完整备份或部分备份,可以将 datafile 
恢复到 failure 前得最后一次 commit,不会出
现数据丢失。
2)不完全恢复
需要运用完整备份和日志将 database 
恢复到过去的某个时间点(或 SCN),有数据丢失。


四、备份策略


37304ee4ee3f425b866626586b96674d.png


备份策略:每周日执行0级全备份,周一至周六每天执行1级增量备份
配置保留策略 reduncancy 2,
开启控制文件自动备份
RMAN> show all;
CONFIGURE RETENTION POLICY TO REDUNDANCY 2;
CONFIGURE CONTROLFILE AUTOBACKUP ON;

860c7befc2a646af942421e323d687d1.png


4.1 备份脚本


--创建存放脚本的目录
mkdir /home/oracle/scripts
--创建全备份脚本
vi /home/oracle/scripts/rman_level0.sh
#!/bin/bash
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/dbhome_1
export ORACLE_SID=PROD
PATH=/usr/sbin:$PATH; export PATH
PATH=$ORACLE_HOME/bin:$PATH; export PATH
rman target / << EOF
run{
crosscheck backup;
allocate channel c1 device type disk;
allocate channel c2 device type disk;
backup incremental level 0 database format '/u01/backup/rman/db_%U.bak'
plus archivelog format '/u01/backup/rman/ar_%U.bak';
backup current controlfile format '/u01/backup/rman/ctl_%U.bak';
report obsolete device type disk;
delete noprompt obsolete device type disk;
delete noprompt expired backup device type disk;
release channel c1;
release channel c2;
}
EOF
exit
CROSSCHECK命令:用于核对磁盘和磁带上的备份文件
状态为:AVALIABLE、UNAVALIABLE、EXPIRED
赋予权限
chmod a+x /home/oracle/scripts/rman_level0.sh
chmod a+x /home/oracle/scripts/rman_level1.sh


4.2 编写 crontab 计划任务


测试环境 整点进行全备份,每 15 分钟增量备份一次
0 * * * * /home/oracle/scripts/rman_level0.sh >> /u01/backup/rman/PROD_rman_L0_`date
+\%Y\%m\%d_\%H\%M\%S`.log 2>&1
15,30,45 * * * * /home/oracle/scripts/rman_level1.sh >>
/u01/backup/rman/PROD_rman_L1_`date +\%Y\%m\%d_\%H\%M\%S`.log 2>&1
查看备份情况是否正常,查看相关备份日志。
查看 obsolete 备份、归档是否删除正常。
 select a.TIME_TAKEN_DISPLAY as "用时",
       a.INPUT_BYTES_DISPLAY "大小",
       a.INPUT_BYTES_PER_SEC_DISPLAY as "速度",
       a.INPUT_TYPE "备份类型",
       to_char(start_time, 'day') day1,
       to_char(start_time, 'yyyy-mm-dd hh24:mi:ss') as "开始时间",
       to_char(end_time, 'yyyy-mm-dd hh24:mi:ss') "结束时间",
       output_device_type,
       status,
       input_type
  from V$RMAN_BACKUP_JOB_DETAILS a
相关实践学习
日志服务之使用Nginx模式采集日志
本文介绍如何通过日志服务控制台创建Nginx模式的Logtail配置快速采集Nginx日志并进行多维度分析。
目录
相关文章
|
2月前
|
存储 关系型数据库 数据库
数据备份和恢复的常见技术
【10月更文挑战第28天】数据备份和恢复的常见技术
|
6月前
|
SQL 关系型数据库 分布式数据库
PolarDB产品使用问题之备份下载链接有效时间如何延长
PolarDB产品使用合集涵盖了从创建与管理、数据管理、性能优化与诊断、安全与合规到生态与集成、运维与支持等全方位的功能和服务,旨在帮助企业轻松构建高可用、高性能且易于管理的数据库环境,满足不同业务场景的需求。用户可以通过阿里云控制台、API、SDK等方式便捷地使用这些功能,实现数据库的高效运维与持续优化。
|
8月前
|
存储 弹性计算 关系型数据库
规划阿里云RDS跨区迁移业务需求数据量与迁移时间预估
规划阿里云RDS跨区迁移业务需求数据量与迁移时间预估
83 4
|
SQL 存储 运维
使用NineData实现企业级数据库备份, 数据备份告别“拆盲盒” ?
NineData 是玖章算术公司出品的“多云数据管理平台”,提供了包括SQL开发、数据备份、数据复制及数据对比等一系列数据管理能力,下面我们主要来唠一唠小八的救星“数据备份”。
217 0
使用NineData实现企业级数据库备份, 数据备份告别“拆盲盒” ?
|
关系型数据库 数据库 文件存储
数据恢复比备份费时的五个原因
备份数据可能很快,但由于访问备份并将其恢复到实时网络上需要几个步骤,恢复速度可能会很慢。
200 0
|
存储 弹性计算 安全
阿里云服务器管理必备技能:快照策略为数据备份
阿里云服务器快照,是一个很好的备份容灾工具,不了解的可以先了解一下: 快照可以做什么?这是一种便捷高效的数据保护服务手段,可以对重要业务数据进行备份,来应对误操作、攻击、病毒等导致的数据丢失风险。假设你中招后所有数据被加密,就不用担心,重置服务器后加载之前的快照就能恢复。
阿里云服务器管理必备技能:快照策略为数据备份
|
MySQL 关系型数据库 数据库
我的网站搭建: (第二天) 数据库选型
 上一篇记录的是模型设计,也就是博客展示的基本功能,那么这些模型在进行数据迁移的时候就会产生数据。如何有效地保存好这些数据,这就是每一个开发者都值得去斗智斗勇的一件事,如防止跨站攻击,反爬虫等。
1378 0