cube.js 支持oceanbase 的mysql driver

因为官方mysql driver的bug,暂时issue 还没合并,所以临时开发了一个修复bug 的driver 可以直接参考使用

参考使用

  • 环境准备
version: "3"
services:
    ocenbase:
      image: oceanbase/obce-mini
      ports:
      - "2881:2881"
  • 代码集成
    .env
 
CUBEJS_DB_HOST=localhost
CUBEJS_DB_PORT=2881
CUBEJS_DB_NAME=test
CUBEJS_DB_USER=sqluser01
CUBEJS_DB_PASS=123456
CUBEJS_WEB_SOCKETS=true
CUBEJS_DEV_MODE=true
CUBEJS_DB_TYPE=mysql
CUBEJS_API_SECRET=e727de30526a5029f87a5979e88ca5a211657ccc8f67877c366f170d80b1d81fc21671e3c0dc27813522316a17572aaff371db06769eda6077f35fc36aa4afe9

package.json

{
  "name": "cubejs",
  "version": "1.0.0",
  "main": "app.js",
  "license": "MIT",
  "bin": "app.js",
  "scripts": {
    "dev": "cubejs-server"
  },
  "devDependencies": {
    "@cubejs-backend/server": "^0.28.57"
  },
  "dependencies": {
    "@dalongrong/mymysql-cubejs-driver": "^1.0.0"
  }
}

cube.js

const {MySqlDriver,MySqlQuery} = require("@dalongrong/mymysql-cubejs-driver")
module.exports = {
    dialectFactory: (dataSource) => {
        // need config  datasource  for multitenant env
        return MySqlQuery
    },
    dbType: ({ dataSource } = {}) => {
        return "mymysql"
    },
    driverFactory: ({ dataSource } = {}) => {
        return new MySqlDriver({})
    }
};
  • 效果

 

 

说明

已经push npm 私服了,可以直接使用,对于需要想体验cube.js 集成oceanbase的可以直接使用

参考资料

https://github.com/rongfengliang/cubejs-mymysql-driver
https://www.npmjs.com/package/@dalongrong/mymysql-cubejs-driver

posted on   荣锋亮  阅读(100)  评论(0编辑  收藏  举报

编辑推荐:
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· .NET10 - 预览版1新功能体验(一)
历史上的今天:
2019-11-18 restql 学习三 查询语言简单说明
2019-11-18 restql 学习二 几种查询模式
2018-11-18 ksonnet 一个简化编写以及部署kubernetes的工具
2017-11-18 luvit 被忽视的lua 高性能框架(仿nodejs)
2017-11-18 lapis 处理接收到的json 数据
2017-11-18 luarocks yum 安装引起的lapis lua 包查找问题(centos7版本)

导航

< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5
点击右上角即可分享
微信分享提示