OLR相关维护

官方关于OLR描述
OLR is a registry similar to OCR located on each node in a cluster, but contains information specific to each node. It contains manageability information about Oracle Clusterware, including dependencies between various services. Oracle High Availability Services uses this information. OLR is located on local storage on each node in a cluster. Its default location is in the path Grid_home/cdata/host_name.olr, where Grid_home is the Oracle Grid Infrastructure home, and host_name is the host name of the node.
OLR是类似OCR的东西,存储在集群的每个节点本地

查看OLR位置

[[email protected] cdata]# cd /etc/oracle

[[email protected] oracle]# ls -l

total 2868

drwxrwx--- 2 root oinstall    4096 Nov 24 20:00 lastgasp

drwxrwxrwt 2 root oinstall    4096 Dec 21 20:51 maps

-rw-r--r-- 1 root oinstall      96 Nov 25 18:38 ocr.loc

-rw-r--r-- 1 root root           0 Nov 24 19:58 ocr.loc.orig

-rw-r--r-- 1 root oinstall      80 Nov 24 19:58 olr.loc

-rw-r--r-- 1 root root           0 Nov 24 19:58 olr.loc.orig

drwxrwxr-x 5 root oinstall    4096 Nov 24 19:57 oprocd

drwxr-xr-x 3 root oinstall    4096 Nov 24 19:57 scls_scr

-rws--x--- 1 root oinstall 2904377 Nov 24 19:57 setasmgid

[[email protected] oracle]# more olr.loc

olrconfig_loc=/u01/app/12.1.0/grid/cdata/rac2.olr

crs_home=/u01/app/12.1.0/grid

--在部分平台olr.loc文件可能在/var/opt/oracle/目录下

[[email protected] oracle]#  ocrcheck -config -local

Oracle Local Registry configuration is :

         Device/File Name         : /u01/app/12.1.0/grid/cdata/rac2.olr

[[email protected] oracle]# ocrcheck -local

Status of Oracle Local Registry is as follows :

         Version                  :          4

         Total space (kbytes)     :     409568

         Used space (kbytes)      :        996

         Available space (kbytes) :     408572

         ID                       :  816087519

         Device/File Name         : /u01/app/12.1.0/grid/cdata/rac2.olr

                                    Device/File integrity check succeeded

         Local registry integrity check succeeded

         Logical corruption check succeeded

[[email protected] oracle]# ls -l /u01/app/12.1.0/grid/cdata/rac2.olr

-rw------- 1 root oinstall 503484416 Dec 22 12:09 /u01/app/12.1.0/grid/cdata/rac2.olr

查看OLR备份

[[email protected] oracle]# ocrconfig -local -showbackup

rac2     2013/11/24 20:02:38     /u01/app/12.1.0/grid/cdata/rac2/backup_20131124_200238.olr

备份OLR

[[email protected] oracle]# ocrconfig -local -manualbackup

rac2     2013/12/22 12:09:33     /u01/app/12.1.0/grid/cdata/rac2/backup_20131222_120933.olr

rac2     2013/11/24 20:02:38     /u01/app/12.1.0/grid/cdata/rac2/backup_20131124_200238.olr

[[email protected] oracle]# ls -l /u01/app/12.1.0/grid/cdata/rac2/

total 1908

-rw-r--r-- 1 root root  860160 Nov 24 20:02 backup_20131124_200238.olr

-rw-r--r-- 1 root root 1085440 Dec 22 12:09 backup_20131222_120933.olr

OLR异常恢复

--破坏OLR

[[email protected] oracle]# ls -l /u01/app/12.1.0/grid/cdata/rac2.olr

-rw------- 1 root oinstall 503484416 Dec 22 12:09 /u01/app/12.1.0/grid/cdata/rac2.olr

[[email protected] oracle]# /u01/app/12.1.0/grid/cdata/rac2.olr /u01/app/12.1.0/grid/cdata/rac2.olr_bak

--关闭crs

[[email protected] oracle]# crsctl stop crs

--启动crs报错

[[email protected] oracle]# crsctl start crs

PROCL-26: Error while accessing the physical storage Operating System error [No such file or directory] [2]

CRS-4000: Command Start failed, or completed with errors.

--跟踪crs启动

[[email protected] oracle]# strace crsctl start crs

……

uname({sys="Linux", node="rac2", ...})  = 0

