首页 > 数据库 >opengauss数据库启动模式

opengauss数据库启动模式

时间:2023-04-08 16:00:49浏览次数:39  
标签:启动 standby 数据库 primary 模式 备机 opengauss 重建

一、概述

gs_ctl -M
-M后面需要跟SERVERMODE参数,表示在启动时指定数据库的启动模式。

SERVERMODE are:
  primary         database system run as a primary server, send xlog to standby server
  standby         database system run as a standby server, receive xlog from primary server
  cascade_standby database system run as a cascade standby server, receive xlog from standby server
  pending         database system run as a pending server, wait for promoting to primary or demoting to standby
                               Only used in start command
SERVERMODE的取值范围:
primary:本端以主机模式启动。
standby:本端以备机模式启动。
cascade_standby:本端以级联备机模式启动。
pending:本端处于等待状态,等待提升为主机或者备机。
比较常见的是在搭建主备时使用primary及standby这两个值,本文只讨论这两种值,其它值的后续文章会探讨

默认启动模式
如果我们使用gs_ctl启动服务时不指定SERVERMODE,默认会使用primary模式启动服务,这个在单机模式下是合适的。

二、primary及standby模式

相比PostgreSQL主备搭建的方式,MogDB并不是在备库单独创建一个standby的触发文件,然后启动服务。
MogDB需要在主库和备库以不同的模式启动,主库是primary模式启动,备库是standby启动。

主库启动命令:
gs_ctl start -D data -M primary
启动完成之后查看进程可以看到启动模式为primary

备库启动命令:
gs_ctl start -D data -M standby
启动完成之后查看进程可以看到启动模式为standby

如果备库我们没有使用-M启动模式,或者启动模式不是standby,则不会建立主备关系,此时我们不能简单通过关闭,重新以standby模式来恢复主备关系,只能使用build操作来重建备库。
所以在主备环境下启动备库一定要注意使用standby模式启动。

三、附录build

build
在主机上重建备实例或级联备实例。

参数
-b MODE 指定重建备机的模式。
mode的取值:
● full:通过全量镜像的方式重新同步 主机的数据目录。
● incremental:通过解析Xlog日志获 取主备机差异的数据进行增量修复备机。
说明:
增量重建适用于主备双主等因日志造成的不一致场景。
● 增量重建不适用于一主一备并且没有开启最大高可用的场景,此种场景下需要使用全量重建或者开启最大高可用后再进行增量重建。
● 备机数据文件损坏、数据目录丢失 等故障通过增量重建的方式无法修复,此时可通过全量重建的方式重 新修复备机。
● auto(不指定):先增量,根据失败 后是否可以再增量选择继续增量或 者全量,三次增量失败后进行全 量。
● standby_full:通过指定的备机ip和port全量重建故障备机。使用该参数时需要同时使用-C蚕食指定镜像的ip和port。
默认值:auto
说明:
重建级联备机需要加上-M cascade_standby参数。

-r, --recvtimeout=INTERVAL 指定重建过程中备机日志接收等待主机响应的超时时间。
取值范围:整型(秒)。
默认值:120秒
提示:超时时间需根据业务繁忙程度设置,业务繁忙等待主机的响应时间需加长,建议超时时间=checkpoint的执行时间+1min。

-q
重建结束后,是否自动重启。
指定参数场合,不自动重启。
未指定场合,自动重启,重启默认最大等待时间是60秒。如果在此时间内数据库未能启动成功,就会报不再等待,命令退出。
此后可以通过gs_om -t status --detail或其他查看数据库状态的命令,来确认数据库是否启动成功。

标签:启动,standby,数据库,primary,模式,备机,opengauss,重建
From: https://blog.51cto.com/u_13236892/6177600

