概述
Vastbase G100是基于openGauss内核开发的企业级混合多模关系型数据库。它具有高性能的内核,能够很好的支持高压力的交易和大数据量的分析应用,甚至是混合负载场景也能应付自如。搭载的多模引擎让其在空间地理、工业自动化、社交分析、环保监测、人工智能、流计算等新兴领域也能发挥巨大贡献。
本文档为一主一备架构下高可用集群故障排查的工作指南。
专业术语
- switchover:一般是有计划以及主动的主备切换。
- failover:一般是发生故障后自动的主备切换。
- VIP:虚拟IP,在高可用集群内,与主库绑定,客户端通过VIP访问数据库服务。
常规操作说明
操作 | 命令 | 备注 |
---|---|---|
has启动命令 | systemctl start servicename | 在集群中servicename值为has |
has停止命令 | systemctl stop servicename | 在集群中servicename值为has |
has服务状态查看 | systemctl status servicename | 在集群中servicename值为has |
has状态查看命令 | sd_hasctl -c configfile list | 列出高可用集群内所有has节点信息,其中configfile表示has配置文件 |
has主备切换命令 | sd_hasctl -c configfile switchover | N/A |
has主库重启命令 | sd_hasctl –c configfile restart | 重启主端数据库 |
has pause命令 | sd_hasctl –c configfile pause | 进入维护模式,has将不再监控数据库进程情况 |
has resume 命令 | sd_hasctl –c configfile resume | 退出维护模式,需要保证没有运行数据库进程的节点的挂载点未被挂载 |
has clear 命令 | sd_hasctl –c configfile clear | 隐藏命令,用于故障中清除仲裁盘数据。不可在集群正常运行状态中使用。 |
has renew 命令 | sd_hasctl –c configfile renew [self/leader/both] | 隐藏命令,用于更新仲裁盘中自身或leader信息。不可在集群正常运行状态中使用。 |
has进程状态检查命令 | ps -ef | grep has或ps -ef | grep has | grep -v grep | 用于检查has进程是否存活。正常情况会存在3个has进程。 |
has服务日志检查命令 | journalctl -u servicename -n linenum -f | 运行异常情况下用于排查has故障情况。linenum为打印的行数,-f表示实时更新日志。 |
数据库启动命令 | vb_ctl -D $PGDATA start | N/A |
数据库停止命令 | vb_ctl -D $PGDATA stop | 如果has存活情况下停库,has会自动将数据库拉起,执行该命令确保has处于关闭状态 |
数据库状态检查命令 | vb_ctl -D $PGDATA status | 用于检查数据库是否正常 |
连接数据库 | 使用vsql客户端工具访问数据库:vsql -h vip -p port -d databasename -U username | 注意,初始化用户不具备远程登录权限,可以使用其他用户进行操作 |
查看网络接口命令 | ip addr | 查看网络接口信息 |
VIP添加命令 | ip addr add vip/netprefix brd broadcast dev devicename label devicename:1 | 此处网卡信息按照实际填写,其中vip表示虚拟ip,netprefix表示网络前缀,broadcast表示广播地址,devicename表示需要绑定虚拟ip的网络接口名称,通过该命令可以使主库通过虚拟ip继续对外提供服务 |