当前位置: 首页 > news >正文

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

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

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

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

1.1 docker安装OB

  • 本篇文章是在上篇文章的基础上进行扩容,上篇文章——使用docker安装单副本单节点集群,如下:
    OceanBase—01(入门篇——使用docker安装OceanBase以及介绍连接OB的几种方式).

  • 这里,我是重新安装了一个mini版本的,如下:

    docker run -p 2881:2881 --name obce-mini -e MINI_MODE=0 -d oceanbase/oceanbase-ce
    

    在这里插入图片描述

2、查看现有集群情况

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

  • 查看状态是否running,如果不是deploy一下,如下:
    obd cluster listobd cluster deploy obclusterobd cluster display obcluster
    
    在这里插入图片描述

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

2.2.1 __all_server

  • 如下:

    obclient -h 43.143.190.116 -P2881 -uroot@sys oceanbase -A
    
    select * from __all_server;
    select * from __all_zone;
    

    在这里插入图片描述

2.2.2 DBA_ob_servers

  • 如下:
    select * from __all_server\G;
    select * from DBA_ob_servers\G;
    
    在这里插入图片描述
    在这里插入图片描述

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

  • 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的情况

  • 如下:
    select * from __all_zone;
    
    在这里插入图片描述

3.1.1 添加 zone2,并启动zone2

  • 命令如下:
    alter system add zone 'zone2' region 'default_region';alter system start zone 'zone2';
    
    在这里插入图片描述
    在这里插入图片描述

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

  • 同理了,如下:

    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 创建目录(备用)

  • 如下:
    mkdir -p /data/{observer02,observer03,obproxy}
    mkdir -p /data/observer{02,03}/store/{sort_dir,sstable,clog,ilog,slog}
    

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

在这里插入图片描述

  • 安装命令如下:
    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 配置环境变量

  • 如下:
    export LD_LIBRARY_PATH=/home/admin/oceanbase/lib:$LD_LIBRARY_PATH LD_PRELOAD=''
    

4.4 启动 observer 进程

4.4.1 获取集群ID

  • 如下:
    SHOW PARAMETERS LIKE 'cluster_id'
    
    在这里插入图片描述

4.4.2 获取网卡名

在这里插入图片描述

4.4.3 启动进程

  • 进入安装的 bin 目录,启动进程,如下:
    ./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 失败

  • 如下:
    [ERROR] Another app is currently holding the obd lock.
    
  • 解决问题,display一下,如下
    在这里插入图片描述

5.2 启动 observer 进程报错

5.2.1 错误描述

  • 详细错误如下:

5.2.1 解决问题

  • 解决错误,如下:
    • 配置环境变量,然后再启动observer进程
      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 问题详细

  • 具体问题如下图:
    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
    • 查看默认配置的文件,如下:
      在这里插入图片描述
    • 修改后的配置文件,如下:

相关文章:

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

OceanBase—02(入门篇——对于单副本单节点,由1个observer扩容为3个observer集群)——之前的记录,有的问题未解决,新版未尝试 1、前言—安装单副本单节点集群1.1 docker安装OB 2、查看现有集群情况2.1 进入容器&#x…...

前沿论文创新点集合

系列文章目录 文章目录 系列文章目录一、《LAMM: Label Alignment for Multi-Modal Prompt Learning》二、《MaPLe: Multi-modal Prompt Learning》三、《Learning to Prompt for Vision-Language Models》CoOp四、《MobileCLIP: Fast Image-Text Models through Multi-Modal R…...

刷题记录(好题)

Problem - D - Codeforces 思路: 滑动窗口思想,一个数组记录起始点(记录出现过的次数),另一个数组记录截至点(记录出现过的次数),从0开始遍历,设定一个长度为d的滑动窗口…...

【大数据入门 | Hive】函数{单行函数,集合函数,炸裂函数,窗口函数}

1. 函数简介: Hive会将常用的逻辑封装成函数给用户进行使用,类似于Java中的函数。 好处:避免用户反复写逻辑,可以直接拿来使用。 重点:用户需要知道函数叫什么,能做什么。 Hive提供了大量的内置函数&am…...

python sqlite3 工具函数

起因, 目的: sqlite3 最常用的函数。 比如,某人给了一个 database.db 文件。 但是你登录的时候,不知道账号密码。 此文件就是,查看这个数据库的详细内容。 有哪些表某个表的全部内容。添加数据 代码, 见注释 impor…...

顺丰Android面试题集锦及参考答案

