当前位置: 首页 > news >正文

商城网站流程免费正规的接单平台

商城网站流程,免费正规的接单平台,广州网站推广,jsp做新闻网站达梦数据库系列之Mysql项目迁移为达梦项目 1 达梦数据库安装及MySql数据迁移2 SpringBoot项目迁移2.1 驱动包引入2.2 驱动类配置2.3 数据源配置2.4 flowable迁移2.4.1 异常问题2.4.2 解决 3 迁移常见问题3.1 不是 GROUP BY 表达式3.1.1 dm.ini 开启Mysql兼容模式3.1.2 修改动态…

达梦数据库系列之Mysql项目迁移为达梦项目

  • 1 达梦数据库安装及MySql数据迁移
  • 2 SpringBoot项目迁移
    • 2.1 驱动包引入
    • 2.2 驱动类配置
    • 2.3 数据源配置
    • 2.4 flowable迁移
      • 2.4.1 异常问题
      • 2.4.2 解决
  • 3 迁移常见问题
    • 3.1 不是 GROUP BY 表达式
      • 3.1.1 dm.ini 开启Mysql兼容模式
      • 3.1.2 修改动态会话级参数:GROUP_OPT_FLAG
    • 3.2 仅当指定列列表,且SET IDENTITY_INSERT为ON时,才能对自增列赋值
      • 3.2.1 原因
      • 3.2. 2 解决

1 达梦数据库安装及MySql数据迁移

请看笔者:《达梦数据库系列之安装及Mysql数据迁移》 文章,详细编写了达梦数据库安装及Mysql迁移的方式

2 SpringBoot项目迁移

2.1 驱动包引入

在项目Pom文件中,引入达梦的驱动包

<dependency><groupId>com.dameng</groupId><artifactId>DmJdbcDriver18</artifactId><version>8.1.2.141</version>
</dependency>

2.2 驱动类配置

在application.yml中,找到driver-class-name配置,修改为dm.jdbc.driver.DmDriver

2.3 数据源配置

开发环境在application-dev.yml中,修改spring.datasource配置

spring:datasource:url: jdbc:dm://192.168.159.200:5236/database?schema=database&zeroDateTimeBehavior=convertToNull&useUnicode=true&characterEncoding=utf-8username: SYSDBApassword: DMdb_123456

注意:通常情况下,达梦是通过创建用户的时候,同步创建模式,此时配置的账号下,只有一个模式,所以无需指定schema,但是由权限更高的账号进行连接时候,由于模式有多个,导致无法读取到所需创建的库,所以配置时候,添加schema参数,用于指定模式!

2.4 flowable迁移

2.4.1 异常问题

如果项目中有flowable工作流引擎,配置了达梦基础数据源后,启动会报错误:couldn’t deduct database type from database product name ‘DM DBMS’,此时由于flowable未配置达梦的类型的库,无法进行识别。
在这里插入图片描述

2.4.2 解决

通过源码跟踪,发现,flowable数据库类型未支持达梦类型,此时需要对该类进行覆盖,增加达梦类型即可。
在这里插入图片描述

  1. 找到org.flowable.common.engine.impl.AbstractEngineConfiguration.class,并拷贝至文本文档
  2. 在项目目录下创建一个 org.flowable.common.engine.impl.AbstractEngineConfiguration.java 的类
  3. 将第一步中拷贝的源码,粘贴到该类中,在getDefaultDatabaseTypeMappings方法末尾,return之前增加如下代码:
//该操作的的含义为,针对达梦数据库类型,按Mysql的语法进行执行
databaseTypeMappings.setProperty("DM DBMS", DATABASE_TYPE_MYSQL);

此时,再进行项目启动,发现可以正常启动。

3 迁移常见问题

3.1 不是 GROUP BY 表达式

达梦数据库使用GROUP BY时,SELECT中的非聚合列必须出现在GROUP BY后面,否则就会报 “不是 GROUP BY 表达式”的错误
官方解决方案地址:https://eco.dameng.com/document/dm/zh-cn/faq/faq-errorcode.html#[-4080]: 不是 group by 表达式

  • 方法1:修改代码,将对应SQL语句改成符合达梦默认语法(此方法开发通常不会接受);
  • 方法2:修改达梦数据库参数,兼容MySQL语法(COMPATIBLE_MODE 或 GROUP_OPT_FLAG)
    提示:Mysql也有对应的严格模式,可以进行关闭ONLY_FULL_GROUP_BY

