数据库数据迁移到达梦数据库(DM8)详细步骤,mysql迁移难题解决(数据库连接失败,Communications link failure,TaskDispatcher Error,索引重名)。

这篇具有很好参考价值的文章主要介绍了数据库数据迁移到达梦数据库(DM8)详细步骤,mysql迁移难题解决(数据库连接失败,Communications link failure,TaskDispatcher Error,索引重名)。。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

首先达梦数据库和MySQL是两种不同的关系型数据库管理系统,它们有以下几点区别:

  1. 开发公司不同:达梦数据库是由中国达梦公司开发的,而MySQL是由瑞典MySQL AB公司开发的。
  2. 数据库类型不同:达梦数据库是商业数据库,而MySQL是开源数据库。
  3. 数据库功能不同:达梦数据库在数据安全、高可用性、性能优化等方面有着很好的表现,而MySQL在大规模数据处理、高并发访问等方面表现出色。
  4. 数据库语法不同:达梦数据库和MySQL在SQL语法方面有一些不同,例如在数据类型、函数、存储过程等方面。
  5. 数据库应用场景不同:达梦数据库主要应用于金融、电信、政府等领域,而MySQL则广泛应用于Web应用、企业应用等领域。

需要注意的是,虽然达梦数据库和MySQL有一些不同,但它们都是成熟的数据库管理系统,可以根据具体的需求选择使用。

闲话少说,下面开始mysql数据迁移达梦数据库的步骤(其他数据库数据迁移可以做参考):

1.使用DM管理工具

达梦数据库安装好后会在下图路径创建工具的快捷方式,找到并打开DM管理工具
达梦数据库迁移,达梦8数据库开发中的常见问题,数据库,mysql,sql

2.到需要迁移的服务器连接中创建对应的模式

在达梦数据库中,一个用户对应着一个模式,模式类似于mysql中的数据库。
达梦数据库迁移,达梦8数据库开发中的常见问题,数据库,mysql,sql
也可以新建一个用户,在用作测试迁移的模式,新建用户的话会自动创建与之绑定的模式,这里我已经创建过TEST,所以就不再创建了。
达梦数据库迁移,达梦8数据库开发中的常见问题,数据库,mysql,sql

3.使用DM数据迁移工具

达梦数据库迁移,达梦8数据库开发中的常见问题,数据库,mysql,sql

4.创建迁移工程

4.1 右键左侧空白处创建新工程,填写信息后工程创建完毕。

达梦数据库迁移,达梦8数据库开发中的常见问题,数据库,mysql,sql

4.2 创建迁移,并填写迁移信息

达梦数据库迁移,达梦8数据库开发中的常见问题,数据库,mysql,sql

5.数据迁移

5.1点击左侧创建好的迁移项,点击下一步

达梦数据库迁移,达梦8数据库开发中的常见问题,数据库,mysql,sql

5.2选择迁移方式

这里我们是mysql迁移到达梦数据库,所以这里选择mysql.。
达梦数据库迁移,达梦8数据库开发中的常见问题,数据库,mysql,sql

5.3 配置数据源

填写数据源信息,然后点击刷新会展示出该连接的所有数据库,选择需要迁移的数据库后点击下一步,不过我这里点击刷新报错,下面是解决方法。
达梦数据库迁移,达梦8数据库开发中的常见问题,数据库,mysql,sql
当我点击刷新时,提示数据库连接失败,Communications link failure。
达梦数据库迁移,达梦8数据库开发中的常见问题,数据库,mysql,sql
出现这个问题的可能有以下几种:

1. 端口未开放
windows通过netstat -aon|findstr "端口号"来查看是否开放,如果没有输出信息表示没有开放,一般来说不会遇到未开放的问题,这里不做赘述。
达梦数据库迁移,达梦8数据库开发中的常见问题,数据库,mysql,sql
2.SSL协议问题
解决步骤如下:
2.1 停止达梦数据库相关服务。
达梦数据库迁移,达梦8数据库开发中的常见问题,数据库,mysql,sql2.2在达梦数据库的安装目录下找到dm.ini,我安装在D盘这里的我路径是D:\dmdbms\data\DAMENG\dm.ini,打开后更新COMPATIBLE_MODE属性,改为4,即可兼容MYSQL数据库,写完后重启服务。
达梦数据库迁移,达梦8数据库开发中的常见问题,数据库,mysql,sql
达梦数据库迁移,达梦8数据库开发中的常见问题,数据库,mysql,sql
2.3 自定义连接驱动
驱动路径可以选择本地的驱动jar包,勾选使用自定义URL,URL需要在尾部加上&useSSL=false&serverTimezone=UTC&rewriteBatchedStatements=true,并且需要更改数据库名为要迁移的数据库名称。
达梦数据库迁移,达梦8数据库开发中的常见问题,数据库,mysql,sql
点击确定后点击刷新测试,没有报错则进入下一步。

