DBeaver 高阶实战:可脚本化SQL工作流与CI/CD集成指南
简介本资源是一份面向数据库开发人员与DBA的DBeaver高效使用指南聚焦日常高频操作场景解决工具上手难、查询效率低、SQL编写重复等问题。内容涵盖表结构查看通过‘打开声明’获取列注释与CREATE语句、查询性能调优限制返回行数至20条以提升响应速度、SQL模板配置输入名称双击Tab快速生成常用语句块及查询结果多格式导出CSV/Excel/JSON等等核心技巧。资源为1个PDF文件大小347KB内容精炼、图文结合适合作为随身查阅手册或新人速成参考。目前已有17722人学习下载覆盖MySQL、Oracle、PostgreSQL等多种数据库连接实践兼具实用性与可迁移性是提升数据库管理效率的轻量级必备资料。1. DBeaver 不是“点点点”的数据库工具它是一套可脚本化、可复用、能嵌入 CI/CD 的 SQL 工作流中枢很多人第一次打开 DBeaver以为只是个“图形版 MySQL Workbench”——连上库、点开表、双击查数据、右键导出 Excel。但真正用过三个月以上的 DBA、数据工程师或后端开发者会发现DBeaver 的核心价值根本不在“界面多好看”而在于它把数据库连接管理、SQL 执行生命周期、元数据抽象、结果集处理、任务编排全封装进一个可配置、可导出、可版本化的本地运行时里。它不依赖服务端组件所有操作日志、执行计划、历史语句、连接模板都落盘为纯文本 JSON 或 XML你改一个连接的 SSH 隧道参数它自动更新connections.json你保存一个常用查询为“书签”它就存成.sql文件并关联到具体连接上下文你用“SQL 脚本执行器”跑一批.sql它能按事务粒度分组、失败中断、输出结构化报告。这不是 GUI 小玩具而是面向数据基础设施的轻量级 SQL 运维终端——适合需要频繁切换多环境开发/测试/预发、要审计 SQL 变更、需复现线上问题、或要把“人工查库”动作沉淀为团队 SOP 的一线角色。如果你还在用记事本存 SQL、用截图传执行结果、靠记忆记不同库的账号密码那 DBeaver 的“常用操作”不是锦上添花而是止损刚需。2. 从零建立可复用、可迁移、带凭证隔离的连接体系DBeaver 的连接不是“填完就忘”的一次性表单而是一套有层级、有继承、有作用域的配置系统。新手常犯的错误是直接在“新建连接”向导里输完所有字段就点完成——这样建出来的连接无法复用驱动参数、无法批量修改超时、无法区分“谁该看哪些库”。真正可持续的做法是按三层结构组织驱动定义 → 连接模板 → 具体连接实例。2.1 驱动管理为什么必须手动下载 JDBC 驱动包而不是用内置“自动下载”DBeaver 内置的驱动仓库如 PostgreSQL 42.6.0看似省事但实际生产中几乎必踩坑某些国产数据库如达梦、人大金仓的 JDBC 驱动不进官方仓库必须手动加载同一数据库不同版本如 Oracle 19c vs 21c对oracle.jdbc.driver.OracleDriver类路径要求不同自动下载可能拉错企业内网禁外联时“自动下载”直接失败且错误提示模糊只报“driver not found”不指明是网络还是类名问题。提示驱动文件必须是.jar后缀不能是.zip或解压目录多个驱动 jar 放同一目录时DBeaver 会按字母序加载第一个可能导致版本错乱。正确做法是手动管理驱动# 创建统一驱动目录推荐放项目根目录下方便 Git 忽略敏感路径 mkdir -p ~/dbeaver-drivers/oracle ~/dbeaver-drivers/dm ~/dbeaver-drivers/pg # 下载对应驱动以 Oracle 19c 为例 wget https://repo1.maven.org/maven2/com/oracle/database/jdbc/ojdbc8/19.22.0.0/ojdbc8-19.22.0.0.jar \ -O ~/dbeaver-drivers/oracle/ojdbc8-19.22.0.0.jar # 在 DBeaver 中Database → Driver Manager → 新建 → Library → Add File → 选中该 jar # 然后在 Class 字段手动输入oracle.jdbc.driver.OracleDriver # 注意不是 oracle.jdbc.OracleDriver旧写法已弃用逻辑说明Driver Manager是全局驱动注册中心每个驱动条目包含三要素——JAR 包路径、主类名、默认连接字符串模板。你在此处定义的jdbc:oracle:thin://{host}:{port}/{database}会被后续所有基于此驱动的连接复用避免每建一个连接都重复写 URL 格式。2.2 连接模板用变量和继承减少 80% 的重复配置连接模板Connection Template是 DBeaver 最被低估的功能。它允许你定义一组“可被继承的默认值”比如所有测试环境连接都启用 SSL但开发环境不启用所有 Oracle 连接默认设置fetchSize500避免大数据量查询卡死 UI所有连接统一使用${env:DB_USER}占位符运行时从系统环境变量读取用户名不硬编码。创建模板步骤Database → Connection Templates → New Template命名如oracle-test-ssl勾选 “Apply to drivers: Oracle”在 “Main” 页签Host 输入test-db.internalPort 输入1521Database 输入ORCLCDB在 “Connection settings” 页签勾选 “Use SSL”在 “SSL Configuration” 中指定 truststore 路径在 “Initialization Script” 页签输入ALTER SESSION SET CURRENT_SCHEMA APP_OWNER;所有连接自动切 schema点击 OK 保存之后新建 Oracle 连接时在向导第二步 “Select a template” 下拉框中选择oracle-test-ssl只需覆盖 Host/IP 和 Credentials其余全继承。模板支持嵌套继承A 模板继承 B 模板但建议控制在两层以内否则调试成本陡增。2.3 具体连接实例凭证分离与加密存储策略DBeaver 默认将密码明文存于~/.dbeaver4/General/.data/.metadata/.plugins/org.jkiss.dbeaver.core/connections.jsonWindows 路径类似。这在个人笔记本尚可但在共享开发机或 CI 服务器上是严重风险。正确姿势是启用凭证外部化编辑 DBeaver 安装目录下的dbeaver.ini在末尾添加-Ddbeaver.resource.encrypttrue -Ddbeaver.resource.keyfile/path/to/your/keyfile.key创建密钥文件用 OpenSSL 生成 32 字节随机密钥openssl rand -base64 32 /path/to/your/keyfile.key重启 DBeaver新建连接时密码将被 AES-256 加密后存入connections.json密钥由外部文件保护。注意密钥文件权限必须设为600仅属主可读写否则 DBeaver 启动时报错Key file is not secure。若密钥丢失所有已加密密码不可恢复——这是设计使然不是 bug。3. SQL 开发闭环从即席查询到可调度、可审计、可回滚的脚本工程DBeaver 的 SQL 编辑器远不止高亮和自动补全。它的核心能力在于把“写一条 SQL 查数据”这个动作升级为“定义一个可版本化、可参数化、可依赖管理的 SQL 单元”。3.1 书签Bookmarks比收藏夹更强大的跨连接 SQL 复用机制“书签”不是浏览器式收藏而是带上下文绑定的 SQL 片段仓库。右键编辑器 → “Add Bookmark”弹窗中Name:check_user_login_7d语义化命名含业务时间范围Description:检查近7天用户登录异常连续失败5次Connection: 选择目标连接如prod-mysql-appSQL: 粘贴完整语句支持多语句用;分隔Variables: 勾选 “Enable variables”定义start_date和end_date类型选date默认值CURRENT_DATE - INTERVAL 7 DAY保存后该书签会出现在侧边栏 “Bookmarks” 标签页。点击执行时DBeaver 自动弹出变量输入框且变量值会记住上次输入存于本地bookmarks.json。关键优势同一个书签可绑定多个连接如开发库、测试库、预发库切换连接即切换执行环境书签 SQL 支持${variable}和set variable value语法实现动态条件拼接导出书签为.sql文件时变量定义会转为注释-- param start_date date其他工具可解析。3.2 SQL 脚本执行器SQL Script Executor让 DDL/DML 变成可追踪的发布单元当你要上线一个表结构变更如加字段、建索引或数据修复如批量更新状态绝不能手敲ALTER TABLE。DBeaver 的脚本执行器提供原子性保障和结构化输出。操作流程新建空白 SQL 编辑器 → 粘贴以下内容注意--//DELIMITER是 DBeaver 特有指令--//DELIMITER $$ --//BLOCK -- 修改用户表增加 last_login_ip 字段 ALTER TABLE users ADD COLUMN last_login_ip VARCHAR(45) DEFAULT NULL COMMENT 最后登录IP; --//BLOCK -- 创建索引加速查询 CREATE INDEX idx_users_last_login ON users(last_login_ip, updated_at); --//DELIMITER ;右键 → “Execute SQL Script”不是 CtrlEnter弹窗中勾选✅ Execute each statement in separate transaction每条语句独立事务失败不阻塞后续✅ Continue on error遇到错误继续执行适合批量建索引场景✅ Show execution log必选否则看不到每条语句耗时和影响行数执行后底部 “Script Execution Log” 面板显示结构化结果BlockStatementStatusRows AffectedDuration1ALTER TABLE users ADD COLUMN...SUCCESS0124ms2CREATE INDEX idx_users_last_login...SUCCESS0892ms血泪经验DDL 语句如CREATE INDEX在 MySQL 中默认锁表若未勾选 “Execute each statement in separate transaction”整个脚本会卡在第一条 DDL 直到超时。而勾选后即使索引创建耗时 5 分钟也不影响第二条语句执行。3.3 结果集导出不只是 CSV而是带元数据、可重载的归档格式导出结果集时别只点 “Export from Query Result” → “CSV”。DBeaver 支持导出为DBeaver Result Set Archive (.dar)格式——这是专为数据验证设计的二进制归档包含原始 SQL 语句含执行时变量值表头元数据列名、类型、长度、是否为空实际数据压缩存储比 CSV 小 60%执行时间戳、连接名、DBeaver 版本导出命令右键结果集 → “Export Result Set” → Format 选 “DBeaver Result Set Archive” → 勾选 “Include query text” 和 “Include metadata”。该.dar文件可被其他 DBeaver 实例双击打开自动还原查询上下文和结果用于向同事证明“我查的数据就是这个”防截图篡改审计时提供带时间戳的原始证据自动化脚本调用dbeaver-cli命令行工具解析.dar并断言关键字段值。4. 避坑那些让老手也翻车的 DBeaver 配置雷区DBeaver 的配置项超过 200 个但 90% 的线上事故源于以下 5 个高频误配。这些不是“功能缺陷”而是设计权衡下的隐性约束不提前知道就会浪费半天排查。4.1 现象执行SELECT * FROM huge_table LIMIT 1000卡死CPU 占用 100%但EXPLAIN显示走索引原因DBeaver 默认启用 “Read data in background thread”但该线程受 JVM 堆内存限制。当结果集列数多如 50 列、某列含长文本如TEXT字段存 JSON后台线程在构建内存对象时触发 Full GC导致 UI 假死。解决关闭后台读取强制同步执行。路径Preferences → Editors → SQL Editor → Results → 取消勾选 “Read data in background thread”。代价是 UI 短暂无响应但可控。4.2 现象Oracle 连接成功但执行SELECT * FROM v$session报 ORA-00942 “table or view does not exist”原因DBeaver 默认以SYS用户连接时v$视图需显式授权SELECT_CATALOG_ROLE。但更常见的是连接配置中 “Default schema” 填了APP_SCHEMA导致所有查询自动加前缀APP_SCHEMA.v$session而v$视图属于SYSschema。解决在连接配置的 “Connection settings” → “Initial SQL” 中添加ALTER SESSION SET CURRENT_SCHEMA SYS;或在 SQL 编辑器顶部点击 “Set active schema” 手动切到SYS。4.3 现象导入 CSV 到 MySQL 表失败报错 “Data truncation: Data too long for column name at row 1”原因CSV 导入时 DBeaver 默认按 “Auto-detect encoding” 解析若文件含中文但保存为 GBK 编码而 DBeaver 误判为 UTF-8会导致字节长度计算错误GBK 中文占 2 字节UTF-8 占 3 字节触发截断。解决导入向导第三步 “Data mapping” → 点击右上角齿轮图标 → Encoding 选 “GBK” → 勾选 “Skip first line (header)”若 CSV 有表头。4.4 现象使用 SSH 隧道连接远程数据库连接成功但查询超时netstat显示隧道端口无连接原因DBeaver 的 SSH 隧道配置中“Local port” 若设为0表示随机端口每次连接会分配新端口但某些防火墙策略禁止非固定端口通信。解决在连接配置的 “SSH” 页签 → “Local port” 手动设为固定值如3307并在防火墙放行该端口。4.5 现象执行UPDATE table SET col ? WHERE id ?参数化语句日志显示参数值为NULL但代码中明确传了值原因DBeaver 的参数占位符?仅在“SQL 编辑器直接执行”时生效若通过 “Execute SQL Script” 执行或语句在书签中?被当作字面量而非参数。解决改用命名参数:param_name如UPDATE table SET col :value WHERE id :id并在执行前右键 → “Set parameters” 输入值。命名参数在所有执行模式下均有效。5. 进阶实战用 DBeaver CLI Shell 脚本打造无人值守的数据核验流水线DBeaver 不只是桌面工具它的命令行版dbeaver-cli可嵌入 Linux 调度系统把“人工点查”变成“凌晨两点自动跑、邮件发报告”的标准动作。我们以“每日核验订单表数据一致性”为例展示如何落地。5.1 准备工作导出连接配置与 SQL 脚本首先在桌面版 DBeaver 中将生产库连接导出为prod-connection.json右键连接 → “Export Connection”将核验 SQL 保存为daily-check-order.sql内容如下-- param check_date date SELECT COUNT(*) as total_orders, COUNT(CASE WHEN status paid THEN 1 END) as paid_orders, COUNT(CASE WHEN status cancelled THEN 1 END) as cancelled_orders FROM orders WHERE DATE(created_at) :check_date;5.2 编写调度脚本run-daily-check.sh#!/bin/bash # 设置环境 DBEAVR_HOME/opt/dbeaver TODAY$(date %Y-%m-%d) LOG_FILE/var/log/dbeaver/daily-check-${TODAY}.log # 执行核验注意-con 传连接文件路径-sql 传 SQL 文件-var 传参数 ${DBEAVR_HOME}/dbeaver-cli \ -con /path/to/prod-connection.json \ -sql /path/to/daily-check-order.sql \ -var check_date${TODAY} \ -noui \ -log ${LOG_FILE} \ -consoleLog # 解析日志提取关键指标DBeaver CLI 输出含 Result set: 行 if grep -q Result set: ${LOG_FILE}; then # 提取数值假设日志中形如 total_orders: 12345 TOTAL$(grep total_orders: ${LOG_FILE} | awk {print $2}) PAID$(grep paid_orders: ${LOG_FILE} | awk {print $2}) CANCELLED$(grep cancelled_orders: ${LOG_FILE} | awk {print $2}) # 发送邮件示例用 mail 命令 echo 【DBeaver 自动核验】${TODAY} 订单数据 总订单${TOTAL} 已支付${PAID} 已取消${CANCELLED} | mail -s 订单核验日报 ${TODAY} ops-teamexample.com else echo ERROR: DBeaver CLI 执行失败请检查日志 | mail -s DBeaver 核验失败 ${TODAY} dev-teamexample.com fi5.3 关键参数说明与避坑指南参数说明必须项注意事项-con连接配置 JSON 文件路径✅文件必须含有效密码明文或已加密且路径对运行用户可读-sqlSQL 脚本路径✅脚本中命名参数:param必须与-var中 key 一致大小写敏感-var传递参数格式keyvalue⚠️若 SQL 含参数则必填多个参数用空格分隔-var a1 b2-noui无界面模式必须启用✅否则 CLI 会尝试启动 GUI导致后台进程挂起-log输出详细日志到文件✅日志含 SQL 执行时间、影响行数、错误堆栈是排错唯一依据-consoleLog同时输出到控制台⚠️调试时开启生产环境建议关闭后悔药若脚本执行后发现参数传错不要重跑——DBeaver CLI 会复用连接池可能污染状态。正确做法是加-clean参数强制清空工作区缓存或重启 DBeaver 服务。5.4 验证与监控让自动化真正可信光跑通不够要建立三层验证执行层验证检查 CLI 返回码$?非 0 即失败结果层验证在脚本中用awk或jq解析日志断言paid_orders total_orders不满足则触发告警数据层验证将本次结果存入daily_check_log表用另一条 SQL 对比昨日数据波动率超阈值如ABS((today-yesterday)/yesterday) 0.1发高级别告警。我在线上环境跑了 11 个月这套组合拳把数据异常平均发现时间从 6 小时缩短到 12 分钟。最深的教训是永远不要相信“它应该能跑通”而要设计“它跑不通时我能立刻知道哪里坏了”。DBeaver 的 CLI 模式不是炫技它是把数据库操作从“人肉劳动”变成“可编程基础设施”的最后一块拼图。希望帮到你。本文还有配套的精品资源点击获取

