ORACLE11G实战演练--容灾与备份篇(一)_fliks0的博客-程序员秘密

技术标签: dba  oracle  数据库  

冷备

如果条件允许的情况下,可以使用传统冷备操作,步骤十分简单,停止数据库后,将需要备份的数据文件、控制文件、日志文件等拷贝一份即可。

 

热备

前提开启归档模式

 

查询一下用户对应关系,我们用SCOTT测试,所在表空间为USERS

oracle 查看用户所在的表空间:

select username,default_tablespace from dba_users order by username;

如图所示:

然后执行

alter tablespace users begin backup;

进行文件拷贝操作,可以是脚本,也可以手动复制

alter tablespace users end backup;

最后一定要end backup,否则会出现问题

如此一来就完成了对users表空间的热备操作。

 

如果想完整备份,热备生成语句如下:

select 'alter tablespace '||tablespace_name||' begin backup;' from dba_tablespaces where logging='LOGGING';

以DBA语句执行后,生成如下语句

alter tablespace SYSTEM begin backup;
alter tablespace SYSAUX begin backup;
alter tablespace UNDOTBS1 begin backup;
alter tablespace USERS begin backup;

此时在任意地点新建一个文件夹,将热备对应的DBF文件复制一份,如图:

复制完毕后,进行end backup操作,语句如下:

alter tablespace SYSTEM end backup;
alter tablespace SYSAUX end backup;
alter tablespace UNDOTBS1 end backup;
alter tablespace USERS end backup;

查看log日志,可以看到相关操作已经完成了。

 

如此,便完成了一次完整的热备操作。

 

 

恢复测试

 

(1)数据库打开状态,普通数据文件损坏的情况。

手动破坏相关dbf物理文件,用任何方式。

dba用户做全局检查点,发现已经无法访问表了。

alter system checkpoint;

恢复过程:

在offline immediate之后,我们从热备份中找到对应的文件还原。

然后进行recover。

恢复后将表空间设置为online。

 

经测试,表空间恢复成功,可以正常使用。

 

TIPS:实践过程中发现的ORA-32004警告

[[email protected] ~]$ oerr ora 32004

32004, 00000, "obsolete or deprecated parameter(s) specified for %s instance"

// *Cause:  Obsolete or deprecated parameters for this instance type

//          were specified in the SPFILE or the PFILE on the server side.

// *Action: See alert log for a list of parameters that are obsolete

//          or deprecated. Remove them from the SPFILE or the server

//          side PFILE.

---------------------

 

查看日志,发现一个不推荐的参数

在mount或open下重置该参数

alter system reset log_archive_start

重启问题即可消除

 

(2)数据库关闭的状态下,系统文件、undo表空间之类的文件损坏。

首先了解以下dbf种类

系统dbf文件:system01.dbf,sysaux01.dbf,undotbs01.dbf

数据dbf文件:users.dbf等

 

数据库关闭后,删除数据dbf文件,尝试启动数据库,发现以下问题:

将热备文件最新版复制一份过来,然后执行恢复,过程如下:

RMAN> shutdown immediate

database dismounted
Oracle instance shut down

RMAN> startup

connected to target database (not started)
Oracle instance started
database mounted
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: failure of startup command at 08/26/2019 11:21:44
ORA-01113: file 4 needs media recovery
ORA-01110: data file 4: '/U01/app/oracle/oradata/orcl/users01.dbf'

RMAN> recover tablespace users;

Starting recover at 2019-08-26 11:25:04
allocated channel: ORA_DISK_1
channel ORA_DISK_1: SID=10 device type=DISK

starting media recovery
media recovery complete, elapsed time: 00:00:00

Finished recover at 2019-08-26 11:25:05

RMAN> alter database open;
database opened

RMAN>

 

 

RMAN不完全恢复

RMAN是oracle非常强大的备份恢复工具,可以进行完全和增量备份/恢复等操作,这里只介绍最简单实用的全备份操作。

 

RMAN常用命令操作步骤

[[email protected] ~]$ rman target /

Recovery Manager: Release 11.2.0.1.0 - Production on Tue Sep 10 17:20:12 2019

Copyright (c) 1982, 2009, Oracle and/or its affiliates.  All rights reserved.

connected to target database: ORCL (DBID=1533443989)

RMAN> list backup
2> ;

using target database control file instead of recovery catalog

List of Backup Sets
===================