5.4 配置达梦数据库信息,迁移策略,指定迁移到哪个模式

达梦数据库迁移,达梦8数据库开发中的常见问题,数据库,mysql,sql
达梦数据库迁移,达梦8数据库开发中的常见问题,数据库,mysql,sql
达梦数据库迁移,达梦8数据库开发中的常见问题,数据库,mysql,sql

5.5 数据迁移

反选全部表,点击下一步,审阅过后点击完成,确认日志中没有报错迁移就完毕了,如果不出意外的话我是出意外了,日志提示了空指针异常。
达梦数据库迁移,达梦8数据库开发中的常见问题,数据库,mysql,sql
达梦数据库迁移,达梦8数据库开发中的常见问题,数据库,mysql,sql
达梦数据库迁移,达梦8数据库开发中的常见问题,数据库,mysql,sql
解决方法:
可以通过拆分同步,重新进入迁移项目中,点击下一步直到选择迁移对象的页面。

  1. 同步表结构。
    达梦数据库迁移,达梦8数据库开发中的常见问题,数据库,mysql,sql
    达梦数据库迁移,达梦8数据库开发中的常见问题,数据库,mysql,sql
  2. 同步数据。
    注意:如果这里有视图表需要取消勾选。
    达梦数据库迁移,达梦8数据库开发中的常见问题,数据库,mysql,sql
    达梦数据库迁移,达梦8数据库开发中的常见问题,数据库,mysql,sql
  3. 同步约束,索引,触发器等。
    达梦数据库迁移,达梦8数据库开发中的常见问题,数据库,mysql,sql
    达梦数据库迁移,达梦8数据库开发中的常见问题,数据库,mysql,sql
    到这里mysql数据迁移到达梦数据就已经完成了,在第六步骤会补充后续遇到的问题。

6.其他问题

6.1索引名称重复问题:

在使用达梦数据库时,如果创建了两个或多个索引并使用相同的名称,达梦数据库会报错并拒绝创建第二个索引。这是因为索引名称必须是唯一的,以便在查询中正确引用它们。
遇到这种问题,就需要更改索引名了,如果索引比较少的情况下可以手动更改,如果索引很多可以采用如下这条sql,通过这个sql给出的语句可以批量更新数据库中的索引名,按照表名+字段名的格式生成索
引名:文章来源地址https://www.toymoban.com/news/detail-795457.html

-- 批量更新索引名的sql
-- 查询出所有组合索引,并拼接修改索引名的语句
SELECT
	CONCAT( 'ALTER TABLE `', table_name, '` RENAME INDEX `', index_name, '` TO `', table_name, '_', GROUP_CONCAT( column_name ORDER BY seq_in_index SEPARATOR '_' ), '`;' ) AS RENAME_SQL 
FROM
	information_schema.statistics 
WHERE
	table_schema = 'asset_manage_local' 
	AND index_name != 'PRIMARY' 
GROUP BY
	table_name,
	index_name 
HAVING
	COUNT(*) > 1 -- 只处理组合索引
	UNION ALL
-- 查询出所有非组合索引,并拼接修改索引名的语句
SELECT
	CONCAT(
		'ALTER TABLE `',
		table_name,
		'` RENAME INDEX `',
		index_name,
		'` TO `',
		table_name,
		'_',
		column_name,
	IF
		( sub_part IS NOT NULL, CONCAT( '(', sub_part, ')' ), '' ),
		'`;' 
) AS RENAME_SQL 
FROM
	information_schema.statistics 
WHERE
	table_schema = 'asset_manage_local' 
	AND index_name != 'PRIMARY' 
	AND seq_in_index = 1 
	AND index_name NOT IN ( SELECT index_name FROM information_schema.statistics WHERE table_schema = 'asset_manage_local' GROUP BY table_name, index_name HAVING COUNT(*) > 1 -- 过滤掉组合索引
	);

到了这里,关于数据库数据迁移到达梦数据库(DM8)详细步骤,mysql迁移难题解决(数据库连接失败,Communications link failure,TaskDispatcher Error,索引重名)。的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包赞助服务器费用