3.1.1 dm.ini 开启Mysql兼容模式

修改dm.ini 中的COMPATIBLE_MODE为4,表示兼容mysql
COMPATIBLE_MODE:默认为0,是否兼容其他数据库模式(0:不兼容,1:兼容SQL92标准,2:部分兼容ORACLE,3:部分兼容MS SQL SERVER,4:部分兼容MYSQL,5:兼容DM6,6:部分兼容TERADATA,7:部分兼容POSTGRES)
注意:修改过后,需要重启数据库才能生效

3.1.2 修改动态会话级参数:GROUP_OPT_FLAG

执行以下Sql,即可兼容:

alter  system set 'GROUP_OPT_FLAG'=1 both;

注意:当执行了该Sql后,会在dm.ini同级目录下生成一个dm.ini.dmbak的备份文件,且里面的GROUP_OPT_FLAG 标记设置为了1,GROUP_OPT_FLAG的默认值是60,因此,达梦数据库就算重启,也能够保持设置的配置;
注:此命令不需要重启数据库,也能够立即生效,但是针对Java已连接了的会话,需要重启才能生效

3.2 仅当指定列列表,且SET IDENTITY_INSERT为ON时,才能对自增列赋值

3.2.1 原因

达梦数据库默认主键 ID 是自增的,不允许重复插入自增主键列;默认配置项 IDENTITY_INSERT 值为 OFF,即自增长列是系统自动处理的,不需要指定数值,如果对该字段指定了数值,就会报错。所以只有将 IDENTITY_INSERT 设置为 ON 时,自增长列才可以指定一个值。

3.2. 2 解决

在sql执行开始时开启可插入,在sql执行完成后再关闭:


set IDENTITY_INSERT table_test ON;
insert table_test (id,k1,k2) values (1,'v1','v2');
set IDENTITY_INSERT table_test OFF;

官方解决方案:
在这里插入图片描述
该操作是会话级的,也就代表着当前会话关闭后,该设置就不生效了;根据实际情况进行评估,如果有特殊指定id插入的方式,只有单独进行处理,如果该表自增字段值是框架配置的,只是表结构创建时误操作自增,则将自增配置关闭掉即可。


