检查失效的Segment
如果启用了镜像,在发生失效时,系统中会出现失效的Segment而不会中断服务或者出现任何迹象。可以使用gpstate工具验证系统的状态。gpstate提供一个Greenplum数据库系统中每个单体组件的状态,包括主Segment、镜像Segment、Master和后备Master。
要检查失效的Segment
在Master上,用-e选项运行gpstate工具显示有错误情况的Segment:
$ gpstate -e
Change Tracking模式下的Segment表示对应的镜像Segment已经宕机。当一个Segment不是其首选角色时,该Segment没有按照系统初始化时指定给它的角色操作。这意味着系统可能处于一种不平衡的状态,因为一些Segment主机上的活动Segment比系统处于最好性能时多。
修复这种情况的指导请见从Segment失效中恢复。
要得到一个失效Segment的详细信息,可检查gp_segment_configuration目录表。例如:
$ psql -c "SELECT * FROM gp_segment_configuration WHERE status='d';"
对于失效的Segment实例,要关注其主机、端口、首选角色和数据目录。这些信息将会有助于确定要排除故障的主机和Segment实例。
要显示有关镜像Segment实例的信息,可运行:
$ gpstate -m
上级主题: 检测失效的Segment