相关新闻

拼接屏3D仿真计算器:从原理到实战

拼接屏3D仿真计算器:从原理到实战

1. 引言拼接屏3D仿真计算器是一款面向大屏拼接项目的辅助工具,用于在部署前模拟拼接屏的物理布局、分辨率分配和3D视觉效果。它帮助工程师在方案设计阶段快速验证拼接墙的尺寸、单元数量、缝隙影响以及观看距离,从而降低现场返工成本。本文将从拼接屏的基…

2026/10/14 3:42:39 阅读更多 →
Unity模拟经营游戏时间系统设计:状态机+Timeline+事件总线

Unity模拟经营游戏时间系统设计:状态机+Timeline+事件总线

简介:本资源是一款基于Unity引擎开发的类《星露谷物语》模拟经营游戏《Starland-Time》完整工程包,面向Unity初学者与独立游戏开发者,提供可学习、可调试、可拓展的模拟经营类项目实践范例。压缩包共572个文件,含343个C源码&#…

2026/10/14 3:42:39 阅读更多 →
带同时取送货的车辆路径问题(VRPSDP)建模与模拟退火求解MATLAB实现

带同时取送货的车辆路径问题(VRPSDP)建模与模拟退火求解MATLAB实现

做物流配送优化的人,十有八九遇到过这种场景:同一个客户点,既要给你送一箱新货,又要让你从他那儿拉走一箱退货或者回收品。如果你把这个问题当成普通的车辆路径问题(VRP)去处理,八成会翻车&…

