Apache Doris JDBC 实战指南连接配置、Spring 工程落地与排障速查【免费下载链接】dorisApache Doris is an easy-to-use, high performance and unified analytics database.项目地址: https://gitcode.com/gh_mirrors/dori/dorisJava 应用要查 Apache Doris最短路径就是 JDBCFE 的查询端口讲 MySQL 协议配上 MySQL 驱动连上 9030 端口即可读写。下面以仓库里现成的spring-jdbc-demo工程为样本讲清楚三件事连接串怎么配、Spring Boot 查询服务怎么搭、连不上或查得慢时从哪里查起。选型JDBC 管查询Stream Load 管写入先划清边界能省掉后面很多弯路场景推荐通道说明报表接口、交互式查询、小批量更新JDBCMySQL 协议FE 9030 端口应用侧最通用本文主题大批量数据导入Stream LoadHTTP 接口逐行 JDBC INSERT 写入慢且容易产生碎片仓库有 samples/doris-demo/stream-load-demo/ 可参考非 Java 技术栈各语言示例samples/connect/ 下提供 Python、Go、Node.js、PHP、C、Java 六份最小连接样例一句话结论读走 JDBC大批量写走 Stream Load两者不是竞争关系。JDBC 连接串怎么配端口、驱动和 URL 参数连接信息只需要四要素端口可以直接从 conf/fe.conf 里的query_port 9030确认host任一 FE 节点地址port9030即 FE 的 query_port不是 HTTP 端口 8030database目标库名跟在 URL 路径里user / password默认root空密码。最小可运行的 URL 长这样整串就是协议 地址端口 库名 编码参数jdbc:mysql://fe-host:9030/demo_db?useUnicodetruecharacterEncodingutf8驱动类名按驱动大版本区分8.x 系列用com.mysql.cj.jdbc.Driver5.x 系列用com.mysql.jdbc.Driver。驱动和 Doris 大版本的对应关系如下装错版本一般表现为握手报错或连接直接被拒Doris 版本建议的 MySQL 驱动1.0.xmysql-connector-java 5.1.471.1.xmysql-connector-java 8.0.261.2.x 及以上8.0.30 及以上也可用官方org.apache.doris:doris-jdbc如 1.2.0如果想脱离 Spring 先验证连通性samples/connect/java/client/src/main/java/client/Client.java 是一个 100 多行的裸DriverManager示例覆盖建库、建表、插入、查询、删库全流程跑通它再谈框架。照着 spring-jdbc-demo 搭一个 Doris 查询服务完整源码在 samples/doris-demo/spring-jdbc-demo/配套说明见 samples/doris-demo/spring-jdbc-demo/docs/instructions.md。技术栈是 Spring Boot 2.2.0 MyBatis 1.3.2 Druid 1.1.14 mysql-connector-java 8.0.28。工程骨架每个包负责什么各包的分工对应上面截图里的目录包职责configDruid 数据源构建与 Web 配置datasource动态数据源路由多数据源切换的核心controllerREST 接口把查询结果以 JSON 吐出去service/mapper业务方法与 MyBatis SQL 映射utilSpring 上下文工具类有一个容易踩的坑藏在启动类里DorisApplication上写了SpringBootApplication(exclude { DataSourceAutoConfiguration.class })。原因是工程自己手搓了 master/slave 两个 Druid 数据源如果把 Spring Boot 的数据源自动装配也留着两边会互相打架启动时要么报冲突、要么连的不是你以为的那个库。凡是自定义数据源都建议做同样的排除。动态路由由DynamicDataSource完成它继承 Spring 的AbstractRoutingDataSource每次执行 SQL 前回调determineCurrentLookupKey()从线程上下文里取出当前请求该走哪个数据源再路由到对应的 master 或 slave 连接池。单数据源场景用不上这套但主写从读或多库切换场景照抄即可。两个 REST 接口如何把数据查出来服务起来后浏览器直接访问两个地址就能看到效果。第一个是查全量列表访问localhost:8080/rest/demo/skulist返回所有商品的 JSON调用链很短DemoController收到请求 →DemoService透传 →DemoMapperMyBatis 的 XML 映射执行 SELECT → 结果经 fastjson 序列化输出。第二个是带路径参数的单条查询访问/rest/demo/skulist/{skuId}按商品 ID 精确过滤注意示例用的表结构和测试数据都来自stream-load-demoinstructions.md里有说明也就是Stream Load 写进来JDBC 查出去正好对应第一节划的分工。Druid 连接池参数哪些值得改怎么改连接参数在src/main/resources/application-druid.yml里示例值是 9030 端口的一个测试库。逐项解释参数示例值人话解释initialSize5应用启动时预建的连接数minIdle10空闲时至少保留多少条避免冷启动慢maxActive20连接硬上限超出的请求开始排队maxWait60000拿连接最多等 60 秒再等不下去就报错validationQuerySELECT 1 FROM DUAL探测连接是否还活着的哨兵语句minEvictableIdleTimeMillis300000空闲超过 5 分钟的回填回池子slow-sql-millis1000超过 1 秒的 SQL 记入慢日志statViewServlet/druid/*打开 Druid Web 控制台看 SQL 统计需配好账号真正决定吞吐的是maxActive并发超过它请求就在maxWait内排队表现就是接口偶尔卡一下然后超时。调大前先确认 FE 端承受得住盲目放大只是把压力往后挪。另外建议把log-slow-sql打开配合慢日志阈值慢在哪条 SQL 上一目了然。排障速查连不上、查得慢、驱动不匹配现象先查什么连接超时 / Connection refusedtelnet fe-host 9030验证端口确认连的是 query_port 而不是 8030检查安全组与防火墙必要时在 URL 里加socketTimeout拉长等待Access denied账号密码默认root是空密码URL 里漏写password时驱动可能按交互提示卡住报驱动类找不到Class.forName的类名与驱动大版本不匹配5.x 与 8.x 的包名不同对照上面的版本表修正接口偶发变慢先怀疑连接池排队看maxActive与maxWait再看慢 SQL 日志是否命中大查询慢查询稳定复现EXPLAIN看执行计划确认分区条件是否被利用只 SELECT 需要的列别整表SELECT *写入吞吐上不去别再往 JDBC INSERT 上堆并发了换 Stream Load还有一类隐蔽问题应用连上了但查不到数据先确认 URL 路径里写的库名示例工程连的是test_2这类测试库和生产库不是一个。下一步把示例工程跑起来按下面命令克隆仓库进入示例目录构建运行然后浏览器访问localhost:8080/rest/demo/skulist验证需先改application-druid.yml里的连接信息git clone https://gitcode.com/gh_mirrors/dori/doris cd doris/samples/doris-demo/spring-jdbc-demo mvn spring-boot:run想继续看其他接入方式从 samples/doris-demo/ 的 README 出发Flink、Spark、Stream Load 的 demo 都在里面。【免费下载链接】dorisApache Doris is an easy-to-use, high performance and unified analytics database.项目地址: https://gitcode.com/gh_mirrors/dori/doris创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
企业数字化 ERP 产品动态
相关推荐
Visura API 部署指南:Docker Compose 编排、健康检查与日志卷调优完整实战 【免费下载链接】visura-api Servizio API per lestrazione automatizzata di dati catastali dal portale SISTER 项目地址: https://gitcode.com/gh_mirrors/vi/visura-api 点击查看 免费下载 本文是 Visura API 的部署指南,教你用 Docker Compose 一… · 2026/11/4 6:49:28
Folia 全屏歌词动画播放器下载与安装:5 分钟跑起来 Folia 全屏歌词动画播放器下载与安装:5 分钟跑起来 【免费下载链接】folia-major 专注于绚丽的歌词动画效果的本地音乐/navidrome/第三方多平台在线音乐播放器 项目地址: https://gitcode.com/GitHub_Trending/fo/folia-major
开篇速览
Folia 是一款以全屏歌… · 2026/11/4 6:48:27
Windows 11 与 Office 免费激活实操指南:MAS 四方案选型、执行与批量部署 Windows 11 与 Office 免费激活实操指南:MAS 四方案选型、执行与批量部署 【免费下载链接】Microsoft-Activation-Scripts Open-source Windows and Office activator featuring HWID, Ohook, TSforge, and Online KMS activation methods, along with advanced tro… · 2026/11/4 15:42:45
Ubuntu linux ssd 硬盘分区对齐配置和 xfs 文件系统 docker 限额 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/4 15:42:45
基于Springboot线上交通服务平台【附源码+文档】 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/4 15:42:45
思源黑体可变字体:一个文件搞定 250–900 连续字重的完整方案 思源黑体可变字体:一个文件搞定 250–900 连续字重的完整方案 【免费下载链接】source-han-sans Source Han Sans | 思源黑体 | 思源黑體 | 思源黑體 香港 | 源ノ角ゴシック | 본고딕 项目地址: https://gitcode.com/gh_mirrors/so/source-han-sans
把正文设… · 2026/11/4 15:42:45
SimArt部署指南:如何在自己的服务器上运行AI艺术平台 SimArt部署指南:如何在自己的服务器上运行AI艺术平台 【免费下载链接】SimArt 项目地址: https://ai.gitcode.com/hf_mirrors/ByteDance-Seed/SimArt
想要在自己的服务器上部署强大的AI艺术生成平台吗?SimArt作为字节跳动Seed项目下的开源AI艺术… · 2026/11/4 15:41:45
HsMod 炉石插件完整指南:BepInEx 安装 + 4 条挂机路线 + 封号红线 HsMod 炉石插件完整指南:BepInEx 安装 4 条挂机路线 封号红线 【免费下载链接】HsMod Hearthstone Modification Based on BepInEx 项目地址: https://gitcode.com/GitHub_Trending/hs/HsMod
HsMod 炉石插件是一款基于 BepInEx 的炉石传说开源增强插件&… · 2026/11/4 15:41:45
双极步进电机控制实战:DRV8818PWPR与PIC18F86K22驱动调试 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/4 3:16:49
STM32F207ZG + DRV8818PWPR 步进电机驱动实战解析 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/4 6:59:29
DRV8818PWPR+dsPIC30F4013工业级双极步进电机控制方案 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/4 7:02:38
AI辅助技术栈评估:提升研发决策效率60% 1. 项目背景与核心价值技术决策一直是研发团队面临的重大挑战。随着技术生态的快速演进,技术栈的选择、维护和迭代变得愈发复杂。我们团队在过去两年里,先后经历了三次重大技术栈迁移,每次都需要投入大量人力进行技术评估和风险分析。直到去年… · 2026/11/4 0:00:17
从生成Token到直接决策:Jev如何重塑AI Agent工程实践 1. 从"生成文字"到"拍板决策":Jev 到底在解决什么问题大多数人第一次接触大模型,脑子里建立的模型是"输入问题、输出文字"。你问它今天天气怎么样,它给你一段描述;你让它写个周报,它给你… · 2026/11/4 0:00:17
32G统一内存跑大模型:内存账、TPS实测与端云分流 想在一台 32G 统一内存的小主机上把大模型跑成"日常可用",这件事我前后折腾了小半年。标题里说的这台 Mac mini M6,是我们这次讨论的目标平台,具体到手规格以实物为准;但下面这套推算方法和实测思路,对任何统… · 2026/11/4 0:00:17
双极步进电机控制实战:DRV8818PWPR与PIC18F86K22驱动调试 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/4 3:16:49
STM32F207ZG + DRV8818PWPR 步进电机驱动实战解析 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/4 6:59:29
DRV8818PWPR+dsPIC30F4013工业级双极步进电机控制方案 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/4 7:02:38