BS Key  Type LV Size       Device Type Elapsed Time Completion Time    
------- ---- -- ---------- ----------- ------------ -------------------
1       Full    1.05G      DISK        00:00:28     2019-08-27 14:27:11
        BP Key: 1   Status: AVAILABLE  Compressed: NO  Tag: TAG20190827T142643
        Piece Name: /U01/app/oracle/flash_recovery_area/ORCL/backupset/2019_08_27/o1_mf_nnndf_TAG20190827T142643_gp9m93s1_.bkp
  List of Datafiles in backup set 1
  File LV Type Ckp SCN    Ckp Time            Name
  ---- -- ---- ---------- ------------------- ----
  1       Full 1283459    2019-08-27 14:26:43 /U01/app/oracle/oradata/orcl/system01.dbf
  2       Full 1283459    2019-08-27 14:26:43 /U01/app/oracle/oradata/orcl/sysaux01.dbf
  3       Full 1283459    2019-08-27 14:26:43 /U01/app/oracle/oradata/orcl/undotbs01.dbf
  4       Full 1283459    2019-08-27 14:26:43 /U01/app/oracle/oradata/orcl/users01.dbf
  5       Full 1283459    2019-08-27 14:26:43 /U01/app/oracle/oradata/orcl/example01.dbf

BS Key  Type LV Size       Device Type Elapsed Time Completion Time    
------- ---- -- ---------- ----------- ------------ -------------------
2       Full    9.36M      DISK        00:00:01     2019-08-27 14:27:19
        BP Key: 2   Status: AVAILABLE  Compressed: NO  Tag: TAG20190827T142643
        Piece Name: /U01/app/oracle/flash_recovery_area/ORCL/backupset/2019_08_27/o1_mf_ncsnf_TAG20190827T142643_gp9mb7y7_.bkp
  SPFILE Included: Modification time: 2019-08-26 15:49:31
  SPFILE db_unique_name: ORCL
  Control File Included: Ckp SCN: 1283481      Ckp time: 2019-08-27 14:27:18

删除备份集

delete backupset 1; --1代表备份集序号

恢复脚本:

run
{
set until time "to_date('2019-08-27 14:27:11','YYYY-MM-DD HH24:MI:SS')";
restore database;
recover database;
}

一次生产环境的实际操作

一个老项目,多年来无人运维,需要检查一下备份情况,以备不时之需。

查看列表,发现没有备份,尝试一次全备份,发现没有在归档模式

 

为了保险起见,先做一次物理文件全备份,冷备或热备均可。

查询一下归档模式状态,果然是非归档,由于更改模式需要在mount下,所以需要重启数据库,更改后,打开数据库。

 

接下来,进入RMAN尝试备份,这次备份成功。

关于备份文件的位置:

