一、媒介
OceanBase 是一款高性能、高可扩展的分布式数据库,实用于大规模数据处理和企业级应用。
随着大数据和云盘算的普及,OceanBase 在企业数字化转型中扮演着告急角色。学习 OceanBase 可以帮助开发者把握先进的分布式数据库技术,提拔数据管理能力。利用 Docker 安装 OceanBase 简化了摆设流程,让用户无需复杂的环境配置即可快速启动,适合开发者进行实验和学习。
本文将介绍如何在 Docker 上安装 OceanBase,利用 DBeaver 连接数据库,创建库表并查询数据。
2019 年,OceanBase 数据库 V2.2 版本参加代表 OLTP 数据库最权势巨子的 TPC-C 评测,以 6000 万 tpmC 的成绩登顶天下第一。随后,在 2020 年,又以 7 亿 tpmC 革新记录。OceanBase 数据库是第一个上榜 TPC-C 的分布式数据库,也是第一个上榜的中国数据库。
这份闪耀全球的成绩单背后,隐藏着一场历时十年的“极限长征”:从阿里工程师在机房彻夜鏖战的草稿纸推演,到付出宝核心系统迁移前夕的惊险48小时;从被质疑“分布式架构无法承载金融级变乱”的至暗时刻,到以开源代码重新定义行业尺度的破局之路……
后续我们会专门开发篇章,深入陈诉 OceanBase 的发展进程,带大家领略这款分布式数据库从无到有、从弱到强的传奇故事。
二、下载安装
2.1 环境准备
操作系统:Windows 11
Docker工具:Docker Desktop
(Docker Desktop安装配置可参考之前文章:Windows安装Docker Desktop,详细步骤 https://blog.csdn.net/qq_17153885/article/details/141337873?spm=1001.2014.3001.5501)
2.2 拉取镜像
Docker 环境准备好之后,就可以在主机上启动容器了,恰好 OceanBase 提供了单机版的镜像,完美实用于快速体验的场景。
OceanBase 的单机版镜像 oceanbase/oceanbase-ce, 按照版本以不同的 tag 划分,latest 默认对应的是最新发布的版本,体验最新版本,可以直接利用 latest 作为 tag,或者不写 tag。
按win+r,启动运行界面,输入cmd
在运行界面,执行如下下令,拉取镜像- docker pull oceanbase/oceanbase-ce
复制代码
拉取后,在Docker Desktop可查看oceanbase镜像
备注:假如拉取失败,大概镜像源失效。可私信(公众号:技海拾贝),获取最新可用镜像源
2.3 启动单节点OceanBase数据库实例
运行以下下令(这里本次操作选择mini 独立实例),启动 OceanBase 数据库的实例:- docker run -p 2881:2881 --name oceanbase-ce -e MINI_MODE=1 -d oceanbase/oceanbase-ce
复制代码- 根据当前容器部署最大规格的实例
- docker run -p 2881:2881 --name oceanbase-ce -e MINI_MODE=0 -d oceanbase/oceanbase-ce
- 部署 mini 的独立实例
- docker run -p 2881:2881 --name oceanbase-ce -e MINI_MODE=1 -d oceanbase/oceanbase-ce
复制代码
启动预计需要 2-3 分钟。执行以下下令,假如返回 boot success!,则启动成功。
查看日志
2.4 连接数据库实例
oceanbase-ce 镜像安装了 OBD(OceanBase Deployer,OceanBase 安装摆设工具)和 OBClient(OceanBase 下令行客户端)。您可选择进入容器,利用 OBD 下令管理和 OBClient 客户端连接实例,也可利用宿主机本地 OBClient 或 MySQL 客户端连接到 OceanBase 数据库实例。
在 OceanBase 的 Docker 容器中还自带了常用的一些工具,在摆设完之后可以直接用来做一些验证。- #切换终端到docker容器
- [root@rac04 ~]# docker exec -it oceanbase-ce bash
- #检查集群状态
- [root@61d0ccd3ea95 /]# obd cluster list
- +------------------------------------------------------------+
- | Cluster List |
- +-----------+------------------------------+-----------------+
- | Name | Configuration Path | Status (Cached) |
- +-----------+------------------------------+-----------------+
- | obcluster | /root/.obd/cluster/obcluster | running |
复制代码
1.进入 Docker 容器
- docker exec -it oceanbase-ce bash
复制代码
通过DeskTop进入也可以
2.查看集群详情
- #查看集群列表
- obd cluster list
- #查看 obcluster 集群详情
- obd cluster display obcluster
复制代码
3.连接数据库
利用以下下令可以利用 sys 租户连接到 OceanBase 数据库,连接数据库,默认root密码为空- obclient -h127.0.0.1 -uroot@sys -A -Doceanbase -P2881 -p
复制代码
4.执行sql语句
5.创建用户及密码
- 创建用户 :在源端业务租户下创建用户,用于数据迁移或数据同步。对于 OceanBase 数据库 MySQL 租户,利用以下下令:
- CREATE USER 'user_name' IDENTIFIED BY 'password';
复制代码 对于 OceanBase 数据库 Oracle 租户,利用以下下令:- CREATE USER user_name IDENTIFIED BY password;
复制代码 - 为用户授权 :通过 GRANT 语句为创建的数据库用户授权,例如:
- GRANT SELECT ON db_name.* TO user_name;
复制代码 详细的授权语句和权限范围根据实际需求确定。
假设您有一个用户 test_user,希望授予其所有数据库的所有权限,可以执行以下下令:
sql复制- GRANT ALL ON *.* TO 'test_user'@'%';
复制代码
- CREATE USER 'zhangsan' IDENTIFIED BY 'td98761n'
复制代码- GRANT ALL ON *.* TO 'zhangsan'@'%';
复制代码
三、通过 DBeaver 连接 OceanBase 数据库
DBeaver 是一款通用的数据库客户端工具,其原理是利用各个数据库提供的 JDBC 驱动连接数据库,支持常见的关系型数据库、非关系型数据库、分布式数据库等等。
利用 DBeaver 自带的 OceanBase 驱动或 MySQL 驱动均可连接 OceanBase 数据库的 MySQL 租户,本文将以 OceanBase 驱动为例介绍如何利用 DBeaver 连接 OceanBase 数据库的 MySQL 租户。
注意:建议升级DBeaver版本到最新版(例如目前最新版24.3.5),较低版本没有OceanBase选项,需要下载驱动连接
3.1 新建连接
可以单击文件下方的连接符进入到选择数据库页面
这里利用上述创建的账号,密码。当 连接测试 弹窗中显示 已连接,表示可成功连接,单击 确定 后,单击 完成 即可连接到 OceanBase 数据库。
3.2 创建表
- CREATE TABLE user1(
- id bigint NOT NULL AUTO_INCREMENT COMMENT "主键id",
- name varchar(64) NOT NULL COMMENT "姓名",
- age int NOT NULL COMMENT "年龄",
- enable_flag TINYINT COMMENT "是否可用(10-可用,20-删除)"
- )
复制代码
3.3 插入数据
- INSERT INTO user1(name, age, enable_flag)
- values('技海拾贝',39, 10),
- ('张三', 51, 20),
- ('李四',27, 10);
复制代码
3.4 查询数据
- SELECT *
- FROM
- user1
- WHERE
- enable_flag =20;
复制代码
OceanBase 以原生分布式架构重塑数据库效能边界,开源生态与金融级稳固性使其成为企业数字化转型的利器。通过本文,您已解锁 OceanBase 的底子操作,而其真正的代价在于应对海量数据、高并发场景的无穷潜力——无论是弹性扩缩容、HTAP 混合负载,还是跨地区多活,皆为业务增长提供坚固底座。
假如你对 OceanBase 以及分布式数据库有更深入的兴趣,欢迎继续关注我们的后续文章,我们将深入探究其高级功能与实际应用场景。
本文由博客一文多发平台 OpenWrite 发布!
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。 |