《数据库程序员面试分类真题16.docx》由会员分享,可在线阅读,更多相关《数据库程序员面试分类真题16.docx(18页珍藏版)》请在优知文库上搜索。
1、数据库程序员面试分类真题16筒答题1. 什么是OCR?正确答案:OraCle集群使用两种类型的文件来管理集群资源和节点:OCR(OracleClusterRegistry,OraCIe集群注(江南博哥)册表)和VF(VotingFile,表决磁盘文件)。这两种文件必须存放在共享存储上。其中,OCR相当于集群的控制文件,用于解决健忘问题,VF用于解决脑裂问题。在OraCIe11.2中引入一个新的文件,称作O1.R(OraCIe1.ocalRegistry,OraCle本地注册表),它只允许存放在本地。Oracle集群软件(CIUSterWare)把整个集群的配置信息放在共享存储上,这个存储就是O
2、CR磁盘(OCRDisk)OOCR是OraCIeRAC配置信息仓库,它管理集群节点的相关信息及实例到节点的映射信息。因此,OCR的内容非常重要,对OCR的操作必须确保OCR内容完整性。在整个集群运行过程中,并不是所有节点都能操作OCR磁盘,而只有一个节点能对OCR磁盘进行读写操作,这个节点叫作MaSterNOde。在每个节点的内存中都有一份OCR内容的拷贝,这份拷贝叫作OCRCache0同时,每个节点都有一个OCRProCeSS来读写OCRCache,但只有一个节点的OCRProCeSS能读写OCR磁盘中的内容。当OCR内容发生改变时,由MasterNode的OCRProcess负责更新本地和
3、其他节点的OCRCache内容。需要注意的是,OCR和VF的信息不会被分布到多块磁盘上,如果用一块磁盘保存OCR或VF,那么一定会保存完整的OCR和VE信息。所有需要OCR内容的其他进程,比如OCSSD,EVM等都被叫作ClientProcess。这些进程不会直接访问OCRCache,而是向OCRProCeSS发送请求,借助OCRPrOCeSS获得内容。如果想要修改OCR内容,也要由该节点的OCRProcess向MasterNode的OCRProcess提交申请,由MasterOCRProcess完成物理的读写,并同步所有节点OCRCaChC中的内容。OCR的结构如下图所示。OCR中保存着整个
4、集群中绝大部分资源的配置信息,配置信息以“Key-Value”并且采用树形结构来保存,所以,并没有类似于数据文件的块的概念。在OracleClusterware安装的过程中,安装程序会提示用户指定OCR位置“用户指定的这个位置会被记录在etcoracleOCr.IoC(1.inUX或AIX)或者varoptOraCIeocr.loc(Solaris系统)文件中。OracleClUSterWare在启动时会根据这里面的内容从指定位置读入OCR内容。1.HRDBlroofdtoorade1.HR曲:roodcactekTol3160dn1111-2rootdba256Dec2914:16Iistg
5、asp11TT-1root(237Dec29IhlOocrJw-r-rIntWStefl0Dec29H:10ocr.loc.orig-PT1.1.Iroota92Dec2914:10olr.loc*11lIrootsystODec2914:10o)r.loc.origdv11wx5root256Dec2914:09OPreddmrxrx3rootia2S6D2914:SdS_Scr-11rs-Iroot&a16三7Dk2914:Segid1.HRDB3:rcet:corxtemocectoradcoalococcnng-toc=)CKi30nlyzFA1.SE其中,ocrconfigIoC指定
6、OCR的位置。如果为OCR指定了镜像(Mirror),那么还会出现选项OcrmirrorconfigJoc,用于定义OCR镜像的位置。loca_only指定是否是RAC系统,如果这个值为FA1.SE,那么表示是RAC系统,如用这个值为TRUE,那么表示是单实例系统(在使用ASV时需要)。整个OCR的信息是树形结构,有3个大分支,分别是SYSTEM、DATABASE和CRS。每个分支卜面又有许多小分支。OCR记录的信息只能由root用户修改。考点RAC2. 如何备份及恢复OCR?正确答案:与OraCIe数据库的备份恢复相似,OCR的备份也有物理备份和逻辑备份,因此有两种备份方式和两种恢复方式。物
7、理备份是自动进行的,逻辑备份需要手动进行。因为OCR的内容如此重要,所以Oracle每4个小时对其做一次物理备份,并且保留最后的3个物理备份,以及前一天、前一周的最后一个物理备份。用户不能自定义物理备份频率以及备份文件的副本数。这个备份由MaSIerNodeCRSD进程完成,备份的默认位置在$GRIDHOMEcdata目录下,也可由命令OCrConfig-ShOWbaCkUP获取备份的位置。每次备份后,备份文件名自动更改,以反映备份时间顺序,最近一次的备份叫作backupOO.Ocro这些备份文件除了保存在本地,DBA还应该在其他存储设备上保留一份,以防止意外的存储故障。备份目录可以通过命令。
8、CrConfig-backup1.ocv修改。使用OCrCOnfig-export方式产生的备份,统称为逻辑备份。对于OCR的配置发生重大的变化前后,如添加删除节点、修改集群资源、创建数据库等,都建议使用逻辑备份。对于由于错误配置而导致的OCR被损坏的情形,可以使用。CrConfig-import方式进行恢复。逻辑备份的恢复方式和物理备份的恢复方式一致,这里不再赘述。对OCR的恢复还可以采用dd、kfed及mdrestore命令进行,这里不再详述。考点RAC3. 什么是O1.R?正确答窠:OCR是用于保存CKSD所管理的资源的注册表,但是在CRSD启动之前集群还有很多初始化资源(例如ASM实例
9、)需要启动,所以,只有OCR是不够的。因此,OraCIe在IIgR2版本中推出了另一种注册表O1.R(Oracle1.ocalRegistry,OraCle本地注册表)。O1.R类似于OraCIe集群注册表,但是O1.R只存储与本地节点有关的信息。O1.R不与集群中的其他节点共享。O1.R存储了集群启动初期ohasd(OracleHighAvailabilitySerViCe)使用的重要环境,如OraCIe集群件的版本、配置等。如果O1.R丢失或损坏,那么将会导致。hasd进程启动失败。所以,O1.R的主要作用就是为。hasd守护进程提供集群的配置信息和初始化资源的定义信息。Oracle在一个
10、名为etcoracleOIr.IoC(1.inUX或AlX)或者varoptoracleolr.Ioc(Solaris系统)的文本文件中存储了O1.R配置文件的位置。当集群启动时,Ohasd会从该文件中读取O1.R的位置。对于集群环境(GlClUSter)而言,O1.R的文件名一般为$GRlDjloMEcdataVhOStname.olr,而对于单节点(GlStandalone,OracleReStart)而言,O1.R的文件名一般为SGRIDJIOME/cdata/1oca1host/下例为集群环境的配置:gridraeO2Smore/etc/oracle/olr.Iocolrconfig_
11、loc=/u01/app/l1.2.O/grid/cdata/rac02.olrcrs_home=/u01/app/l1.2.O/gridO1.R的结构仍然沿用了和OCR相同的树形结构,而且其中的信息组织形式和OCR也是相同的。所以,其维护类似于OCR的维护过程。它们产用到的维护工具有ocrconfigxocrdun和Ocrchecko其中,加上ToCal表示对O1.R的操作,否则是对OCR的操作。Docrcheck对OCR/O1.R执行快速健康检查,并输出空间使用统计信息。2)Ocrdump将OCR/O1.R的内容转储到一个操作系统文件。3)。CrCOnfig对OCR/01.R执行导入、导出
12、、添加、替换、删除、恢复和显示备份操作。考点RAC4. O1.R如何进行备份恢复?正确答案:O1.R的备份策略和OCR的有所不同,默认情况下GI在初始安装时会在路径SGRIDJOMEcdalaV节点名下产生一个备份。ErootSorclalhrorcIalhr#cdroot0orcIalhr#cdulappll.2.O/grid/cdata/orclalhrrootorclalhrorclalhr#11total5608-rw1gridoinstall5742592May12015backup_20150501_174602.olrO1.R不会被1动备份,如果在集群的一些配置信息发生改变后,需
13、要使用下面的命令手动进行备份:rootOorclathrorclalhr#ocrconfig-local-manualbackuporclalhr2017/03/0910:21:51ulappl1.2.0/grieVedata/orcla1hr/backup_20170309_l02151.olrorclalhr2015/05/0117:46:02ulappl1.2.0/grid/cdata/orc1a1hr/backup_20150501_174602.olr建议在集群的重要配置信息(例如,集群私网配置)发生改变之后,使用命令OCrConfig-local-manualbackup手动备份O
14、1.Ro当O1.R丢失之后,可以使用命令wocrconfig-local-restoreVO1.R备份文件”来恢复,不能从集群的其他节点复制O1.R到本地节点,这是因为O1.R中保存的一些信息是针对本地节点的。如果需要验证O1.R的一致性,那么可以使用OCrCheCkToCal命令。简单地说,所有适用于OCR的命令同样适用于O1.R,但是需要增加-1。Cal选项。对于O1.R的备份恢复简单过程如下(Mos:1193643.1和1368382.1):/bin/ocrconfig-local-manualbackup/bin/ocrconfig-local-showbackupps-efgrepo
15、hasd.binZbinZcrsctlstopcrs=forGIClusterbincrsctlstophas=forStandalone/bin/OerCOnfig-local-restorebincrsctlstartors=forGICluster/bin/crsctlstarthas=forGIStandalone,thismustbedoneasgriduser.考点RC5. 什么是VF(VOtingFile)?正确答案:表决磁盘(VolingDiSk)也叫仲裁盘(QUorUmDisk),表决磁盘的作用是保存VF(VotingFile,表决磁盘文件)。VF的作用是实现集群的磁盘心跳,主要用于记录节点成员状态信息,例如,包含哪些节点成员,节点添加删除信息的记录等。