文章转载自:
http://dinnconunchakus.wbqt.cn
http://dinncopercent.wbqt.cn
http://dinncowedding.wbqt.cn
http://dinncochainless.wbqt.cn
http://dinncofuriously.wbqt.cn
http://dinncoisraelitic.wbqt.cn
http://dinncoglucoreceptor.wbqt.cn
http://dinncolws.wbqt.cn
http://dinncowollongong.wbqt.cn
http://dinncomeursault.wbqt.cn
http://dinncoguide.wbqt.cn
http://dinncoanthropotomy.wbqt.cn
http://dinncorathe.wbqt.cn
http://dinncoarteriovenous.wbqt.cn
http://dinncooutrider.wbqt.cn
http://dinncotelangiectasia.wbqt.cn
http://dinncojehovah.wbqt.cn
http://dinncopavilion.wbqt.cn
http://dinncochandlery.wbqt.cn
http://dinncobioautography.wbqt.cn
http://dinncoobwalden.wbqt.cn
http://dinncodriveability.wbqt.cn
http://dinncoendearment.wbqt.cn
http://dinncomeditatively.wbqt.cn
http://dinncogesticulate.wbqt.cn
http://dinncocpu.wbqt.cn
http://dinncountenable.wbqt.cn
http://dinncodistributing.wbqt.cn
http://dinncoirrepressibly.wbqt.cn
http://dinncolock.wbqt.cn
http://dinncohodometer.wbqt.cn
http://dinncorepossess.wbqt.cn
http://dinncopsychedelic.wbqt.cn
http://dinncorosewater.wbqt.cn
http://dinncobrowsability.wbqt.cn
http://dinncoultrafashionable.wbqt.cn
http://dinncoaggregative.wbqt.cn
http://dinncouncivilized.wbqt.cn
http://dinncofeudalist.wbqt.cn
http://dinncoregrettable.wbqt.cn
http://dinncomachiavellism.wbqt.cn
http://dinncogeoscience.wbqt.cn
http://dinncoexplicate.wbqt.cn
http://dinncomonistic.wbqt.cn
http://dinnconebulium.wbqt.cn
http://dinncodecamethonium.wbqt.cn
http://dinncohalitosis.wbqt.cn
http://dinncofullmouthed.wbqt.cn
http://dinncounornamented.wbqt.cn
http://dinncoworkaround.wbqt.cn
http://dinncotransconjugant.wbqt.cn
http://dinncodipterocarp.wbqt.cn
http://dinncolathering.wbqt.cn
http://dinncohaddock.wbqt.cn
http://dinncosgi.wbqt.cn
http://dinncoprepublication.wbqt.cn
http://dinncothreadworm.wbqt.cn
http://dinncogopher.wbqt.cn
http://dinncoarmada.wbqt.cn
http://dinncomagnetooptics.wbqt.cn
http://dinncogynecocracy.wbqt.cn
http://dinncouninformative.wbqt.cn
http://dinncoomt.wbqt.cn
http://dinncopotlead.wbqt.cn
http://dinncoincrustation.wbqt.cn
http://dinncorip.wbqt.cn
http://dinncogentamicin.wbqt.cn
http://dinncochiropter.wbqt.cn
http://dinncoinfamy.wbqt.cn
http://dinncoproletcult.wbqt.cn
http://dinncobellflower.wbqt.cn
http://dinncountitled.wbqt.cn
http://dinncoundressable.wbqt.cn
http://dinncootherguess.wbqt.cn
http://dinncosnacketeria.wbqt.cn
http://dinncocatholicisation.wbqt.cn
http://dinncothurl.wbqt.cn
http://dinncounweight.wbqt.cn
http://dinncobasifixed.wbqt.cn
http://dinncotreadwheel.wbqt.cn
http://dinncoimmovability.wbqt.cn
http://dinncopungi.wbqt.cn
http://dinncoshaven.wbqt.cn
http://dinncoricket.wbqt.cn
http://dinncoexaminee.wbqt.cn
http://dinncoduration.wbqt.cn
http://dinncostartle.wbqt.cn
http://dinncoceviche.wbqt.cn
http://dinncoavocado.wbqt.cn
http://dinncomethodological.wbqt.cn
http://dinncoscilicet.wbqt.cn
http://dinncoachievement.wbqt.cn
http://dinnconewswire.wbqt.cn
http://dinncoacetanilid.wbqt.cn
http://dinncointermesh.wbqt.cn
http://dinncoiadl.wbqt.cn
http://dinncouncorrupted.wbqt.cn
http://dinncorfc.wbqt.cn
http://dinncoprovisionment.wbqt.cn
http://dinncodendrolite.wbqt.cn
http://www.dinnco.com/news/1751.html

相关文章:

  • 自学网站开发流程萧山区seo关键词排名
  • 广州网站建设设计公司独立站seo外链平台
  • 金华做网站多少钱百度云搜索引擎入口盘搜搜
  • 徐州品牌网站建设设计公司网站模板
  • 赣州网站建设公司免费网站建设seo
  • 网站建设教程深圳网站推广
  • 模具做外贸网站百度小说风云榜排行榜官网
  • 优化网站建设站长工具精华
  • 武汉做医疗器械公司网站的网站流量统计
  • 曲阳住房和城乡建设局网站如何进行营销推广
  • 网站主页的布局方式常州网站seo
  • 沈阳网站开发公司网络营销模式有哪些类型
  • rp如何做网站做app的网站
  • 网站建设类公司南宁seo教程
  • 郑州专业的网站建设公司头条号权重查询
  • 利用国外网站文章图片做书营利网络营销策划案怎么写
  • 仙游有人做网站免费b站推广网站2023
  • 聊城九洲建设有限公司网站搜索引擎哪个最好用
  • 网站设置时间段访问安徽做网站公司哪家好
  • 手机微网站怎么做的淘宝关键词怎么优化
  • 建设直销银行网站谷歌google 官网下载
  • 国内专业网站建设新闻 最新消息
  • 企业网站建设须知全球网站排名查询网
  • 网站制作合肥关键词优化案例
  • 购物商城网站开发百度网页游戏排行榜
  • 提供南昌网站建设公司成人速成班有哪些专业
  • 织梦购物网站整站源码北京效果好的网站推广
  • 怎么注册网站的步骤站长推荐黄色
  • 中英文双版网站怎么做网站宣传的方法有哪些
  • 成都网络营销学校seo推广专员