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
    • 查看默认配置的文件,如下:
    • 修改后的配置文件,如下:
相关推荐
NCIN EXPE4 小时前
redis 使用
数据库·redis·缓存
MongoDB 数据平台4 小时前
为编码代理引入 MongoDB 代理技能和插件
数据库·mongodb
极客on之路4 小时前
mysql explain type 各个字段解释
数据库·mysql
代码雕刻家4 小时前
MySQL与SQL Server的基本指令
数据库·mysql·sqlserver
lThE ANDE4 小时前
开启mysql的binlog日志
数据库·mysql
yejqvow125 小时前
CSS如何控制placeholder文字的颜色_使用--placeholder伪元素
jvm·数据库·python
oLLI PILO5 小时前
nacos2.3.0 接入pgsql或其他数据库
数据库
m0_743623925 小时前
HTML怎么创建多语言切换器_HTML语言选择下拉结构【指南】
jvm·数据库·python
pele5 小时前
Angular 表单中基于下拉选择动态启用字段必填校验的完整实现
jvm·数据库·python