ICode9

精准搜索请尝试: 精确搜索
首页 > 数据库> 文章详细

【DB笔试面试734】在Oracle中,Oracle集群(RAC)的时间同步有哪几种方式?

2021-04-15 11:57:08  阅读:138  来源: 互联网

标签:同步 RAC NTP DB 集群 ntp Oracle CTSS


watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=

题目部分

在Oracle中,Oracle集群(RAC)的时间同步有哪几种方式?

     

答案部分

从Oracle 11gR2 RAC开始,Oracle集群的时间同步可以采用操作系统的NTP(Network Time Protocol)服务,也可以使用Oracle自带的服务CTSS(Cluster Time Synchronization Service)。在Oracle 11gR2前,集群的时间是由NTP同步的,而在11gR2后,Oracle引入了CTSS组件。如果NTP没有启用,那么Oracle会自动启用自己的ctssd进程来同步集群时间。

当安装程序发现NTP协议处于非活动状态时,安装集群时间同步服务将以活动模式(ACTIVE Mode)自动进行安装并同步所有节点的时间。如果发现配置了NTP,那么以观察者模式(Observer Mode)启动集群时间同步服务CTSS。

在RAC中,集群的时间应该是保持同步的,否则可能导致很多问题,例如:依赖于时间的应用会造成数据的错误,各种日志打印的顺序紊乱,这将会影响问题的诊断,严重的可能会导致集群宕机或者重新启动集群时节点无法加入集群。

NTP和CTSS是可以共存的,且NTP的优先级要高于CTSS,也就是说,如果系统中同时有NTP和CTSS,那么集群的时间是由NTP同步的,而CTSS会处于观察者模式模式,只有当集群关闭所有的NTP服务,CTSS才会处于活动模式。在一个集群中,只要有一个节点的ntp处于活动状态,那么集群的所有节点的CTSS都会处于观察者模式。

需要注意的是,要让CTSS处于活动模式,则不仅要关闭NTP服务(/sbin/service ntpd stop),还要删除/etc/ntp.conf文件(mv /etc/ntp.conf /etc/ntp.conf.bak),否则不能启用CTSS。

可以执行如下命令来关闭NTP服务,启用CTSS同步:

1/sbin/service ntpd stop 
2mv /etc/ntp.conf /etc/ntp.conf.bak
3service ntpd status
4chkconfig ntpd off

可以使用如下命令查看CTSS是否处于ACTIVE状态:

1ps -ef|grep ctss
2crsctl stat res -t -init
3crsctl check ctss

也可以查看CTSS进程的日志文件:

1$GRID_HOME/log/$HOSTNAME/ctssd/octssd.log

可以使用如下的命令来校验集群的时间:

1cluvfy comp clocksync -n all -verbose

可以执行如下命令来关闭CTSS服务,开启NTP:

1mv /etc/ntp.conf.bak /etc/ntp.conf
2service ntpd status
3/sbin/service ntpd start
4# chkconfig ntpd off
5ps -ef|grep ntp

可以使用如下的命令来重启CTSS进程:

1crsctl stop res ora.ctssd -init 
2crsctl start res ora.ctssd -init

如果在生产系统中碰到集群时间不一致,而且差异比较大的时候,CTSS或NTP服务就不能自动来同步这些时间,则此时需要手动来同步集群的时间。在集群时间差异较大的时候,会在ASM和DB的alert日志中产生了类似如下的告警信息,并生成vktm的trace文件:

1Time drift detected. Please check VKTM trace file for more details.

通过阅读相关的trace文件也可以获取时间的同步信息。

标签:同步,RAC,NTP,DB,集群,ntp,Oracle,CTSS
来源: https://blog.51cto.com/lhrbest/2707921

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有