TCP 三次握手和四次挥手是什么,挥手过程中主动方的状态是什么? TCP 三次握手是建立连接的过程: 第一次握手:客户端向服务器发送一个 SYN 报文,该报文包含客户端的初始序列号(seq=x)。此时客户端进入 SYN_SENT 状态。第二次握手:服务器收到客户端的 SYN 报文后,向客户端…...

uniapp中检测应用更新的两种方式-升级中心之uni-upgrade-center-app

uniapp一个很是用的功能,就是在我们发布新版本的app后,需要提示用户进行app更新,并告知用户我们新版的app更新信息,以使得用户能及时使用上我们新开发的功能,提升用户的实用度和粘性。注意:这个功能只能在app端使用 效…...

Python爬虫通过 Cookie 和会话管理来维持其在网站上的会话状态

Python 爬虫虽然是一个热门且非常实用的技术领域,但在实际开发中,确实存在一些困难的地方。以下是 Python 爬虫开发中常见的难点和挑战: 1. 处理反爬虫机制 许多网站为防止爬虫的恶意访问,采取了各种反爬虫措施。常见的反爬虫技…...

使用STM32单片机实现无人机控制系统

无人机控制系统是无人机的大脑,负责处理无人机的姿态控制、导航和通信等功能。本文将详细介绍如何使用STM32单片机实现无人机控制系统,包括硬件设计、软件设计、系统调试与测试等内容。 一、系统概述 无人机控制系统通常包括飞行控制器、传感器、执行器…...

【包教包会】2D图片实现3D透视效果(支持3.x、支持原生、可合批)

将去年写的SpriteFlipper从2.x升级到3.x。 如果需要2.x版本或需要了解算法思路,请移步:https://blog.csdn.net/weixin_42714632/article/details/136745051 优化功能:可同时绕X轴和Y轴旋转,两者效果会叠加。 完美适配Web、原生…...

解决nginx+tomcat宕机完美解决方案

问题描述:公司项目太老了,还是tomcat项目,部署两台tomcat,做了nginx负载。最近发现每到上午10,下午3点,tomcat就宕机了,死活找不到原因,客户影响超期差,实在让人头疼。 解决思路&am…...

第十一章 缓存之更新/穿透/雪崩/击穿

目录 一、什么是缓存 二、缓存更新策略 2.1. 缓存主动更新策略 2.1.1. Cache Aside模式(主流)‌ 2.1.2. Read/Write Through模式‌ 2.1‌.3. Write Behind模式‌ 2.1.4. 总结 三、缓存穿透 四、缓存雪崩 五、缓存击穿 5.1. 互斥锁实现 5.1.1…...

一款完全开源并免费的监测与分析系统,支持监测,预警,分析,报告,支持本地化部署(附源码)

前言 在当今这个信息爆炸的时代,企业和个人都需要时刻了解网络上的动态,以便及时了解自身品牌形象和社会舆论的变化。然而,现有的舆情监测工具往往价格昂贵,且cao作复杂,难以满足普通用户的需求。 在这种背景下&…...

python中时间函数及其应用

近段时间,因在改写以前写的学校自动铃声控制系统,又学到了一些新的知识,特记录如下: 一、时间函数基础 1、time模块中的函数及其用法 time.time(): 返回当前时间的时间戳,即自1970年1月1日以来的秒数。 time.localt…...

MoveIt2-humble】入门教程----第一个 C++ MoveIt 程序

四节教程会手把手带你写一个完整的 Moveit 控制程序,包括轨迹规划、RViz可视化、添加碰撞物体、抓取和放置。 1 创建依赖包 进入到教程所在工作空间下的src目录,创建一个新的依赖包。 ros2 pkg create \--build-type ament_cmake \--dependencies mov…...

watch命令:周期执行指定命令

一、命令简介 ​watch ​命令用于周期性地执行指定的命令,并显示其输出结果。 ‍ 二、命令参数 2.1 命令格式 watch [选项] 命令2.2 选项 ​-n, --interval​: 指定更新间隔时间(以秒为单位)。默认间隔时间为 2 秒。​-d, --difference…...

【ADC】噪声(1)噪声分类

概述 本文学习于TI 高精度实验室课程,总结 ADC 的噪声分类,并简要介绍量化噪声和热噪声。 文章目录 概述一、ADC 中的噪声类型二、量化噪声三、热噪声四、量化噪声与热噪声对比 一、ADC 中的噪声类型 ADC 固有噪声由两部分组成:第一部分是量…...

网络安全概述:从认知到实践

一、定义 网络安全,即致力于保护网络系统所涵盖的硬件、软件以及各类数据,切实保障其免遭破坏、泄露或者篡改等不良情形的发生。 二、重要性 个人层面:着重于守护个人隐私以及财产安全,为个人在网络世界中的各项活动提供坚实的保…...

