当前位置: 首页 > 编程日记 > 正文

17.08.17

控制文件

丢失部分控制文件:

SQL> select * from v$controlfile;

$ >/u01/app/oracle/oradata/orcl/control01.ctl

SQL> select * from v$tablespace;           报错

SQL> alter system checkpoint;                报错

$ vi /u01/app/oracle/diag/rdbms/orcl/orcl/trace/alert_orcl.log

SQL> shutdown abort

SQL> startup nomount

SQL> show parameter control_files

$ cp /u01/app/oracle/fast_recovery_area/orcl/control02.ctl /u01/app/oracle/oradata/orcl/control01.ctl

SQL> alter database mount;

SQL> alter database open;

 

丢失全部控制文件(有自动备份):

RMAN> CONFIGURE CONTROLFILE AUTOBACKUP ON;

RMAN> backup datafile 4;

$ >/u01/app/oracle/oradata/orcl/control01.ctl

$ >/u01/app/oracle/fast_recovery_area/orcl/control02.ctl

SQL> select * from v$tablespace;           报错

SQL> alter system checkpoint;                报错

SQL> shutdown abort

SQL> startup nomount

RMAN> restore controlfile from autobackup;

RMAN> alter database mount;

RMAN> recover database;

RMAN> alter database open resetlogs;

 

丢失全部控制文件(没有自动备份):

SQL> alter database backup controlfile to '/home/oracle/control.bak';

SQL> alter database backup controlfile to trace;

SQL> select * from v$diag_info;

spfile

有自动备份:

RMAN> CONFIGURE CONTROLFILE AUTOBACKUP ON;

RMAN> backup datafile 4;

联机恢复:

$ mv $ORACLE_HOME/dbs/spfileorcl.ora $ORACLE_HOME/dbs/spfileorcl.ora.bak

SQL> alter system set resource_limit=true;   报错

SQL> create spfile='/home/oracle/spfile.bak' from memory;

$ mv /home/oracle/spfile.bak $ORACLE_HOME/dbs/spfileorcl.ora

脱机恢复:

SQL> shutdown immediate

$ mv $ORACLE_HOME/dbs/spfileorcl.ora $ORACLE_HOME/dbs/spfileorcl.ora.bak

RMAN> startup

RMAN> restore spfile from '/u01/app/oracle/fast_recovery_area/ORCL/autobackup/2015_10_26/o1_mf_s_894118741_c2vkgo8x_.bkp';

RMAN> startup force

 

没有备份:

利用alert_orcl.log中的参数值,构造initorcl.ora

SQL> create spfile='/home/oracle/spfile.bak' from pfile;

利用备份init.ora

$ vi /u01/app/oracle/product/11.2.0/db_1/dbs/init.ora       完善参数

SQL> startup pfile='/u01/app/oracle/product/11.2.0/db_1/dbs/init.ora'

SQL> create spfile from pfile;

redo log

丢失一个成员:

SQL> select GROUP#, MEMBERS from v$log;

SQL> select GROUP#, MEMBER from v$logfile;

SQL> alter database add logfile member '/home/oracle/redo01b.log' to group 1;

SQL> alter database add logfile member '/home/oracle/redo02b.log' to group 2;

SQL> alter database add logfile member '/home/oracle/redo03b.log' to group 3;

SQL> alter system switch logfile;

SQL> alter system switch logfile;

SQL> alter system switch logfile;

故障:

SQL> select group#, status from v$log;           确认current

$ rm -f /home/oracle/redo02b.log                  删除current组成员

SQL> alter system switch logfile;

$ vi /u01/app/oracle/diag/rdbms/orcl/orcl/trace/alert_orcl.log      警告日志

恢复:

SQL> alter database drop logfile member '/home/oracle/redo02b.log';

SQL> alter database add logfile member '/home/oracle/redo02b.log' reuse to group 2;

如果是当前日志组,不能删除成员,只能先切换再修改

 

