OceanBase—02(入门篇——对于单副本单节点,由1个observer扩容为3个observer集群)——之前的记录,当初有的问题未解决,目前新版未尝试

OceanBase---02(入门篇------对于单副本单节点,由1个observer扩容为3个observer集群)------之前的记录,有的问题未解决,新版未尝试

  • 1、前言---安装单副本单节点集群
    • [1.1 docker安装OB](#1.1 docker安装OB)
  • 2、查看现有集群情况
    • [2.1 进入容器,使用obd命令查看](#2.1 进入容器,使用obd命令查看)
    • [2.2 连接OB,查看节点信息等](#2.2 连接OB,查看节点信息等)
      • [2.2.1 __all_server](#2.2.1 __all_server)
      • [2.2.2 DBA_ob_servers](#2.2.2 DBA_ob_servers)
    • [2.3 查看现有资源规格、租户等情况](#2.3 查看现有资源规格、租户等情况)
  • 3、扩容,增加observer节点,先增加zone
    • [3.1、添加 zone2、zone3,并启动zone2、zone3](#3.1、添加 zone2、zone3,并启动zone2、zone3)
      • [3.1.1 查看当前zone的情况](#3.1.1 查看当前zone的情况)
      • [3.1.1 添加 zone2,并启动zone2](#3.1.1 添加 zone2,并启动zone2)
      • [3.1.2 添加 zone3,并启动zone3,并查看添加后的zone_list](#3.1.2 添加 zone3,并启动zone3,并查看添加后的zone_list)
  • [4. 安装新的OBserver](#4. 安装新的OBserver)
    • [4.1 创建目录(备用)](#4.1 创建目录(备用))
    • [4.2 安装rpm包(先安装依赖库)](#4.2 安装rpm包(先安装依赖库))
    • [4.3 配置环境变量](#4.3 配置环境变量)
    • [4.4 启动 observer 进程](#4.4 启动 observer 进程)
      • [4.4.1 获取集群ID](#4.4.1 获取集群ID)
      • [4.4.2 获取网卡名](#4.4.2 获取网卡名)
      • [4.4.3 启动进程](#4.4.3 启动进程)
    • 4.5
  • 5、遇到的问题
    • [5.1 deploy 失败](#5.1 deploy 失败)
    • [5.2 启动 observer 进程报错](#5.2 启动 observer 进程报错)
      • [5.2.1 错误描述](#5.2.1 错误描述)
      • [5.2.1 解决问题](#5.2.1 解决问题)
    • [4.2 ERROR 4012 (HY000): Timeout](#4.2 ERROR 4012 (HY000): Timeout)
      • [4.2.1 问题描述](#4.2.1 问题描述)
      • [4.2.2 解决问题](#4.2.2 解决问题)
    • [4.1 问题1---执行添加observer失败](#4.1 问题1—执行添加observer失败)
      • [4.1.1 问题详细](#4.1.1 问题详细)
      • [4.1.2 解决问题](#4.1.2 解决问题)
    • [4.2 ERROR 4012 (HY000): Timeout](#4.2 ERROR 4012 (HY000): Timeout)
      • [4.2.1 解决问题](#4.2.1 解决问题)

1、前言---安装单副本单节点集群

1.1 docker安装OB

2、查看现有集群情况

2.1 进入容器,使用obd命令查看

  • 查看状态是否running,如果不是deploy一下,如下:

    bash 复制代码
    obd cluster list
     obd cluster deploy obcluster
     obd cluster display obcluster

2.2 连接OB,查看节点信息等

2.2.1 __all_server

  • 如下:

    bash 复制代码
    obclient -h 43.143.190.116 -P2881 -uroot@sys oceanbase -A
    sql 复制代码
    select * from __all_server;
    select * from __all_zone;

2.2.2 DBA_ob_servers

  • 如下:

    sql 复制代码
    select * from __all_server\G;
    select * from DBA_ob_servers\G;


2.3 查看现有资源规格、租户等情况

  • sql如下:

    sql 复制代码
    select * from __all_unit_config;
    select * from __all_resource_pool;
    
    select * from __all_tenant;
    select * from __all_tenant\G;


3、扩容,增加observer节点,先增加zone

3.1、添加 zone2、zone3,并启动zone2、zone3

3.1.1 查看当前zone的情况

  • 如下:

    bash 复制代码
    select * from __all_zone;

3.1.1 添加 zone2,并启动zone2

  • 命令如下:

    sql 复制代码
    alter system add zone 'zone2' region 'default_region';
    
    alter system start zone 'zone2';


3.1.2 添加 zone3,并启动zone3,并查看添加后的zone_list

  • 同理了,如下:

    sql 复制代码
    alter system add zone 'zone3' region 'default_region';
    alter system start zone 'zone3';
    
    select * from __all_zone where name in('region','status','zone_type');

4. 安装新的OBserver

4.1 创建目录(备用)

  • 如下:

    bash 复制代码
    mkdir -p /data/{observer02,observer03,obproxy}
    mkdir -p /data/observer{02,03}/store/{sort_dir,sstable,clog,ilog,slog}

4.2 安装rpm包(先安装依赖库)

  • 安装命令如下:

    bash 复制代码
    rpm -ivh ../oceanbase-ce-libs-4.0.0.0-103000022023011215.el7.x86_64.rpm
    rpm -ivh ../oceanbase-ce-4.0.0.0-103000022023011215.el7.x86_64.rpm


  • 默认安装目录(因为这里是docker,随意安装的,就没有创建admin账号,但是安装目录默认创建了admin,如下:)

4.3 配置环境变量

  • 如下:

    bash 复制代码
    export LD_LIBRARY_PATH=/home/admin/oceanbase/lib:$LD_LIBRARY_PATH LD_PRELOAD=''

4.4 启动 observer 进程

4.4.1 获取集群ID

  • 如下:

    bash 复制代码
    SHOW PARAMETERS LIKE 'cluster_id'

4.4.2 获取网卡名

4.4.3 启动进程

  • 进入安装的 bin 目录,启动进程,如下:

    bash 复制代码
    ./observer -r "43.143.190.116:3882:3881"  -z 'zone2' -n 'obcluster' -p 3881 -P 3882 -c 1 -d /data/observer02/store -i docker0 -l WARN o 'memory_limit=8GB,datafile_disk_percentage=85'

4.5

5、遇到的问题

5.1 deploy 失败

  • 如下:

    bash 复制代码
    [ERROR] Another app is currently holding the obd lock.
  • 解决问题,display一下,如下

5.2 启动 observer 进程报错

5.2.1 错误描述

  • 详细错误如下:

5.2.1 解决问题

  • 解决错误,如下:
    • 配置环境变量,然后再启动observer进程

      bash 复制代码
      export LD_LIBRARY_PATH=/home/admin/oceanbase/lib:$LD_LIBRARY_PATH LD_PRELOAD=''

4.2 ERROR 4012 (HY000): Timeout

4.2.1 问题描述

  • 添加observer超时,如下:

4.2.2 解决问题

4.1 问题1---执行添加observer失败

4.1.1 问题详细

  • 具体问题如下图:

    sql 复制代码
    You have an error in your SQL syntax; check the manual that corresponds to your OceanBase version for the right syntax to use near 'sysyem add server

4.1.2 解决问题

  • 解决问题
    • 尝试一:
      进入容器使用ob命令,停掉集群,但发现怎么都停不了,如下:
    • 尝试二:
      杀掉容器内以及容器外的关于ob的所有进程,重新启动ob容器,如下:
  • 重新进入容器后,出现了新问题,超时,如下:

    也好,至少错误原因变了,那就解决此问题吧......

4.2 ERROR 4012 (HY000): Timeout

  • 问题描述,如上

4.2.1 解决问题

  • 解决问题:修改配置文件 config.yaml
    • 查看默认配置的文件,如下:
    • 修改后的配置文件,如下:
相关推荐
闻哥4 分钟前
Redis事务详解
java·数据库·spring boot·redis·缓存·面试
道亦无名33 分钟前
aiPbMgrSendAck
java·网络·数据库
面向对象World3 小时前
正点原子Mini Linux 4.3寸800x480触摸屏gt115x驱动
linux·服务器·数据库
dinga198510264 小时前
mysql之联合索引
数据库·mysql
微风中的麦穗4 小时前
【SQL Server 2019】企业级数据库系统—数据库SQL Server 2019保姆级详细图文下载安装完全指南
大数据·数据库·sqlserver·云计算·个人开发·运维必备·sqlserver2019
zjttsh5 小时前
MySQL加减间隔时间函数DATE_ADD和DATE_SUB的详解
android·数据库·mysql
顾北125 小时前
SpringCloud 系列 04:Gateway 断言 / 过滤器 / 限流 一站式落地指南
java·开发语言·数据库
禹凕5 小时前
MYSQL——基础知识(NULL 值处理)
数据库·mysql
码云数智-大飞5 小时前
SQL Server 无法启动?常见原因及详细解决方法指南
数据库
8486981195 小时前
MySQL 只读库踩坑实录:为什么 INSERT/UPDATE 不报错,DELETE 却直接炸了?
数据库·mysql·hibernate