open("/etc/oracle/olr.loc", O_RDONLY)   = 14

fstat(14, {st_mode=S_IFREG|0644, st_size=80, ...}) = 0

mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7fd8ac628000

read(14, "olrconfig_loc=/u01/app/12.1.0/gr"..., 4096) = 80

read(14, "", 4096)                      = 0

close(14)                               = 0

munmap(0x7fd8ac628000, 4096)            = 0

stat("/u01/app/12.1.0/grid/cdata/rac2.olr", 0x7fffa215a580) = -1 ENOENT (No such file or directory)

--这里可以看到先是读取/etc/oracle/olr.loc,然后获取/u01/app/12.1.0/grid/cdata/rac2.olr失败

……

--确定ohasd.bin关闭

[[email protected] cdata]# ps -ef|grep ohasd

root     15715 31578  0 14:34 pts/3    00:00:00 grep ohasd

--还原OLR

[[email protected] oracle]# ocrconfig -local -restore /u01/app/12.1.0/grid/cdata/rac2/backup_20131124_200238.olr

PROTL-35: The configured OLR location is not accessible

[[email protected] oracle]# cd /u01/app/12.1.0/grid/cdata/

[[email protected] cdata]# ls

localhost  rac12c-cluster  rac2  rac2.olr_bak

[[email protected] cdata]# touch rac2.olr

[[email protected] cdata]# chmod 600 rac2.olr

[[email protected] cdata]# ocrconfig -local -restore /u01/app/12.1.0/grid/cdata/rac2/backup_20131124_200238.olr

--确定还原成功

[[email protected] cdata]# ls -l

total 84200

drwxr-xr-x 2 grid oinstall      4096 Nov 24 19:37 localhost

drwxrwxr-x 2 grid oinstall      4096 Dec 22 09:07 rac12c-cluster

drwxr-xr-x 2 grid oinstall      4096 Dec 22 12:09 rac2

-rw------- 1 root root     503484416 Dec 22 14:29 rac2.olr

-rw------- 1 root oinstall 503484416 Dec 22 12:43 rac2.olr_bak

--启动crs

[[email protected] cdata]# crsctl start crs

CRS-4123: Oracle High Availability Services has been started.

其他OLR命令

To export OLR to a file:

# ocrconfig –local –export file_name

To import a specified file to OLR:

# ocrconfig –local –import file_name

To view the contents of the OLR file:

ocrdump -local file_name

To view the contents of the OLR backup file:

ocrdump -local -backupfile olr_backup_file_name

To change the OLR backup location:

ocrconfig -local -backuploc new_olr_backup_path

当OLR异常时,RAC节点不能正常启动,而且OLR不像OCR会定时自动备份,建议人工定时备份OLR

转:http://www.xifenfei.com/2013/12/olr%e7%9b%b8%e5%85%b3%e7%bb%b4%e6%8a%a4.html

时间: 2025-01-13 23:53:18

OLR相关维护的相关文章

让你提前认识软件开发(34):数据库的维护

第2部分 数据库SQL语言 数据库的维护 对于某些大型软件产品,一旦商用,必定会存储非常多用户信息,这就对产品所使用的数据库(下面简称业务数据库)带来了压力.为了保证业务数据库的平稳执行,须要在日常工作中对数据库做一些主要的维护操作. 业务数据库的维护规则例如以下: 1. 对业务数据库必须进行定期全量备份 业务数据库的定期备份能在数据库被意外破坏时进行高速恢复,备份策略能够依据数据增量大小採用周计划或月计划. 假如备份数据库db_100,则Oracle.Sybase和SQL Server中的操作

我的第一个python web开发框架(19)——产品发布相关事项

好不容易小白将系统开发完成,对于发布到服务器端并没有什么经验,于是在下班后又找到老菜. 小白:老大,不好意思又要麻烦你了,项目已经弄完,但要发布上线我还一头雾水,有空帮我讲解一下吗? 老菜:嗯,系统上线并不一件简单的事情,它可大可小.如果准备不充分,有可能会很多问题出现.你认为写好代码后要怎么发布? 小白:呃,完成开发后,上传到服务器,然后浏览器可以正常访问... 老菜:看来得普及一下上线的相关知识才行. 正规的产品上线一般可以按下面几个步骤来进行: 1. 开发人员自测(开发环境) 2. 测试人

gdb调试命令

