OceanBase的学习与使用


简介

1. OceanBase数据库
注意这一块下载的其实是rpm包. 一般是通过下面的OAT或者是OCP工具进行安装.
有x86还有ARM两种架构. 虽然是el7结尾的, 但是发现实际上是可以使用与阿里龙蜥8.6系统的.
2. OCP
OceanBase Cloud Platform
OceanBase云平台, 可以创建管理配置监控集群,租户,并且对数据库的运行进行监控和运维.
3. OAT
OceanBase Admin tool
是OceanBase数据库进行安装的配置的控制台工具, 基本上用于进行ocp的安装
并且将服务器添加到群组,便于后续的ocp平台进行管理.
4. metadb
管理元数据的数据库实例, 一般是容器运行.
需要主要的是metadb和oat是在allinone里面的.

下载

https://www.oceanbase.com/softwarecenter-enterprise
这个地址可以进行数据库的下载. 下载完需要放置于特定的机器路径里面.

机器预处理

1. 修改机器名. hostnamectl -set-hostname
2. 修改/etc/hosts 可以预制几个IP地址便于使用.
3. 安全要求不是很高可以关闭防火墙.
4. 创建/data/1 类似的目录便于后续处理.
5. 创建ssh-kengen 创建自己的密钥.
6. 设置机器与自己的互信,便于clone使用.
7. 主机上面需要安装docker. 但是需要注意, docker仅是部分OAT和OCP.
数据库还是通过rpm二进制部署的.
8. 导入镜像,便于后续工作处理, master上面需要导入OAT的

集群机器准备

增加至少四台机器. 其中一台机器安装部署 OAT和OCP.
其他三台机器部署 observer. 在/etc/hosts 中都设置好对应的
ip hostname
然后备用.

第一步部署oat

mkdir /data_dir
# 注意我直接使用了我这边的镜像tag, 原始文档需要先docker images 获取一下,差别不是很大.
docker run -d --net=host --name oat -v /data_dir:/data --restart=always reg.docker.alibaba-inc.com/oceanbase/oat:4.0.0_bp1_20230113_x86 运行起来之后, 会监听 7000 端口.
使用浏览器打开 OAT的界面
默认的用户密码为:
admin/aaAA11__
需要注意这个密码的复杂度规则. 大小写,数字,特殊字符, 必须有至少两个.
第一次登录需要改密码, 修改为自己的密码便于使用.

第二步 添加服务器

注意, 这一块建议参照官方pdf
需要关注的是. OB产品服务和OB Server建议分开添加. 可以通过回车添加多个IP地址.
注意需要出示话配置, 可以将部分任务设置为 成功的方式进行忽略简单的错误.

第三步 部署metadb

需要注意 metadb 的安装需要先将all-in-one 里面的 metadb 的tar包
放到/data_dir/images/ 里面中 然后可以通过本地扫描的方式加载出来.
管理者工具-产品服务-组件管理-创建组件 需要再次注意的是 一方面架构要正确, 另外一方面.需要在OBserver的角色上面进行安装. 这里我的服务器是机械盘. 在创建metadb 的话 需要处理一下 io bench的执行.
INFO - (2002, "Can't connect to MySQL server on '10.110.139.250' (115)")
observer not ready, sleep 30s to try again... 其实这一步是在进行 IO测试. 解决方法:
docker exec -it metadb bash
ps -ef |grep bench 将进程kill -9 就会自动过去这一步 需要注意 机器的配置不要太低 Metadb的配置也不要太低. 不然会过不去
metadb的配置建议参照官方文档, 不要超过一半的机器配置.

第四步 安装OCP

管理者工具-产品服务-产品管理-安装产品
需要注意的是, 建议先安装完成metadb再安装OCP
安装OCP的过程中会连接metadb. 需要自己在metadb上面创建一个 meta一个monitor的租户
用来存储OCP的信息 注意这一步也需要更改配置等. 需要符合产品的配置信息. 和机器的配置. 我这边第一次安装失败了, 第二次突然就成功了,非常不理解.
也许是重启大法好.

第五步 创建集群

打开 http://ip:8080
登录OCP的平台,需要注意默认的用户密码跟oat 是一样的
admin/aaAA11__ 修改密码后登录
主要有集群, 租户, 主机等多个操作界面.
第一步先创建集群. 按照pdf进行设置. 主要是机器配置不高的情况下内存的设置情况. 可以设置管理员的密码. 别忘记了..
初始化是可以如下设置, 避免失败.
system_memory 10G
__min_full_resource_pool_memory 268435456
datafile_disk_percentage 50 我这边因为机器配置低, 无法创建租户, 需要修改一下集群的配置方法为:
mysql -h10.x.x.61 -P2883 -uroot@sys#obcluster:1675063119 -p
use oceanbase;
ALTER RESOURCE UNIT sys_unit_config MAX_CPU 4; 这样会出现一个 最小规格租户便于下一步的处理.
注意可以通过ocp上面的 租户-总览, 查看链接字符串.

第六步 创建租户

需要注意, 我这边的租户设置主要为:
1. Oracle模式
2. 字符集 UTF8MB4
3. 增加专门的配置为:
set global nls_timestamp_format='yyyy-mm-dd hh24:mi:ss.ff3';
ALTER SYSTEM SET open_cursors=1500; 注意设置sys用户的密码等.

Oracle模式的部分使用

obclient -h10.110.xxx.xxx -P2883 -uSYS@igix#obcluster:1683249647 -p

部分查询语法
show variables like '%timeout%';
select * from nls_database_parameters
select table_name from user_tables;
set global ob_trx_timeout = 3600000000;