相关文章

  • 数据库应用2023-04-08
    msqllike_vs%InMySQL,theunderscore(_)andpercentsign(%)arewildcardsusedinLIKEexpressionsforpatternmatching.Theunderscorematchesanysinglecharacter,whilethepercentsignmatchesanysequenceofzeroormorecharacters.Forexa......
  • 20230408---pg_dump: [归档 (db)] 与数据库 "xxx" 联接失败: 致命错误: 对用户"postg
    pg_dump:[归档(db)]与数据库"wpfc"联接失败:致命错误:  对用户"postgres"的对等认证失败 不修改pg_hba.conf的情况下进入postgres用户执行 cd/homemkdirpostgreschown-Rpostgres:postgres/home/postgres/chmod760/home/postgres/supostgrespg_dump-U......
  • Windows更新后双系统引导消失manjaro启动项丢失修复
    Windows更新后双系统引导消失manjaro启动项丢失修复https://blog.csdn.net/weixin_40293491/article/details/125288253manjaro双系统引导丢失https://juejin.cn/s/manjaro%E5%8F%8C%E7%B3%BB%E7%BB%9F%E5%BC%95%E5%AF%BC%E4%B8%A2%E5%A4%B1sudopacman-Sgrubsudoupdate-grub......
  • Mysql_无法删除数据库的处理方法
    问题现象使用Navicat删除数据库一直转圈定位问题执行 SHOWPROCESSLIST;  提示元数据无法被锁定执行  select*frominformation_schema.innodb_trx\G; 发现有进程一直处于运行中解决方法kill进程id 重新查看没有 Waiting进程,showdatabases; 发现库已被......
  • celery不能root用户启动解决(C_FORCE_ROOT environment)
    celery不能root用户启动解决(C_FORCE_ROOT environment)  Runningaworkerwithsuperuserprivilegeswhentheworkeracceptsmessagesserializedwithpickleisaverybadidea!IfyoureallywanttocontinuethenyouhavetosettheC_FORCE_ROOTenvironment......
  • 《渗透测试》安全开发-PHP应用&留言板功能&超全局变量&数据库操作&第三方插件引用 202
    PHPStorm:专业PHP开发IDEPhpStudy:ApacheMYSQL环境NavicatPremium:全能数据库管理工具 #数据导入-mysql架构&库表列1、数据库名,数据库表名,数据库列名2、数据库数据,格式类型,长度,键等 #数据库操作-mysqli函数&增删改查PHP函数:连接,选择,执行,结果,关闭等参考:https://......
  • openGauss安装问题及解决
    openGauss安装问题及解决安装成功示意图openGauss安装成功结果DataStudio工具安装连接成功结果安装过程中的问题及解决openEuler版本不适配开始的时候用的是openEuler22.03版本,安装过程中明显感觉各种源文件以及目录分布都不同,抱着试一试的心态继续安装。先是出现了下......
  • flask-day5——python项目高并发异步部署、uwsgi启动python的web项目不要使用全局变量
    目录一、python项目高并发异步部署二、uwsgi启动Python的Web项目中不要使用全局变量三、信号3.1flask信号3.2django信号四、微服务的概念五、flask-script六、sqlalchemy快速使用七、sqlalchemy快速使用4.1原生操作的快速使用八、创建操作数据表九、作业1、什么是猴子补丁,有什......
  • openGauss体系架构
    一、体系架构图二、Instance部分Instance部分其实主要指的是数据库运行时的内存部分。openGauss属于单进程多线程模型的数据库,客户端可以使用JDBC/ODBC/Libpq/Psycopg等驱动程序,向openGauss的后端管理线程GaussMaster发起连接请求。当GaussMaster线程接收到客户端程序发送过来的......
  • 同步合约数据到数据库经典案例1
    之前在《数字藏品发行平台的架构》里讲过,有一种架构希望以区块链的数据为核心。这样就需要将合约保存在区块链上的数据同步到数据库里,方便后续中间件接口的开发。本次我们以同步ConfirmSale事件日志为例,介绍数据同步程序开发的相关知识点。一、先上全部代码```javascriptconst{......