本篇摘自互联网,纯属自己学习笔记,然分享给看到我的博客的人们. 用GDB调试程序 GDB是一个强大的命令行调试工具.大家知道命令行的强大就是在于,其可以形成执行序列,形成脚本.UNIX下的软件全是命令行的,这给程序开发提代供了极大的便利,命令行软件的优势在于,它们可以非常容易的集成在一起,使用几个简单的已有工具的命令,就可以做出一个非常强大的功能. 于是UNIX下的软件比Windows下的软件更能有机地结合,各自发挥各自的长处,组合成更为强劲的功能.而Windows下的图形软件基本上是各自为营,

Linux GDB程序调试工具使用简介

GDB概述 GDB是GNU开源组织发布的一个强大的UNIX下的程序调试工具.或许,各位比较喜欢那种图形界面方式的,像VC.BCB等IDE的调试,但如果你是在UNIX平台下做软件,你会发现GDB这个调试工具有比VC.BCB的图形化调试器更强大的功能.所谓"寸有所长,尺有所短"就是这个道理. 一般来说,GDB主要帮忙你完成下面四个方面的功能: 启动你的程序,可以按照你的自定义的要求随心所欲的运行程序. 可让被调试的程序在你所指定的调置的断点处停住.(断点可以是条件表达式) 当程序被停住时,

HDFS的命令行操作

1.namenode –format:格式化DFS 文件系统 2.secondaryNameNode: 运行DFS的 SecondaryNameNode 进程 hadoop secondarynamenode [-checkpoint  [force]] //当 EditLog超过规定大小( 默认64MB)时,启动检查 secondarynamenode的checkpoint 过程:如果启用 force选项,则强制执行checkpoint过程. [-geteditsize]           

Xcode调试程序

Xcode调试在iOS程序中主要有两种错误,1)一种是编译错误,编译错误一般情况下在Xcode的程序编写过程中可以被检测出来,以红色标注,并且给出错误原因的提示.2)一种是逻辑错误.而逻辑错误在我们的编码过程中是看不出来的,这些错误可以通过测试和调试找出3)警告 有关警告的内容有的时候会引起程序崩溃,因此需要对警告信息一一排查.4)在Xcode中因为系统错误或者是链接错误暂不在讨论之列. (1)有关XCODE中的调试功能1.普通调试就是在程序中加断点,然后执行单步调试并观察变量的值的过程.断点呢

深圳网站建设公司天地心网络五一放假安排

深圳网站建设公司天地心网络依据国家2014年度法定节假日安排,5月1日(星期四)- 5月3日(星期六)为五一节假日,5月4日(星期日)正式上班,假期共3天:深圳网络公司天地心网络假期工作安排如下:一.5月1日(星期四)- 5月3日(星期六)为五一节假日,假期我司将一如既往的为您提供优质.高效的问题速决服务,若您需要相关维护,请您根据天地心网络官方站提交维护工单界面(http://www.tiandixin.net/41/)要求整理维护信息,我司维护员将会尽快为您解决:二.此期间,若您问题紧急,您

第6章 ext3文件系统反删除利器ext3grep

第6章  ext3文件系统反删除利器ext3grep 只能用于ext3文件系统!!!!!!!高俊峰(高性能Linux服务器构建实战:运维监控.性能调优与集群应用(完整)) Linux作为企业级服务器,数据的安全性至关重要,任何数据的丢失和误删除都是不可容忍的.作为系统管理员,一定要有数据保护意识,不但要对服务器数据进行定期备份,而且还要具有误删除数据后将其快速恢复的技能.本章重点讲述Linux下的ext3文件系统中用于数据恢复的开源软件ext3grep.通过这个软件,可以快速.准确地恢复误删除的

Android 学习笔记之AndBase框架学习(七) SlidingMenu滑动菜单的实现

PS:努力的往前飞..再累也无所谓.. 学习内容: 1.使用SlidingMenu实现滑动菜单..   SlidingMenu滑动菜单..滑动菜单在绝大多数app中也是存在的..非常的实用..Github有位牛人将这个东西书写成了一个简单的框架..我们只需要通过引用相关的资源就能够完成一个滑动菜单的实现..有了这一层的基础..那么滑动菜单就很容易实现了..就拿我们最为熟悉的QQ来说吧..当我们进行滑动操作的时候..会有一个新的View去覆盖原本的View..我们可以通过触发新的视图上的控件来执行