美文网首页
999.【翰云数据库】翰云数据库接入cloudbeaver

999.【翰云数据库】翰云数据库接入cloudbeaver

作者: 七镜 | 来源:发表于2024-04-10 17:32 被阅读0次

    一、启动 cloudbeaver

    docker run --name cloudbeaver-ee -ti -p 8080:8978 dbeaver/cloudbeaver:latest
    
    • 通过docker 启动 cloudbeaver,后面我们将修改里面的文件

    二、从容器内部复制出来待修改的关键jar

    docker cp 47:/opt/cloudbeaver/server/plugins/org.jkiss.dbeaver.ext.generic_2.3.214.202404080822.jar .
    docker cp 47:/opt/cloudbeaver/server/plugins/io.cloudbeaver.resources.drivers.base_1.0.95.202404080822.jar .
    
    • 将容器内部的 org.jkiss.dbeaver.ext.generic_*.jario.cloudbeaver.resources.drivers.base_*.jar 复制出来;(注意不同版本对应的序号不同,需要进入容器内部,找到对应的两个jar)

    三、分别解压待修改的jar

    unzip org.jkiss.dbeaver.ext.generic_2.3.214.202404080822.jar -d org.jkiss.dbeaver.ext.generic_2.3.214.202404080822
    unzip io.cloudbeaver.resources.drivers.base_1.0.95.202404080822.jar  -d io.cloudbeaver.resources.drivers.base_1.0.95.202404080822
    
    • 将这两个jar,分别解压至对应的目录下

    四、修改 io.cloudbeaver.resources.drivers.base_1.0.95.202404080822/plugin.xml

    <?xml version="1.0" encoding="UTF-8"?>
    <plugin>
        <!-- Resource mappings -->
        <extension point="org.jkiss.dbeaver.resources">
    ...
            <resource name="drivers/wisdomdata"/>
    ...
        </extension>
    
        <!-- Bundles  -->
        <extension point="org.jkiss.dbeaver.product.bundles">
    ...
            <bundle id="drivers.wisdomdata" label="wisdomdata drivers"/>
    ...
        </extension>
    
        <!-- Enabled drivers -->
        <extension point="io.cloudbeaver.driver">
    ...
            <driver id="generic:wisdomdata"/>
    ...
        </extension>
    
    
    </plugin>
    
    • 需要增加的内容及位置如上所示

    五、修改 io.cloudbeaver.resources.drivers.base_1.0.95.202404080822/plugin.xml

    <?xml version="1.0" encoding="UTF-8"?>
    <?eclipse version="3.2"?>
    
    <plugin>
        <extension-point id="org.jkiss.dbeaver.generic.meta" name="Generic meta model retrieval" schema="schema/org.jkiss.dbeaver.generic.meta.exsd"/>
    
        <extension point="org.jkiss.dbeaver.dataSourceProvider">
            <datasource
                class="org.jkiss.dbeaver.ext.generic.GenericDataSourceProvider"
                description="Generic JDBC connector"
                id="generic"
                label="Generic"
                icon="#database_icon_default"
                dialect="generic">
                <drivers managable="true">
                    <!-- Real drivers -->
    ...
                    <driver
                            id="wisdomdata"
                            label="wisdomdata driver"
                            class="com.wisdomdata.jdbc.CloudDriver"
                            sampleURL="jdbc:wisdomdata:@{host}:{port}"
                            defaultPort="1978"
                            webURL="http://wisdomdata.cn/"
                            description="wisdomdata Server driver">
                    <file type="jar" path="drivers/wisdomdata" bundle="drivers.wisdomdata"/>
                    </driver>
    ...
                </drivers>
    
            </datasource>
        </extension>
    </plugin>
    
    • 需要增加的内容及位置如上所示

    六、添加翰云数据库jdbc驱动

    1. 进入容器

    docker exec -it ${your container id} /bin/bash
    

    2. 进入驱动目录

    cd /opt/cloudbeaver/drivers
    

    3. 创建翰云数据库驱动目录

    mkdir wisdomdata
    

    七、重新打包org.jkiss.dbeaver.ext.generic_2.3.214.202404080822.jario.cloudbeaver.resources.drivers.base_1.0.95.202404080822.jar

    1. 将翰云数据库驱动复制进入刚刚创建的文件夹

    2. 打包 org.jkiss.dbeaver.ext.generic_2.3.214.202404080822.jar

    先将前面解压出来的 org.jkiss.dbeaver.ext.generic_2.3.214.202404080822 整个目录复制到容器内部的/opt/cloudbeaver/server/plugins 目录下(使用docker cp 命令)


    然后进入目录(cd org.jkiss.dbeaver.ext.generic_2.3.214.202404080822);
    然后执行 jar -cvfm org.jkiss.dbeaver.ext.generic_2.3.214.202404080822.jar META-INF/MANIFEST.MF ./ ,这将生成一个新的 org.jkiss.dbeaver.ext.generic_2.3.214.202404080822.jar;
    最后将最新生成的 org.jkiss.dbeaver.ext.generic_2.3.214.202404080822.jar 替换掉/opt/cloudbeaver/server/plugins 目录下的 org.jkiss.dbeaver.ext.generic_2.3.214.202404080822.jar;

    3. 打包 io.cloudbeaver.resources.drivers.base_1.0.95.202404080822 (步骤和上面打包org.jkiss.dbeaver.ext.generic_2.3.214.202404080822.jar 一模一样)

    八、重新启动 cloudbeaver

    docker restart ${your container id}
    

    九、 新建连接

    1. 登录cloudbeaver网页,新建连接


    • 可以看到界面里多了一个前面我们添加的翰云数据库驱动连接配置 wisdomdata driver
    1. 输入Host、Port、User name、User password 等连接信息


    2. 点击 Test ,可以看到连接成功


    3. 左侧查看库表信息


    4. 执行 sql 语句,也没有问题


    十、完结

    翰云数据库(Cloudwave db)是新一代云原生olap数仓,性能卓越,七镜之前也写过基于ssb 1tb测试集与starrocks的性能比对测试,感兴趣的同学可以看看七镜以前写的相关评测文章。

    相关文章

      网友评论

          本文标题:999.【翰云数据库】翰云数据库接入cloudbeaver

          本文链接:https://www.haomeiwen.com/subject/pfoqxjtx.html