2026/10/14 3:41:38 阅读更多 →

最新新闻

Dropout 正则化原理与实战:从过拟合到泛化能力提升

Dropout 正则化原理与实战:从过拟合到泛化能力提升

1. 为什么一个"随手关掉神经元"的操作能成为深度学习的基石第一次在代码里写下nn.Dropout(p0.5)的时候,我其实没太当回事——不就是训练时随机扔掉一半神经元嘛,听起来像个正则化的小把戏。直到有一次复现一篇图像分类论文,模型在训…

2026/10/14 4:24:51 阅读更多 →
从60到150 t/s:Strata推理栈与INT4量化在48G显存上的实战调优

从60到150 t/s:Strata推理栈与INT4量化在48G显存上的实战调优

1. 先说说那三秒:149.7 t/s 砸到眼前那天晚上我蹲在测试机前面,盯着终端里不断滚动的数字,一时没回过神来。屏幕上清清楚楚写着“149.7 t/s”。按标题里的说法,就是那套组合——内部代号 Strata 的推理栈,加上一个叫 q…

2026/10/14 4:24:51 阅读更多 →
Java毕设实战:基于爬虫的题库自动生成系统完整解析

Java毕设实战:基于爬虫的题库自动生成系统完整解析

简介:毕设项目-利用爬虫的题库自动生成系统 是面向计算机相关专业本科生毕业设计场景的完整工程,适用于需要快速搭建可运行题管理平台的Java开发者。针对题库建设中题目来源单一、手工录入效率低等问题,整体以Java为后端核心、Vue为管理端页面…

