Repository navigation
Releases: nmjugtzdw/dbridge
Releases · nmjugtzdw/dbridge
Release list
v1.2.1
v1.2.1 更新内容
这一版是大家用出来的:几处同步报错修了、任务明细更好看了、启动更省心了。
修复的同步问题
这轮在真实环境做了整体验收,顺藤摸瓜修了四个报错:
- 同一个库里建了「自建汇总表」再和源表一起查询时,直接报错同步不下去——现在正常了
- 目标库是 MariaDB 时,保存好的任务一执行就报错——现在正常了
- Oracle 源表的「删除同步」会把报错抛出来——现在正常了
- 连 Oracle 时如果连接信息没填全(比如服务名漏了),以前只给一句看不懂的英文,
现在会直接告诉你缺的是哪一项、该去哪里填
任务明细:每列都看得清
- 各列宽度重新分配过:任务名更宽更完整,「最近运行」「同步进度」收窄到刚好够用,
不再出现「有的列一大片空白、有的列挤成一团」 - 原来的「失败原因」列改叫**「运行结果」**:没跑过的显示「—」,
跑过的显示「成功 · 写入多少行」或具体失败原因,不用再猜 - 失败的任务状态列不再打对勾——状态和结果说的是一件事,不再出现
「打着对勾却写着失败」的自相矛盾
报错好复制了
- 数据源、数据表同步测试不通过时,弹窗里多了**「复制」**按钮,
一键复制完整报错发给支持,不用再截图截半天 - 提示弹窗统一加了「关闭」按钮
界面调整
- 左侧菜单「关于软件」简化为「关于」
- 去掉了「会员」标识——授权状态只看两件事:有没有授权、到没到期
启动更省心
- 双击「启动.bat」后,约 8 秒自动打开管理页面,不用自己敲地址
- 启动窗口里实时滚动运行日志,程序是不是在跑一眼可见;
界面「关于」页的「启动日志」与窗口显示的是同一份,关掉窗口后也能查
下载
dbridge-client-v1.2.1-full.zip(约 112MB,内置 Java 11,解压即用,适合内网/离线机器)dbridge-client-v1.2.1-lite.zip(约 58MB,不含 Java,双击「环境检测.bat」自动补齐)
已安装的用户:解压到新目录 → 关旧程序 → 把旧目录的 data 整个复制过来 → 双击「启动.bat」,
授权和任务配置都在 data 里,不会丢。也可以在「关于」里点「检查更新」走一键升级
(本次只更新了主程序,符合一键升级条件)。
Docker 用户一条命令(自动装最新版):
bash <(curl -sL https://dbridge.zzzmxxkj.com/install.sh)v1.2.0
v1.2.0 更新内容
这一版三件事:换了套界面、驱动管理变简单了、修了 Oracle 增量同步的一个报错。
界面:顶部横条改成左侧导航
- 八个功能各自独立成页:数据源 / 同步任务 / 运行日志 / 备份恢复 / 账号权限 / 驱动管理 / 帮助中心 / 关于软件。
以前日志、备份、人员全塞在「设置」里,四件事挤一处,找不到是正常的 - 深青绿侧栏 + 白色内容区,当前所在页和右边内容区连成一整块,不用再靠高亮猜自己在哪;
两者交汇处做成弧形过渡,不再是两个白块硬撞出的直角 - 表格:表头独立成一条浅色带,扫视时眼睛先落在表头;操作按钮统一成中性灰,
鼠标移上去才变色——一行六七个按钮同时上色,看着像坏了好几个 - 任务明细里「源表 → 目标表」收成一个整体,中间不再夹一个复制按钮把它切成两截
驱动管理
- 每类库一个折叠块,点开 → 选一个版本 → 保存并切换,不用重启就生效
- 上传自己的 jar 会自动认库、认版本,并改成规范文件名
- 「检查官网更新」只提示有没有新版,不会偷偷替换你正在用的那个
- 哪天发现版本"自己变回去了",点「驱动自检」——它记得你选过哪一版,会放回去
新增:启动日志
以前控制台起不来,只能看那个一闪而过的黑窗口,客户报「打不开」,支持这边一点证据都没有。现在:
- 「运行日志」页多了一张「启动日志」卡片,进程的完整输出都在里面,可以「只看错误」
- 起不来时窗口不再直接关掉,会停住并打印最后 30 行,截个图就能说清问题
- 完整日志同时存到
work\console.log(上一次的留在work\console.log.prev),
远程支持时把这个文件发过来就行,比截图有用得多 - 只有管理员能看——里面会有数据库连接信息和异常栈
修复
Oracle 源表增量同步报 ORA-01843: 无效的月份
水位时间(例如 2026-10-28 15:05:40.901866)被当成普通字符串拼进 SQL,
Oracle 按默认日期格式 DD-MON-RR 去解析,2026 被当成「日」,于是报无效的月份。
现在按 Oracle 的语法显式转换,带毫秒、不带毫秒、纯日期三种水位都验证过;
顺带修好了进度条在这个场景下算不出总行数的问题。
其他
- 账号页「在线」改成真实在线人数:按最近几分钟是否有人在页面上操作判断,
同一账号开多个浏览器只算一个人;顶部一条概览,表格每行有在线/离线 - 任务明细支持分页(20/50/100/200/500/1000 条),整库上千张表不再一次全铺出来
- 数据源列表支持上下移动调整顺序
2026-10-29 二次打包(版本号仍是 1.2.0)
这一轮修了两个问题、补了手机端。已安装的用户要重新下载才会拿到,程序里的「检查更新」不会提示
(版本号没变)。
- 备份支持离线导入:以前只能在「这台机器上备份的东西」里还原,换电脑时从旧机器下载的 zip
没有入口放回去。现在备份页多了「导入备份包」,选文件即可,校验通过后才进备份列表,再点还原 - 还原不再吞掉你的授权:备份包里带着授权文件,换机器导入别人的包并还原后,自己的授权会被
包里那份覆盖,重启后先给 72 小时宽限、然后停成「这台机器不在授权范围内」。现在还原时会比对
机器码:包里是本机的就留(同机重装免激活),是别机的就丢掉、沿用本机那份 - 手机能用了:手机浏览器打开就是值守端——顶部条 + 抽屉导航、任务/数据源/账号表格转成卡片、
按钮加大好点、弹窗满宽。看状态、点同步或终止、翻失败原因这些都没问题;建任务组和字段映射
这类配置还是建议在电脑上做 - 顺带修了平板宽度(768px 左右)下任务明细「耗时」整列消失、「同步进度」被操作列遮掉半截的问题
下载
dbridge-client-v1.2.0-full.zip(约 112MB,内置 Java 11,解压即用,适合内网/离线机器)dbridge-client-v1.2.0-lite.zip(约 57MB,不含 Java,双击「环境检测.bat」自动补齐)
Docker 用户一条命令(自动装最新版):
bash <(curl -sL https://dbridge.zzzmxxkj.com/install.sh)v1.1.0
v1.1.0 更新内容
这一版没有加新功能,全部精力花在界面上:同步任务页重做了一遍,让「哪张表有问题、问题在哪」一眼能看见,不用翻日志、也不用一层层点进去找。
任务组列表重排
- 状态、开关、组名、源 → 目标、表数、频率、上次运行时间排成一行,最右是分数圆环
- 组名、源库名、目标库名过长时自动省略,右边按钮不再被挤变形
- 圆环就是体检入口:绿色 100、琥珀 95、灰色「未检」,点一下查整组
- 「立即执行」统一改叫「同步」,和明细行的按钮同一个词
一键体检的报告重写了
- 结果按任务组归堆,一组一个标题,标题右侧写该组几张有问题
- 每条写清「组 → 表 → 原因」,几个组同时搬同名表也能认出是哪一组
- 点任意一行直接跳过去:自动切到对应任务组、滚动到那张表并高亮
- 全部通过就一句话,不弹窗
按钮与图标
- 全局动作改成描边次级按钮,只有「新建任务组」是实心主色,视觉层级一眼分明
- 同步、体检、重试、删除都配了图标(内联 SVG,离线可用,不依赖字体文件)
其他
- 顶部状态汇总压成一行:
N 个组(M 个停用)· K 张表 · 在跑 / N 个失败 / 全部正常 - 去掉「全部执行」:一次连多套生产库风险太高,逐个组点「同步」更稳妥
- 去掉组行的「体检」文字按钮,不再和分数圆环重复
- 删除同步逻辑进一步完善
下载
dbridge-client-v1.1.0-full.zip(约 100MB,内置 Java 11,解压即用,适合内网/离线机器)dbridge-client-v1.1.0-lite.zip(约 45MB,不含 Java,双击「环境检测.bat」自动补齐)
Docker 用户一条命令(自动装最新版):
bash <(curl -sL https://dbridge.zzzmxxkj.com/install.sh)v1.0.8
v1.0.8 更新内容
- 修复客户端自动激活失败:授权服务地址少了端口号,表现为一直显示「未激活 / 服务加载中」
- 未激活时直接显示失败原因(HTTP 状态、连接超时等),不用再翻日志
- 授权天数改为累加:试用期内买卡,剩余试用天数不清零,从原到期日往后接着算
- 后台支持试用记录转正,并自动同步合同名称
- Docker 镜像同步更新至 1.0.8
下载:
dbridge-client-v1.0.8-full.zip(约 100MB,内置 Java 11,解压即用,适合内网/离线机器)dbridge-client-v1.0.8-lite.zip(约 45MB,不含 Java,双击「环境检测.bat」自动补齐)
Docker 用户一条命令(自动装最新版):
bash <(curl -sL https://dbridge.zzzmxxkj.com/install.sh)