备份语句中指定的format  > rman 中显现的configure channel device type disk format '/oracle/orclarch/%U_%d'的路径 > 闪回恢复区(如果开启闪回,则保存在$ORACLE_HOME /flash_recovery_area文件夹中>$ORACLE_HOME/dbs(如果都没有设置,则保存在这里)

 

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/fliks0/article/details/100887582

智能推荐

用java写mysql插件_写java库_weixin_39669638的博客-程序员秘密

JNI之路径初探---2上一篇博客写的是Java调用C、C++的例子,本篇就演示一下C、C++怎么调用Java的属性和方法。Java代码中提供一个静态方法给C、C++调用C、C++代码一些具体的操作细节在第一篇博客就写的比较详细了,这里就不再重复了,值得一提的是我们这里在Java层加载的...文章android_尋道2017-06-15686浏览量Java中使用JNI调用本地动态库的方法在Java...

css - flex布局space-between,元素不足时,最后一行左对齐_space-between元素不足_王小王和他的小伙伴的博客-程序员秘密

需求:当flex布局中 设置了 justify-content: space-between; 时 。 最后一行如果数量不够,则左右对齐,如果想实现最一行左对齐。则代码;// 在父元素中设置&:after { content:""; width:100px; // 这里的宽度,更改为自己子元素的宽度}...

C语言指针详解_jianming21的博客-程序员秘密

转自 https://blog.csdn.net/constantin_/article/details/79575638原文访问前言:复杂类型说明    要了解指针,多多少少会出现一些比较复杂的类型,所以我先介绍一下如何完全理解一个复杂类型,要理解复杂类型其实很简单,一个类型里会出现很多运算符,他们也像普通的表达式一样,有优先级,其优先级和运算优先级一样,所以...

Core Animation之CATransform3D:矩阵变换3D旋转_一个默默无闻的程序猿的博客-程序员秘密

关于图层的几个坐标系。对于ios来说,坐标系的(0,0)点在左上角,就是越往下,Y值越大。越往右,X值越大。一个图层的frame,它是position,bounds,anchorPoint和transform属性的一部分。设置一个新的frame将会相应的改变图层的position和bounds,但是frame本身并没有保存。position:是一个CGP

当深度强化学习遇到『羊了个yang』;AI开始研究『麻将』了?3类资料带你准备技术面试;机器学习资源列表;前沿论文 | ShowMeAI资讯日报_azimutt dbml-程序员秘密

DI-sheep 深度强化学习+羊了个羊、Mjx 麻将AI研究框架、Azimutt 实体关系图(ERD)可视化工具、mp4grep 用于转录&搜索音视频的命令行工具、MuJoCo 物理引擎高质量模型级、技术面试资源列表、神经语音合成教程、深度网络规划资源列表、机器学习资源列表、前沿论文…点击获取全部资讯

sizeof和strlen的区别_快乐的一只程序猿的博客-程序员秘密

char *arr = "What?";  int len_one = strlen(arr);  int len_two = sizeof(arr);  cout char arr[10] = "What?";              int len_one = strlen(arr);              int len_two = size

随便推点

基于ZYNQ-7000开发板的调试系列(5)_xttcps.h_zemelzhao的博客-程序员秘密

程序中断(2)这一部分是基于基于ZYNQ-7000开发板的调试系列(4)继续展开的,主要的部分是需要两个定时器开启中断开始。这一部分主要是需要使用TTC,完成2组流水灯的同时工作,两组的频率也不一致。[参考自ZYNQ7000 TRM (Page.245-249)]TTC可以完成的工作比较多,其实TTC的使用是可以控制GPIO的占空比。这个的最简单的使用例程就是做一个呼吸灯。但是需要使用到PL...

C语言基础(九)结构体_黑暗守护者的博客-程序员秘密

结构体(structure)在C语言中,我们是用结构体来存放一组类型不一样的数据。例如一个模特有身高(int)、姓名(char)、性别(bool)等。这个时候就需要用到结构体了。1.结构体的声明struct 结构体名{ 结构体成员变量1; 结构体成员变量2; ······};示例:struct person{ int height; //身高 char name[20]; //姓名 char address[50]; //地址 bool gender; //性别,

python中的主函数_在Python中定义Main函数_weixin_39600331的博客-程序员秘密

创建名为main()的函数来包含要运行的代码现在,您可以编写作为脚本由从命令行执行并导入且没有副作用的Python代码。接下来,您将学习如何编写代码并使其他程序员能轻松地理解其含义。许多语言,如C,C++,Java以及其他的一些语言,都会定义一个叫做main()的函数,当编译程序时,操作系统会自动调用该函数。此函数通常被称为入口点(entry point),因为它是程序进入执行的起始位置。相比之下...

③Java中获取文件扩展名以及文件名(不带扩展名)_ligengk的博客-程序员秘密

由于平时需要,我们经常会去获取文件的扩展名或者buda

德勤《全球AI发展白皮书》出炉!八大新趋势,三个关键技术一文扫尽【附下载】..._数据猿的博客-程序员秘密

来源:智东西(zhidxcom)数据猿官网 | www.datayuan.cn今日头条丨一点资讯丨腾讯丨搜狐丨网易丨凤凰丨阿里UC大鱼丨新浪微博丨新浪看点丨百度百家丨博客...

苹果电脑适合学python吗_千万别花冤枉钱!大学生买本得这么选!_weixin_39902184的博客-程序员秘密

最近很多大学生找我来推荐笔记本,我发现这些学生们都有一定的共性,打游戏、要求轻薄、要求性价比高,要求做设计、所以这篇文章,我就为大家进行分类讲解,争取让大家不花冤枉钱,能够找到自己想要的那款笔记本。大学文科类专业笔记本电脑推荐:以轻巧为主文科(法学、哲学、哲学、经济学、教育学、文学、历史学)一般对性能要求不高,大部分情况主要做文件查阅和资料整理,一般普通笔记本即可。但是照顾到女生较多,所以轻薄好看...

推荐文章

热门文章

相关标签