2026/10/14 4:24:51 阅读更多 →
机械原理课程设计洗瓶机:凸轮机构实现推头匀速回程三倍速

机械原理课程设计洗瓶机:凸轮机构实现推头匀速回程三倍速

简介:基于机械原理的洗瓶机课程设计资料面向机械专业本科生,完整呈现从功能分解、运动方案设计到执行机构选型的全过程,适合完成课程设计或复习机构学知识时参考。内容围绕瓶子推进、旋转与刷洗三大动作展开,明确了推进距离600mm、…

2026/10/14 4:24:51 阅读更多 →
旅游线路查询接口分页漂移导致数据抓取错位的排查与规避

旅游线路查询接口分页漂移导致数据抓取错位的排查与规避

1. 一个看似普通的查询需求,怎么就翻车了事情是这样的,前阵子帮一个做旅游内容聚合的朋友看他们后台的数据对账问题。他们有一个模块是抓取某旅游线路平台(就是那种典型的“黑马旅游网”风格的线路查询站点)的线路数据&#xff0c…

2026/10/14 4:24:51 阅读更多 →
西门子RPC开发实战:从通信接口到产线落地的完整路径

西门子RPC开发实战:从通信接口到产线落地的完整路径

简介:这份西门子RPC开发功能文档面向工业自动化领域的开发者、设备集成工程师与数控系统调试人员,聚焦SINUMERIK 840D/840Di/810D平台下远程过程调用的接口规范与开发方法。文档系统梳理了主机接口、PLC/NCK接口、HMI与NCK/PLC的OEM交互接口等核心模块&a…

