mirror of
https://github.com/QYG2297248353/appstore-1panel.git
synced 2024-11-29 01:56:13 +08:00
feat: support oceanbase-ce (#1180)
* feat: support oceanbase-ce * chore: update version to 4.2.1 --------- Co-authored-by: 玉楼 <rongfeng.frf@alibaba-inc.com>
This commit is contained in:
parent
f8f5391733
commit
b12b858fe5
56
apps/oceanbase/4.2.1/data.yml
Normal file
56
apps/oceanbase/4.2.1/data.yml
Normal file
@ -0,0 +1,56 @@
|
|||||||
|
additionalProperties:
|
||||||
|
formFields:
|
||||||
|
- default: ''
|
||||||
|
edit: true
|
||||||
|
envKey: OB_ROOT_PASSWORD
|
||||||
|
labelEn: password of sys@root
|
||||||
|
labelZh: SYS租户密码
|
||||||
|
required: false
|
||||||
|
type: password
|
||||||
|
- default: 2881
|
||||||
|
edit: true
|
||||||
|
envKey: PANEL_APP_PORT_HTTP
|
||||||
|
labelEn: Port
|
||||||
|
labelZh: 端口
|
||||||
|
required: true
|
||||||
|
rule: paramPort
|
||||||
|
type: number
|
||||||
|
- default: ''
|
||||||
|
edit: true
|
||||||
|
envKey: OB_INSTALL_PATH
|
||||||
|
labelEn: install_path
|
||||||
|
labelZh: 安装目录 (默认为1panel安装目录,需要最少10G空间)
|
||||||
|
required: false
|
||||||
|
type: text
|
||||||
|
- default: 'test'
|
||||||
|
edit: true
|
||||||
|
envKey: OB_TENANT_NAME
|
||||||
|
labelEn: tenant_name
|
||||||
|
labelZh: 租户名
|
||||||
|
required: true
|
||||||
|
rule: paramCommon
|
||||||
|
type: text
|
||||||
|
- default: 6
|
||||||
|
edit: true
|
||||||
|
envKey: OB_MEMORY_LIMIT
|
||||||
|
labelEn: memory_limit
|
||||||
|
labelZh: 内存 (单位:G)
|
||||||
|
required: true
|
||||||
|
rule: paramPort
|
||||||
|
type: number
|
||||||
|
- default: 5
|
||||||
|
edit: true
|
||||||
|
envKey: OB_DATAFILE_SIZE
|
||||||
|
labelEn: datafile_size
|
||||||
|
labelZh: 数据文件大小 (单位:G)
|
||||||
|
required: true
|
||||||
|
rule: paramPort
|
||||||
|
type: number
|
||||||
|
- default: 5
|
||||||
|
edit: true
|
||||||
|
envKey: OB_LOG_DISK_SIZE
|
||||||
|
labelEn: log_disk_size
|
||||||
|
labelZh: 日志文件大小 (单位:G)
|
||||||
|
required: true
|
||||||
|
rule: paramPort
|
||||||
|
type: number
|
27
apps/oceanbase/4.2.1/docker-compose.yml
Normal file
27
apps/oceanbase/4.2.1/docker-compose.yml
Normal file
@ -0,0 +1,27 @@
|
|||||||
|
version: '3'
|
||||||
|
|
||||||
|
services:
|
||||||
|
oceanbase:
|
||||||
|
image: oceanbase/oceanbase-ce:4.2.1
|
||||||
|
container_name: ${CONTAINER_NAME}
|
||||||
|
restart: always
|
||||||
|
environment:
|
||||||
|
OB_MEMORY_LIMIT: ${OB_MEMORY_LIMIT}G
|
||||||
|
OB_DATAFILE_SIZE: ${OB_DATAFILE_SIZE}G
|
||||||
|
OB_LOG_DISK_SIZE: ${OB_LOG_DISK_SIZE}G
|
||||||
|
OB_ROOT_PASSWORD: ${OB_ROOT_PASSWORD}
|
||||||
|
OB_TENANT_NAME: ${OB_TENANT_NAME}
|
||||||
|
MODE: mini
|
||||||
|
OB_CLUSTER_NAME: ob_1panel
|
||||||
|
networks:
|
||||||
|
- 1panel-network
|
||||||
|
volumes:
|
||||||
|
- ${HOME_PATH:-./data/ob}:/root/ob
|
||||||
|
- ./data/.obd:/root/.obd
|
||||||
|
ports:
|
||||||
|
- ${PANEL_APP_PORT_HTTP}:2881
|
||||||
|
labels:
|
||||||
|
createdBy: "Apps"
|
||||||
|
networks:
|
||||||
|
1panel-network:
|
||||||
|
external: true
|
14
apps/oceanbase/4.2.1/scripts/init.sh
Normal file
14
apps/oceanbase/4.2.1/scripts/init.sh
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
source ./.env
|
||||||
|
|
||||||
|
LOG='./init.log'
|
||||||
|
mkdir -p $PWD/data/.obd 2>&1 >> $LOG || exit 11
|
||||||
|
if [ "x$OB_INSTALL_PATH" != "x" ]; then
|
||||||
|
HOME_PATH="$OB_INSTALL_PATH/ob/$CONTAINER_NAME"
|
||||||
|
echo "link $HOME_PATH to $PWD/data/ob" >> $LOG
|
||||||
|
mkdir -p $HOME_PATH 2>&1 >> $LOG || exit 10
|
||||||
|
ln -sf $HOME_PATH ./data/ob 2>&1 >> $LOG || exit 12
|
||||||
|
echo "HOME_PATH=$HOME_PATH" >> ./.env
|
||||||
|
else
|
||||||
|
mkdir -p $PWD/data/ob 2>&1 >> $LOG || exit 10
|
||||||
|
echo "install path not set" >> $LOG
|
||||||
|
fi
|
7
apps/oceanbase/4.2.1/scripts/uninstall.sh
Normal file
7
apps/oceanbase/4.2.1/scripts/uninstall.sh
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
source ./.env
|
||||||
|
|
||||||
|
LOG='./uninstall.log'
|
||||||
|
|
||||||
|
HOME_PATH=`realpath $PWD/data/ob/`
|
||||||
|
echo "remove $HOME_PATH" >> $LOG
|
||||||
|
rm -fr $PWD/data/ob/ 2>&1 >> $LOG || exit 10
|
42
apps/oceanbase/README.md
Normal file
42
apps/oceanbase/README.md
Normal file
@ -0,0 +1,42 @@
|
|||||||
|
# OceanBase
|
||||||
|
|
||||||
|
为现代数据架构打造的开源分布式数据库。兼容 MySQL 的单机分布式一体化国产开源数据库,具有原生分布式架构,支持金融级高可用、透明水平扩展、分布式事务、多租户和语法兼容等企业级特性。OceanBase 内核通过大规模商用场景的考验,已服务众多行业客户;面向未来携手社区生态伙伴,共建开源开放的数据库内核和生态。
|
||||||
|
|
||||||
|
## 使用说明
|
||||||
|
|
||||||
|
1. 默认配置为最小配置,请勿再调小
|
||||||
|
2. SYS租户密码是SYS租户root账号的密码,并非业务租户的密码,业务租户请登录业务租户后自行修改
|
||||||
|
3. 请使用业务租户,不要直接使用SYS租户
|
||||||
|
4. 您可以使用 mysql 客户端链接业务租户,比如 mysql -h127.0.0.1 -P2881 -uroot@test
|
||||||
|
1. 其中 2881 为默认端口,请自行修改为对应的配置端口
|
||||||
|
2. 其中 test 为默认业务租户名,请自行修改为对应的配置租户名
|
||||||
|
5. 请确保安装目录为剩余空间大于 数据文件大小 + 日志文件大小
|
||||||
|
6. OceanBase 的存储空间是预分配的,因此数据库启动时便会根据配置占用对应的空间,不必因为磁盘使用空间突然增加而担忧
|
||||||
|
7. 卸载时将自动清理数据文件,卸载前请确保数据已备份
|
||||||
|
|
||||||
|
## 核心特性
|
||||||
|
|
||||||
|
### 高可用
|
||||||
|
|
||||||
|
独创 “三地五中心” 容灾架构方案,建立金融行业无损容灾新标准。支持同城/异地容灾,可实现多地多活,满足金融行业 6 级容灾标准(RPO=0,RTO< 8s),数据零丢失。
|
||||||
|
|
||||||
|
### 高兼容
|
||||||
|
|
||||||
|
高度兼容 Oracle 和 MySQL,覆盖绝大多数常见功能,支持过程语言、触发器等高级特性,提供自动迁移工具,支持迁移评估和反向同步以保障数据迁移安全,可支撑金融、政府、运营商等关键行业核心场景替代。
|
||||||
|
|
||||||
|
### 水平扩展
|
||||||
|
|
||||||
|
实现透明水平扩展,支持业务快速的扩容缩容,同时通过准内存处理架构实现高性能。支持集群节点超过数千个,单集群最大数据量超过 3PB,最大单表行数达万亿级。
|
||||||
|
|
||||||
|
### 低成本
|
||||||
|
|
||||||
|
基于 LSM-Tree 的高压缩引擎,存储成本降低 70% - 90%;原生支持多租户架构,同集群可为多个独立业务提供服务,租户间数据隔离,降低部署和运维成本。
|
||||||
|
|
||||||
|
### 实时 HTAP
|
||||||
|
|
||||||
|
基于“同一份数据,同一个引擎”,同时支持在线实时交易及实时分析两种场景,“一份数据”的多个副本可以存储成多种形态,用于不同工作负载,从根本上保持数据一致性。
|
||||||
|
|
||||||
|
### 安全可靠
|
||||||
|
|
||||||
|
自 2010 年开始完全自主研发,代码级可控,自研单机分布式一体化架构,连续多年通过大规模金融核心场景的可靠性验证;完备的角色权限管理体系,数据存储和通信全链路透明加密,支持国密算法,通过等保三级专项合规检测。
|
||||||
|
|
18
apps/oceanbase/data.yml
Normal file
18
apps/oceanbase/data.yml
Normal file
@ -0,0 +1,18 @@
|
|||||||
|
name: OceanBase
|
||||||
|
tags:
|
||||||
|
- 数据库
|
||||||
|
title: OceanBase
|
||||||
|
description: 兼容 MySQL 的单机分布式一体化国产开源数据库
|
||||||
|
additionalProperties:
|
||||||
|
key: oceanbase
|
||||||
|
name: OceanBase
|
||||||
|
tags:
|
||||||
|
- Database
|
||||||
|
shortDescZh: 兼容 MySQL 的单机分布式一体化国产开源数据库
|
||||||
|
shortDescEn: Dstributed Cluster
|
||||||
|
type: runtime
|
||||||
|
crossVersionUpdate: false
|
||||||
|
limit: 0
|
||||||
|
website: https://open.oceanbase.com/
|
||||||
|
github: https://github.com/oceanbase/oceanbase
|
||||||
|
document: https://www.oceanbase.com/docs
|
BIN
apps/oceanbase/logo.png
Normal file
BIN
apps/oceanbase/logo.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 3.5 KiB |
Loading…
Reference in New Issue
Block a user