丢失inactive日志组:

故障:

SQL> alter system checkpoint;

SQL> select group#, status from v$log;           确认inactive

SQL> shutdown abort

$ rm -f /home/oracle/redo03b.log /u01/app/oracle/oradata/orcl/redo03.log

$ startup          报错

恢复:

SQL> startup mount

SQL> select group#, status, archived from v$log;

SQL> alter database clear logfile group 3;

SQL> alter database open;

如果日志未归档:

SQL> alter database clear unarchived logfile group 3;

做数据库的全备份

 

丢失current日志组(正常关闭数据库):

故障:

SQL> select group#, status from v$log;           确认current

SQL> shutdown immediate

$ rm -f /home/oracle/redo02b.log /u01/app/oracle/oradata/orcl/redo02.log

SQL> startup            报错

恢复:

SQL> startup mount

SQL> select group#, status , archived from v$log;

SQL> alter database clear unarchived logfile group 2;

SQL> alter database open;

做数据库的全备份

 

丢失current日志组(非正常关闭数据库):

故障:

RMAN> backup database;

SQL> create table t1(x varchar2(50));

SQL> insert into t1 values ('after backup, before archived');

SQL> commit;

SQL> alter system switch logfile;

SQL> insert into t1 values ('after backup, after archived, current');

SQL> commit;

SQL> insert into t1 values ('after backup, after archived, current, uncommitted');

SQL> alter system checkpoint;

SQL> shutdown abort

$ rm -f /home/oracle/redo03b.log /u01/app/oracle/oradata/orcl/redo03.log

SQL> startup            报错

SQL> select group#, sequence#, status, archived from v$log;        确认日志序号

恢复:

RMAN> run {

startup force mount;

set until sequence 10;

restore database;

recover database;

alter database open resetlogs;}

SQL> select * from t1;              丢失数据

 

丢失active日志组:

 

恢复数据块

故障:

SQL> create tablespace tbs01 datafile '/home/oracle/tbs01.dbf' size 5M;

SQL> create table t1 tablespace tbs01 as select * from dba_objects where rownum<=30000;

RMAN> backup tablespace tbs01;

SQL> alter system flush buffer_cache;

$ dd of=/home/oracle/tbs01.dbf bs=8k conv=notrunc seek=300<<EOF

                                                                         不截断      第300个数据块

SQL> select count(*) from t1;          报错

$ dbv file='/home/oracle/tbs01.dbf'

恢复:

SQL> select file#, block# from v$database_block_corruption;

RMAN> recover datafile 6 block 300;

RMAN> recover corruption list;

 

DBMS_REPAIR包隔离数据块

rman恢复目录

SQL> show parameter control_file_record_keep_time

 

