如何将达梦数据库连接到 ONLYOFFICE 文档编辑器

好消息!ONLYOFFICE 文档获得了与达梦数据库的兼容证书。阅读本文,了解如何将数据库连接到我们的编辑器。

关于 ONLYOFFICE 文档

ONLYOFFICE 文档是一个功能强大的文档编辑器,支持处理文本文档、电子表格、演示文稿、可填写表单、PDF 和电子书,可多人在线协作,支持 AI 集成。它具有丰富的插件库,并且支持自行开发上传插件。

ONLYOFFICE 文档开发者版可以无缝地适应您的网络应用,支持多种流行的编程语言和开发框架,包括JavaScript、Python、Java、C# 等。为前端框架也提供现成的组件样本 (Angular, React, Vue 等)。

关于达 数据

随着数字经济的快速发展,达梦在数字化转型解决方案方面积累了丰富的经验,为客户提供各类数据库软件及集群软件、云计算与大数据等一系列产品及服务。

目前的 DM8 是新一代大型通用关系数据库,完全支持 ANSI SQL 标准和主流编程语言接口/开发框架。该数据库拥有行列融合存储技术,兼容 OLAP 和 OLTP 系统,满足 HTAP 混合应用场景。

兼容性 认证

我们与武汉达蒙数据库股份有限公司一起通过了相互测试。因此,ONLYOFFICE 文档被认证为与 DM8 兼容的稳定解决方案。

如何将 达梦数据库 连接到 ONLYOFFICE 文档

本指南建议先在一个单独的分支里开发实现一个测试 bench:feature/damengdb-compose

复制代码
BUILD=<build-number-from-develop> docker compose up -d

使用 Docker 安装 ONLYOFFICE 文档时,可以指定可用变量(DB_TYPEDB_NAMEDB_HOST、DB_USERDB_PWD、DB_PORT) *,*允许自定义数据库连接。

要连接达梦数据库,需要将连接条件和参数添加到 ONLYOFFICE 文档(文件服务器)映像的初始化入口点脚本中。

添加新的数据库类型

复制代码
"dameng")
      DB_PORT=${DB_PORT:-"5236"}
      ;;

添加远程数据库创建功能

复制代码
create_dameng_tbl() {
  DM8_USER=SYSDBA
  DM8_PASS=SYSDBA001

  (cd /opt/dmdbms/bin/ && ./disql $DM8_USER/$DM8_PASS@$DB_HOST:$DB_PORT -e "create user "onlyoffice" identified by "onlyoffice" password_policy 0;")
  # Create db on remote server
  echo "EXIT" | tee -a $APP_DIR/server/schema/dameng/createdb.sql
  (cd /opt/dmdbms/bin/ && ./disql $DM8_USER/$DM8_PASS@$DB_HOST:$DB_PORT \`$APP_DIR/server/schema/dameng/createdb.sql)
}

将这些更改添加到入口脚本后,文档服务器就可以初始化与数据库的连接了。

创建一个简单的 compose 文件,您可以在其中指定文档服务器所需的变量:

  • DB_TYPE: 达梦数据库
  • **DB_HOST:**compose 文件中数据库服务的名称(DNS 名称)
  • **DB_NAME:**要使用的数据库的名称。应在容器启动时出现。
  • **DB_USER:**用户名
  • **DB_PWD:**用户密码
  • **DB_PORT:**带数据库的服务端口

damengdb 容器装入二进制目录,以便文件服务器容器可以访问disql 实用程序。请参阅docker-compose.yml以了解更多信息。

运行 stand

要启动这个 stand,请执行以下命令:

复制代码
git clone -b feature/damentdb-compose https://github.com/ONLYOFFICE/Docker-DocumentServer.git
cd Docker-DocumentServer/tests/damengdb/
docker compose up --d

注意:数据库映像可在 hub.docker 上获得。为方便起见,我们上传了 v8.1.2.128 映像:点击此处查看

相关链接

达梦官方网站

ONLYOFFICE 证书

获取 ONLYOFFICE 文档

相关推荐
jyOverQ2 分钟前
MySQL 索引为什么能加快查询?B+Tree 到底是什么?
数据库·mysql
天天进步201516 分钟前
Pixelle-Video 源码解析 #17:TTS 语音生成:Edge-TTS、Index-TTS 如何接入?
前端·数据库
鸽芷咕16 分钟前
异构数据同步,凭什么敢说数据不丢?——拆解金仓KFS的全周期一致性校验
数据库
海浪仙人掌18 分钟前
账龄分析的定义是什么?账龄分析有什么作用?
数据库
ACP广源盛1392462567319 分钟前
M6/M5 Pro Mac mini 端侧 AI 落地@ACP#IX6024 PCIe2.0 交换芯片在轻量化 AI 服务中的机会与应用场景
大数据·数据库·人工智能·嵌入式硬件·macos·开源
ly768925 分钟前
深入解析 MySQL 间隙锁:从加锁规则到死锁案例
数据库·mysql·死锁·间隙锁·next-key lock·事务隔离
LRL_26 分钟前
7x24小时不停机:基于 Apache SeaTunnel 实现 Oracle to Oracle 实时 CDC 同步全实战
数据库·oracle·apache
不剪发的Tony老师27 分钟前
Navop:一款工具搞定数据库、SSH、SFTP、远程桌面、AI Agent
运维·数据库·ssh
程序员-Benothing33 分钟前
MySQL 中 DELETE、DROP 和 TRUNCATE 的区别是什么?
数据库·mysql