Vue.js组件开发研究

摘要 随着前端技术的快速发展,Vue.js以其轻量级、高性能和组件化开发的优势,在前端开发领域占据了重要地位。本研究深入探讨了Vue.js组件开发的理论基础、开发方法以及实际应用。通过系统梳理Vue.js框架的核心特性、组件化思想及Vue.js组件的基本概念&am…...

OpenHarmony(鸿蒙南向开发)——轻量系统芯片移植案例(一)

往期知识点记录: 鸿蒙(HarmonyOS)应用层开发(北向)知识点汇总 鸿蒙(OpenHarmony)南向开发保姆级知识点汇总~ 持续更新中…… 轻量带屏解决方案之恒玄芯片移植案例 本文章基于恒玄科技BES2600W…...

深入浅出Asp.Net Core MVC应用开发系列-AspNetCore中的日志记录

ASP.NET Core 是一个跨平台的开源框架,用于在 Windows、macOS 或 Linux 上生成基于云的新式 Web 应用。 ASP.NET Core 中的日志记录 .NET 通过 ILogger API 支持高性能结构化日志记录,以帮助监视应用程序行为和诊断问题。 可以通过配置不同的记录提供程…...

地震勘探——干扰波识别、井中地震时距曲线特点

目录 干扰波识别反射波地震勘探的干扰波 井中地震时距曲线特点 干扰波识别 有效波:可以用来解决所提出的地质任务的波;干扰波:所有妨碍辨认、追踪有效波的其他波。 地震勘探中,有效波和干扰波是相对的。例如,在反射波…...

线程同步:确保多线程程序的安全与高效!

全文目录: 开篇语前序前言第一部分:线程同步的概念与问题1.1 线程同步的概念1.2 线程同步的问题1.3 线程同步的解决方案 第二部分:synchronized关键字的使用2.1 使用 synchronized修饰方法2.2 使用 synchronized修饰代码块 第三部分&#xff…...

Linux简单的操作

ls ls 查看当前目录 ll 查看详细内容 ls -a 查看所有的内容 ls --help 查看方法文档 pwd pwd 查看当前路径 cd cd 转路径 cd .. 转上一级路径 cd 名 转换路径 …...

React Native在HarmonyOS 5.0阅读类应用开发中的实践

一、技术选型背景 随着HarmonyOS 5.0对Web兼容层的增强,React Native作为跨平台框架可通过重新编译ArkTS组件实现85%以上的代码复用率。阅读类应用具有UI复杂度低、数据流清晰的特点。 二、核心实现方案 1. 环境配置 (1)使用React Native…...

Java多线程实现之Thread类深度解析

Java多线程实现之Thread类深度解析 一、多线程基础概念1.1 什么是线程1.2 多线程的优势1.3 Java多线程模型 二、Thread类的基本结构与构造函数2.1 Thread类的继承关系2.2 构造函数 三、创建和启动线程3.1 继承Thread类创建线程3.2 实现Runnable接口创建线程 四、Thread类的核心…...

10-Oracle 23 ai Vector Search 概述和参数

一、Oracle AI Vector Search 概述 企业和个人都在尝试各种AI,使用客户端或是内部自己搭建集成大模型的终端,加速与大型语言模型(LLM)的结合,同时使用检索增强生成(Retrieval Augmented Generation &#…...

Linux nano命令的基本使用

参考资料 GNU nanoを使いこなすnano基础 目录 一. 简介二. 文件打开2.1 普通方式打开文件2.2 只读方式打开文件 三. 文件查看3.1 打开文件时,显示行号3.2 翻页查看 四. 文件编辑4.1 Ctrl K 复制 和 Ctrl U 粘贴4.2 Alt/Esc U 撤回 五. 文件保存与退出5.1 Ctrl …...

Python+ZeroMQ实战:智能车辆状态监控与模拟模式自动切换

目录 关键点 技术实现1 技术实现2 摘要: 本文将介绍如何利用Python和ZeroMQ消息队列构建一个智能车辆状态监控系统。系统能够根据时间策略自动切换驾驶模式(自动驾驶、人工驾驶、远程驾驶、主动安全),并通过实时消息推送更新车…...

论文阅读:LLM4Drive: A Survey of Large Language Models for Autonomous Driving

地址:LLM4Drive: A Survey of Large Language Models for Autonomous Driving 摘要翻译 自动驾驶技术作为推动交通和城市出行变革的催化剂,正从基于规则的系统向数据驱动策略转变。传统的模块化系统受限于级联模块间的累积误差和缺乏灵活性的预设规则。…...