OceanBase的学习与使用的更多相关文章

  1. 淘宝数据库OceanBase SQL编译器部分 源代码阅读--Schema模式

    淘宝数据库OceanBase SQL编译器部分 源代码阅读--Schema模式 什么是Database,什么是Schema,什么是Table,什么是列,什么是行,什么是User?我们能够能够把Data ...

  2. OceanBase中主备Rootserver如何管理切换

    主RootServer会不断给备RootServer发送lease.被RootServer收到该lease后会保存到几个变量中: int ObCheckRunnable::renew_lease(co ...

  3. Olap学习笔记

    数据仓库建设--OLAP和数据立方体概念 http://student-lp.iteye.com/blog/2263154 OLAP(On-LineAnalysis Processing)在线分析处理 ...

  4. 性能跃升50%!解密自主研发的金融级分布式关系数据库OceanBase 2.0

    小蚂蚁说: 相信大家对蚂蚁金服自主研发的金融级分布式关系数据库OceanBase的故事不再陌生了.在刚刚过去的2018年天猫双11中,成交额2135亿再次创造了新纪录,而支撑今年双11的支付宝核心链路 ...

  5. 淘宝数据库OceanBase SQL编译器部分 源代码阅读--解析SQL语法树

    OceanBase是阿里巴巴集团自主研发的可扩展的关系型数据库,实现了跨行跨表的事务,支持数千亿条记录.数百TB数据上的SQL操作. 在阿里巴巴集团下,OceanBase数据库支持了多个重要业务的数据 ...

  6. OceanBase数据库实践入门——手动搭建OceanBase集群

    前言 目前有关OceanBase功能.案例.故事的文章已经很多,对OceanBase感兴趣的朋友都想安装一个数据库试试.本文就是分享初学者如何手动搭建一个OceanBase集群.这也是学习理解Ocea ...

  7. 学习RadonDB源码(二)

    1. 为我新的一天没有放弃而喝彩 学习是一件很容易放弃的事情,因为就算是不学,我也能在现在的岗位上发光发热.可是人不就是一个热爱折腾的种群吗? 今天没有放弃不代表明天没有放弃,也许放弃的可能性大于坚持 ...

  8. 《淘宝数据库OceanBase SQL编译器部分 源码阅读--解析SQL语法树》

    淘宝数据库OceanBase SQL编译器部分 源码阅读--解析SQL语法树   曾经的学渣 2014-06-05 18:38:00 浏览1455 云数据库Oceanbase   OceanBase是 ...

  9. oceanbase数据库比赛总结

    前言 ob数据库大赛由蚂蚁金服的oceanbase团队组织,今年是第一届,宣传很广,比赛十月份开始,但早在上半年就看见大量的宣传了,比赛也是相当的卷.我们进了复赛之后感觉要卷进决赛需要付出的时间精力都 ...

  10. 开源实践 | 携程在OceanBase的探索与实践

    写在前面:选型考虑 携程于1999年创立,2016-2018年全面推进应用 MySQL 数据库,前期线上业务.前端技术等以 SQL Server 为主,后期数据库逐步从 SQL Server 转到开源 ...

随机推荐

  1. The difference of src and href

    href是Hypertext Reference的缩写,表示超文本引用.用来建立当前元素和文档之间的链接.常用的有:link.a.例如: <link href="reset.css&q ...

  2. white-space: pre-line;的坑

    html模版解析换行 这是字符串 跟标签设置white-space: pre-line: pre兼容ie8,pre-line不兼容ie 6-7 这行文字开头是没有空格的但是还是有很大的空格,代码方法截 ...

  3. NX二次开发获取当前DLL路径函数

    string GetPath();//输出程序路径 string YiNingToolPath(string DLLDir); //分割程序路径获取工具目录 HMODULE GetSelfModule ...

  4. 随便记录一些使用IDEA在ssm阶段的踩过的坑

    重命名中括号问题:需要重命名模块+目录 Intellij idea 报错:Error : java 不支持发行版本5_灵颖桥人的博客-CSDN博客_不支持发行版本5 idea中的目标字节码版本总是自动 ...

  5. OpenJudge2811:熄灯问题(枚举)

    熄灯问题 有一个由按钮组成的矩阵,其中每行有6个按钮,共5行.每个按钮的位置上有一盏灯.当按下一个按钮后,该按钮以及周围位置(上边.下边.左边.右边)的灯都会改变一次.即,如果灯原来是点亮的,就会被熄 ...

  6. vue3-使用百度地图遇到的坑-地图实例化

    1.创建地图实例 原因:在使用vue3为了只定义一次地图实例,在所有方法中使用,直接使用如下定义方式: setup() { const data = reactive({ bmap: null,}) ...

  7. 虚拟环境 venv的使用--(venv 一)

    一.引言最近在学习<Flask Web Development 2nd Edition>的时候,作者开篇就介绍如何使用 venv 来管理 Python 环境 .自我觉得作者讲的非常好,想要 ...

  8. 文件上传 upload-labs Pass-18 条件竞争

    Pass-18 条件竞争 审计源码 $is_upload = false; $msg = null; if(isset($_POST['submit'])){ $ext_arr = array('jp ...

  9. 统一观测丨使用 Prometheus 监控 E-MapReduce,我们该关注哪些指标?

    作者:闻洪 开源大数据平台E-MapReduce(简称"EMR")是云原生开源大数据平台,向客户提供简单易集成的Hadoop.Hive.Spark.Flink.Presto.Cli ...

  10. 在 Maui 中自绘组件1:绘制

    在 Maui 中自绘组件 系列文章已完结,共六篇,此为第一篇. 在 Maui 中自绘组件1:绘制 在 Maui 中自绘组件2:可绑定属性 在 Maui 中自绘组件3:事件与命令 在 Maui 中自绘组 ...