dbca创建数据库rc(不配置emfra200M内存,字符集unicode

或者:

netca创建主机连接字符串rc指向自身。

 

rc

$ sqlplus sys/password@rc as sysdba

SQL> create tablespace rc_tbs datafile '/home/oracle/rc_tbs.dbf' size 50M;

SQL> create user rcowner identified by password default tablespace rc_tbs quota unlimited on rc_tbs;

SQL> grant recovery_catalog_owner to rcowner;

 

$ rman catalog rcowner/password@rc

RMAN> create catalog;

$ rman target sys/password@orcl catalog rcowner/password@rc

$ rman target / catalog rcowner/password@rc

RMAN> register database;

 

dbca删除rc

转载于:https://www.cnblogs.com/Zhang-x/p/7395423.html

相关文章:

用C#实现基于TCP协议的网络通讯

TCP协议是一个基本的网络协议&#xff0c;基本上所有的网络服务都是基于TCP协议的&#xff0c;如HTTP,FTP等等&#xff0c;所以要了解网络编程就必须了解基于TCP协议的编程。然而TCP协议是一个庞杂的体系&#xff0c;要彻底的弄清楚它的实现不是一天两天的功夫&#xff0c;所幸…

Java NIO系列教程(二) Channel

为什么80%的码农都做不了架构师&#xff1f;>>> Java NIO的通道类似流&#xff0c;但又有些不同&#xff1a; 既可以从通道中读取数据&#xff0c;又可以写数据到通道。但流的读写通常是单向的。通道可以异步地读写。通道中的数据总是要先读到一个Buffer&#xff0…

百度CTO王海峰博鳌解读AI“融合创新”,算力算法数据发挥综合作用

4月18至21日&#xff0c;博鳌亚洲论坛2021年年会在海南博鳌举行。19日下午&#xff0c;百度CTO王海峰受邀参加本届博鳌年会“后疫情时代的人工智能”为主题的圆桌论坛。与公钥加密技术之父、图灵奖得主惠特菲尔德迪菲&#xff0c;阿斯利康公司董事长雷夫约翰森等多位专家和企业…

Java开发工具(Eclipse中内容辅助键的使用)

* A:Alt/ 起提示作用* B:mainalt/,sysoalt/,给出其他提示* C:补充输出语句,选中需要输出的部分,alt/选择最后一项即可* C:定义自己的alt / * windows--perference-Java-Editor-Templates--New * A:新建 ctrl n(new)* B:格式化 ctrlshiftf(format)* C:导入包 ctrlshifto *…

常用的css3的新属性

2019独角兽企业重金招聘Python工程师标准>>> 作为前端开发人员&#xff0c;如果你还不知道或还没有接触过CSS3&#xff0c;那么你真的OUT了&#xff01;就像蒸汽机的发明标志工业革命的开始一样&#xff0c;CSS3和HTML5的出现&#xff0c;将会带来WEB前端开发以及互…

高效分页存储过程

存储过程与页面调用如下&#xff1a; CREATE PROCEDURE search_sptblName varchar(255), -- 表名 strGetFields varchar(1000) *, -- 需要返回的列 fldName varchar(255), -- 排序的字段名 PageSize int 10, -- 页尺寸 PageIndex int , -- 页码 doCount bit 0, -- 返回记录…

2020年企业业务营收同比增长23.0%,华为的数字化转型实践之道

近日&#xff0c;在华为分析师大会期间&#xff0c;华为举办“共创行业新价值”主题峰会&#xff0c;与来自全球的400多名行业分析师、财经分析师、各行业意见领袖及媒体现场参会&#xff0c;分享了对行业趋势的洞察&#xff0c;解决方案在具体行业场景中的实践与探索&#xff…

Neo4j - CQL简介

CQL代表Cypher查询语言。 像Oracle数据库具有查询语言SQL&#xff0c;Neo4j具有CQL作为查询语言。 Neo4j CQL - 它是Neo4j图形数据库的查询语言。它是一种声明性模式匹配语言它遵循SQL语法。它的语法是非常简单且人性化、可读的格式。常用的Neo4j CQL命令&#xff1a; NO.CQL…

String.Format格式说明

C#格式化数值结果表 字符 说明 示例 输出 C货币string.Format("{0:C3}", 2)&#xff04;2.000D十进制string.Format("{0:D3}", 2)002E科学计数法1.20E0011.20E001G常规string.Format("{0:G}", 2)2N用分号隔开的数字string.Format("{…

Azure 中国四年扩容 12 倍还不够,微软放话:全球每年新建 50-100 数据中心!

作者 | 伍杏玲出品 | AI科技大本营&#xff08;ID:rgznai100&#xff09;数据已渗透到我们生活和工作的方方面面&#xff0c;如今全球正处于经济发展转型与变革的关键时期&#xff0c;数据作为数字经济的核心生产要素&#xff0c;无疑建设先进的数据中心是科技企业的硬核 IT 实…

.NET中多线程的使用

为什么80%的码农都做不了架构师&#xff1f;>>> 1、不需要传递参数&#xff0c;也不需要返回参数。启动一个线程最直观的办法是实用Thread类。 2、ThreadStart类型的委托&#xff0c;这个委托制定了线程需要执行的方法&#xff1a;method。ThreadStart这个委托定义…

[数位dp] spoj 10738 Ra-One Numbers

题意&#xff1a;给定x、y。为[x,y]之间有多少个数的偶数位和减去奇数位和等于一。个位是第一位。 样例&#xff1a; 101-01 所以10是这种数 思路&#xff1a;数位dp[i][sum][ok] i位和为sum 是否含有前导0. 然后就是由于有负数 所以依据范围把0设置为100 然后最后和等于101则为…

VML 画统计 柱状、饼图、折线

<!-- --><!-- 涉及文件 alt.js / function.asp--><!-- 必须包含页面所有代码 --><!-- 高度定义有待改进 chart_top --> <html xmlns:v"urn:schemas-microsoft-com:vml" xmlns:o"urn:schemas-microsoft-com:office:office">…

在Ubuntu下FFmpeg编译,支持x264和x265(HECV)

所有下载的源在Ubuntu下FFmpeg编译&#xff0c;支持x264和x265。Ubuntu 12.04FFmpeg 2.1 Release 注意&#xff1a;cmake要升级要2.8.8yasm要升级到1.2.00000. 资料&#xff1a;http://stackoverflow.com/questions/19634453/ffmpeg-how-to-generate-a-mp4-with-h-265-codecFF…

Java 程序员薪资这么高,取决于什么?

众多行业中&#xff0c;程序员当然属于高薪职业。无论是国内还是国外&#xff0c;IT行业的程序员、工程师&#xff0c;甚至连码农都要比其他行业的从业者的收入高很多&#xff01;但是Java程序员拿多少钱跟有多少经验有关系&#xff0c;但经验的多少跟年限没有必然关系。工作以…

极品:蓝丽网 - Vml图像画板.2003 web上的PhotoShop

<HTML xmlns:v><HEAD><META http-equiv"Content-Type" content"text/html; Charsetgb2312"><META name"GENERATOR" content"网络程序员伴侣(Lshdic)2004"><META name"GENERATORDOWNLOADADDRESS"…

库克踏春而来,小而美的 iPhone 全新配件问世

整理 | 苏宓出品 | CSDN&#xff08;ID&#xff1a;CSDNnews&#xff09;从乔布斯时代的「不要问消费者想要什么&#xff0c;一个企业的目标就是去创造那些消费者需要但无法形容和表达的需求」&#xff0c;到库克心中的「创新不一定是改变&#xff0c;而是做得更好」&#xff0…

嵌入式实现 微信网页版 群发信息。

为什么80%的码农都做不了架构师&#xff1f;>>> webchatHelper 一个微信群发信息的chrome扩展 咦&#xff0c;动态图片发不出&#xff1f; http://github.com/think2011/webchatHelper/raw/master/img/demo.gif 杂乱的源码地址&#xff1a;https://github.com/thi…

linux 在执行命令过程中,反单引号(`)这个符号代表的意义为何?

在一串命令中&#xff0c;在之内的命令将会被先执行&#xff0c;而且执行出来的结果将作为外部的输入信息。例如&#xff1a;uname -r 会显示出目前的内核版本&#xff0c;而我们的内核版本在/lib/modules里面&#xff0c;因此。你可以先执行uname -r 找出内核版本&#xff0c;…

C#精髓【月儿原创】第二讲 WMI完美秀出CPU编号厂商主频百分比等全部信息

说明&#xff1a;准备出一个系列&#xff0c;所谓精髓讲C#语言要点。这个系列没有先后顺序&#xff0c;不过尽量做到精。可能会不断增删整理&#xff0c;本系列最原始出处是csdn博客,谢谢关注。 C#精髓 第二讲 WMI完美秀出CPU编号厂商主频电压等全部信息 作者&#xff1a;清…

联邦学习,为何而生?

隐私数据是否早已泄露&#xff0c;而我们却毫无察觉&#xff1f;随着大数据、边缘计算、大型云计算平台和各种开源框架的发展&#xff0c;机器学习等人工智能技术以前所未有的速度应用到各个行业&#xff0c;人工智能技术带来了新的挑战&#xff0c;数据的隐私和安全引起了全世…

css控制非固定文本自动换行

不知道为什么一直记不住这个属性&#xff0c;趁有时间整理了下下&#xff01; 强制不换行p.www_52css_com {  white-space:nowrap;  } 自动换行p.www_52css_com {   word-wrap: break-word;   word-break: normal;   } 强制英文单词断行p.www_52css_com {  word-br…

认清Hadoop和Spark的这几点区别,学习时才能事半功倍

很多初学Hadoop开发的同学分不清Hadoop和Spark究竟有什么联系&#xff1f;搞不清Hadoop和Spark是两个独立的框架&#xff0c;还是必须相互依存才能完成工作&#xff1f;今天就给大家分析一下Hadoop和Spark几点区别。Hadoop和Spark各是什么&#xff1f;HadoopHadoop是一分布式系…

Visual Studio2005奇怪的bug及解决【月儿原创】

Visual Studio2005查看设计器打开失败的bug及解决 作者&#xff1a;清清月儿 主页&#xff1a;http://blog.csdn.net/21aspnet/ 时间&#xff1a;2007.3.23 在WinForm中报如下的错&#xff1a; Form1 可以进行设计&#xff0c;但不是文件中的第一个类。Visual …

Windows Azure Pack集成配置SPF

前面文章介绍了Windows Azure Pack&#xff08;WAP&#xff09;的安装以及功能介绍&#xff0c;当然&#xff0c;仅仅安装还是不够的&#xff0c;我们还需要让WAP与SCVMM集成起来&#xff0c;管理我们的Cloud。今天介绍WAP与私有云交互的一个重要组件&#xff0c;Service Provi…

最高3000元/人 , 助你成为C站红人 !

每天早上起床我都会看一眼富豪榜&#xff0c;如果上面没有我的名字&#xff0c;我就去上班&#xff0c;现在每天早上起床我都会看一眼CSDN红人榜,如果上面有我的名字,我就开始走上人生巅峰之路,如果没有,不可能没有!C站红人计划招募啦 &#xff01;最高3000元/人助你成为C站红人…

关闭所有cloudfoundry应用进程

for appname in $(cf a|grep started|cut -d " " -f 1) do cf stop $appname done 转载于:https://www.cnblogs.com/husbandmen/p/7419724.html

经典SQL自定义函数

1、确定某年某月有多少天 实现原理&#xff1a;先利用DATEDIFF取得当前月的第一天&#xff0c;再将月份加一取得下月第一天&#xff0c;然后减去1分钟&#xff0c;再取日期的 天数部分&#xff0c;即为当月最大日期&#xff0c;也即当月天数 CREATE FUNCTION DaysInMonth ( d…

Grep学习笔记

1. grep简介grep &#xff08;global search regular expression(RE) and print out the line,全面搜索正则表达式并把行打印出来&#xff09;是一种强大的文本搜索工具&#xff0c;它能使用正则表达式搜索文本&#xff0c;并把匹配的行打印出来。Unix的grep家族包 括grep、egr…

安永创新中心落子北京,聚焦5G技术赋能企业数字化转型

4月21日&#xff0c;安永北京wavespace旗舰创新中心开幕仪式暨企业数字化转型高峰论坛在北京卓著中心举行&#xff0c;该创新中心致力于赋能企业的创新转型、业务增长以及推进前沿技术的商业应用&#xff0c;聚焦组建生态联盟&#xff0c;纳入最新产业理念&#xff0c;通过互联…