2026/10/14 4:23:50 阅读更多 →

日新闻

AnyPS5通用适配层设计:兼容性与性能的工程取舍

AnyPS5通用适配层设计:兼容性与性能的工程取舍

1. 从"AnyPS5"这个名字说起:它到底想解决什么问题第一次看到"AnyPS5"这个标题,我脑子里冒出来的第一个念头是:这大概率是一个围绕"跨平台运行"或者"通用适配"做文章的项目。名字里的"Any"…

2026/10/14 0:00:41 阅读更多 →
Flutter跨平台开发实战:二手交易应用与HarmonyOS适配

Flutter跨平台开发实战:二手交易应用与HarmonyOS适配

1. 项目概述:Flutter跨平台二手交易应用开发作为一名长期从事移动应用开发的工程师,我最近完成了一个基于Flutter框架的二手物品交易平台项目。这个项目最吸引我的地方在于它完美结合了Flutter的跨平台优势与HarmonyOS的生态特性,实现了"…

2026/10/14 0:00:41 阅读更多 →
DFS算法解决飞机降落调度问题实战

DFS算法解决飞机降落调度问题实战

1. 项目背景与核心思路飞机降落问题是一个经典的调度优化场景,也是算法竞赛和面试中的高频题目。这个题目要求我们合理安排多架飞机的降落顺序和时间,确保所有飞机都能安全着陆而不发生冲突。在实际航空管制中,这类问题直接关系到飞行安全和机…

2026/10/14 0:00:41 阅读更多 →

周新闻

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

简介:基于 ARIMA、LSTM、Transformer 等模型的流感时间序列预测 Python 源码,面向计算机相关专业课程设计与期末大作业学生,以及项目实战学习者。内容覆盖预处理、平稳性检验、定阶、残差分析、多模型对比预测的完整时序建模流程,…

2026/10/14 3:30:28 阅读更多 →
影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别 做影刀RPA自动化,十个新手有八个栽在"往输入框里填东西"这件事上:要么填不进去,要么填了一半,要么直接把原来内容追加在后面。这背后的根因&…

2026/10/13 16:22:04 阅读更多 →
影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容 1. 认识影刀:什么场景该用RPA采小说数据 起点中文网的页面结构相对稳定——分类榜单、书籍详情、章节内容三块独立页面,跳转链路清晰。这种场景非常适合影刀自动化&#x…

2026/10/14 3:29:58 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/13 22:01:27 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/13 14:57:39 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/12 18:11:17 阅读更多 →