相关文章

  • 达梦数据库(dm8)导出sql文件

    达梦数据库(dm8)导出sql文件

    1.新建迁移工程 2.右键进行新建迁移 3.选择DM== SQL 后进行下一步 4.输入口令后继续下一步 5.定义脚本文件可选择自己新建的sql空文件,编码使用UTF-8 选择自己要导出的模式 7.选择导出的表 使用反选可以进行全选 8.点击完成进行迁移 也可以使用其他方式进行导出,如DM管理工具

    2024年02月11日
    浏览(10)
  • 开发 | JAVA连接达梦数据库(DM8)

    开发 | JAVA连接达梦数据库(DM8)

    本文参考文献 https://eco.dameng.com/docs/zh-cn/start/java-development.html https://eco.dameng.com/docs/zh-cn/app-dev/index.html 本文通过以下方式实现Java程序与DM8数据库的交互 使用JDBC接口(不用框架,最简单) 使用MyBatis框架 使用Spring框架 使用SpringBoot Jdbc 框架 Java的软件开发工具包(SDK) JDK(Ja

    2024年02月07日
    浏览(17)
  • dmfldr-快速装载-载入(DM8:达梦数据库)

    DM 提供了快速装载工具:dmfldr; 通过使用快速装载工具能够把按照一定格式排序的文本数据以简单、快速、高效的方式载入到 DM 数据库中,或把 DM 数据库中的数据按照一定格式载出到文本文件中。 dmfldr 在一台机器上启动即可,独立完成快速装载任务,简单高效。 其中,表

    2024年02月06日
    浏览(12)
  • DM8:达梦数据库开启SQL日志sqllog

    DM8:达梦数据库开启SQL日志sqllog

    在使用数据库过程中,有时候想要查看数据库执行的SQL日志,由于V$SESSIONS 系统视图默认保留10000条,不满足需求,可以配置开启SQLLOG; 登陆达梦数据库管理工具或 disql 执行命令 开启后注意观察数据库log目录的dmsql开头的日志文件,是否达到256MB后正常切换,达到20个日志文件

    2024年02月10日
    浏览(44)
  • springboot使用达梦数据库(DM8)整合MybatisPlus

    springboot使用达梦数据库(DM8)整合MybatisPlus

    在idea中开发spring boot项目,用到的数据库是达梦数据库,想要使用 MybatisPlus 自动生成实体类和服务,并且通过 MybatisPlus 完成一些简单的数据库CRUD ps:这里的 MybatisPlus 版本必须要是3.0以上 2.1、pom ps:其中需要将达梦数据库的依赖添加到指定目录下,不然达梦的依赖无法生效

    2024年02月16日
    浏览(13)
  • Linux安装达梦数据库/DM8(附带客户端工具安装完整版)

    Linux安装达梦数据库/DM8(附带客户端工具安装完整版)

    1.1、创建安装与运行的Linux用户 官方也明确提出,为了减少对操作系统的影响, Linux 用户不应该已 root 用户和默认的用户组来安装与运行达梦数据库,应该为 DM 创建一个专用的用户组和系统用户。例如: 1.2、操作系统资源限制检查 这也是官方给出的提醒,在 Linux 系统中,

    2024年02月02日
    浏览(23)
  • 数据库迁移之mysql到达梦数据库

    数据库迁移之mysql到达梦数据库

    由于业务需求要求数据库国产化,因此将数据从mysql数据库中迁移到国产达梦数据库中。将mysql中的每个库迁移到达梦不同模式下,下面为详细过程。 (1)安装达梦客户端工具 (2)点击选择DM管理工具 (3)创建模式和用户 在用户菜单中,新建一个TEST模式以及相应的用户。

    2024年02月08日
    浏览(18)
  • -9501 MAL系统没有配置或者服务器不是企业版(dm8达梦数据库)

    -9501 MAL系统没有配置或者服务器不是企业版(dm8达梦数据库)

    搭建主备集群时,遇到报错-9501 MAL系统没有配置或者服务器不是企业版 检查dmmal.ini配置文件权限正确 dmdba:dinstall,内容正确 检查dm.key授权是支持主备或读写分离 检查dm.ini 参数配置 最终定位问题是 dm.ini 中 INSTANCE_NAME 参数值 与dmmal.ini 中MAL_INST_NAME 不匹配的原因,修改后启动

    2024年02月11日
    浏览(29)
  • 麒麟操作系统Kylin V10 安装达梦数据库DM8 客户端远程调试

    麒麟操作系统Kylin V10 安装达梦数据库DM8 客户端远程调试

    一、环境准备 软件名称 版本 vmware workstation 16.1.2 build-17966106 银河麒麟 Kylin-Server-10-SP2-x86-Release-Build09-20210524.iso 达梦DM8 DMInstall.bin 银河麒麟 server v10 x86架构安装iso镜像。 Kylin-Server-10-SP2-x86-Release-Build09-20210524.iso 二、DM8数据库安装 以下操作可以使用远程工具执行命令 1. 启动网络

    2024年02月04日
    浏览(28)
  • 从MySQL迁移到Oracle数据库的详细步骤和方法

    在一些情况下,可能需要将现有的MySQL数据库迁移到Oracle数据库。本文将详细介绍如何进行这一迁移过程,涵盖了备份、转换和导入等关键步骤,以帮助你顺利完成数据库迁移。 在开始迁移之前,务必备份你的MySQL数据库,以便在出现问题时可以还原数据。 确保你已经安装了

    2024年02月08日
    浏览(20)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包