一、问题背景 一次在执行SQL时调用DMGEO包方法时报错 二、问题解决 (1)确认系统包DMGEO是否创建 查看是否存在SYSGEO模式及下方的包。 (2)系统包已创建的情况下,尝试重建 SP_INIT_GEO_SYS(0); SP_INIT_GEO_SYS(1); 此次案例,重建系统包时报警告:创建的对象带有编译错误。 系统包执行存在编译错误,想到有可能是配置了保留字参数导致,遂查询保留字参…
一、说明 本文适用于达梦数据库主备守护集群DataWatch。当备机宕机恢复启动后能否自动同步主机数据? 二、如何判断 默认都是自动触发同步,备机宕机会有如下两种场景: 主库保留有备机所需所有归档,触发自动同步后,备机同步主机归档到最新。 主库不保留备机所需所有归档,触发自动同步后发现无法自动同步,需要手动处理 查询主机是否保留备机归档 (1)备机查询 SELECT CKPT_LSN FROM …
一、前言 本次数据库升级将从目前使用的数据库版本升级至DM 8.1.3.26版本,因DM各个版本升级和补丁升级步骤是相同的,本文以xx版本升级至v8.1.3.26 版本进行升级操作步骤展示,其他版本升级步骤参考本文档即可。 升级更新范围包括主库、备库(如果有多个备库,需要升级所有备库)、监视器。无论监视器是和备库一起部署还是单独机器部署都需要升级更新。 二、升级步骤 2.1 在测试环境打升级包(…
本升级手册仅适用于小版本间升级使用,升级前必须在测试环境测试成功再应用到生产环境。 此文档仅针对单机数据库版本升级所整理,如有集群版本升级请看文档: 一、前言 达梦数据库处在更新迭代阶段,会不断地改进不足并新增功能,很多使用者就需要从旧版本升级到新版本,那么可以根据本文章进行升级操作。 二、升级步骤 2.1 在测试环境打升级包(bin.tar.gz) 2.1.1 将原测试环境所有达梦服务停掉 &…
一、前言 在Linux操作系统下使用shell脚本调用disql执行SQL或SQL脚本,是我们使用数据库一定会遇到的问题。有时需要直接执行SQL,有时需要执行SQL脚本,有时可以从dmdba用户调用,有时必须从root用户调用,总之,具体的情况不尽相同。本文就来详细介绍一下这些不同方式的具体方法。 二、详细教程 2.1 dmdba下操作 2.1.1 disql直接执行SQL disql / as…
一、问题背景 一般从MySQL迁移到DM数据库时,由于MySQL字符串的长度是以字符为单位,导致迁移过程中有可能遇到报错:超出定义长度。 在DM8的早期阶段,针对从MySQL迁移至DM的场景,由于当时DM尚未原生支持变长字符类型(如VARCHAR(N CHAR))的数据存储需求,故引入了LENGTH_IN_CHAR参数作为临时解决方案。旨在兼容并处理数据字符串截断的特定情境,确保迁移过程中的数据…
一、前言 有时由于CHAR类型为定长,会自动填充空格,不是很舒服,想要将CHAR类型统一修改成VARCHAR类型。 二、修改方法 SELECT 'ALTER TABLE '||TABLE_NAME|| ' MODIFY ' ||COLUMN_NAME||' '||'VARCHAR' ||'('||DATA_LENGTH||');' FROM USER_TAB_COLUMNS WHERE DATA…
一、创建测试数据 CREATE TABLE LFINJI_A(ID NUMBER PRIMARY KEY, NAME VARCHAR2(20), ATYPE VARCHAR2(1)); CREATE TABLE LFINJI_B(ID NUMBER PRIMARY KEY, NAME VARCHAR2(20), BTYPE VARCHAR2(1)); INSERT INTO LFINJI_A V…
一、问题描述 一次客户在执行存储过程打印输出时发现,管理工具消息区域并没有像预期一样的输出内容,而是仅有执行SQL的反馈,如图 这是为什么呢? 二、问题复现 我们使用一段示例存储过程,打印输出进行测试 BEGIN DBMS_OUTPUT.ENABLE(100000); FOR I IN 1..10000 LOOP DBMS_OUTPUT.PUT_LINE(I); --PRINT I; END L…
很多客户在执行CASE WHEN语句时报错,总怀疑是DM数据库的BUG,但其实不然。本文就来讲解一下。 执行如下SQL SELECT CASE WHEN INSTR('1100', ',') > 0 THEN LEFT('1100', INSTR('1100', ',')-1) ELSE '1100' END AS STR FROM DUAL; 报错:[-6803]:非法的参数数据。原因是LEF…