ARTICLE DETAIL

资讯详情

深耕编程入门与网站建设的一线实战洞察。

如何用 Navicat 将 JeecgBoot 数据库从 MySQL 迁移到 Oracle?

如何用 Navicat 将 JeecgBoot 数据库从 MySQL 迁移到 Oracle? 如何用 Navicat 将 JeecgBoot 数据库从 MySQL 迁移到 Oracle【免费下载链接】jeecg-boot【低代码v2.0一句话即可生成整个系统】企业级AI低代码平台一键生成前后端代码甚至整个系统。 AI Skills 一句话画流程、设计表单、生成报表、大屏。内置 AI应用平台涵盖AI聊天、知识库、流程编排、MCP插件等兼容主流大模型。引领AI低代码「Skills 生成 → 在线配置 → 代码生成 → 手工合并-AI修改」开发模式解决 Java 项目 90% 重复工作提高效率又不失灵活。项目地址: https://gitcode.com/GitHub_Trending/je/jeecg-bootJeecgBoot 默认只提供 MySQL 初始化脚本jeecgboot-mysql-5.7.sql要求 MySQL 5.7Oracle 11g 等数据库需要自行转库。这篇文章按仓库 其他数据库转换方法.md 中给出的步骤用 Navicat 的数据传输功能把 MySQL 库整体迁到 Oracle 11g并处理迁移后需要手工修复的外键和 Quartz 定时任务表。前提源 MySQL 库已用 JeecgBoot 默认脚本初始化且你能用 Navicat 同时连上源库和目标 Oracle 库。仓库的支持库列表中 Oracle 11g 在支持范围内见 README.md 的支持库表格但注意 Oracle 侧仓库文档只明确了 11g。准备连接源库与目标库用 Navicat 连接源数据库 MySQL文档示例使用的用户名是jeecg-m。用 Navicat 连接目标数据库 Oracle文档示例使用的用户名是jeecg-o。两边连接都建好后迁移就是把源库的数据传到目标库。用 Navicat 数据传输执行迁移整个迁移在 Navicat 的「数据传输」功能里完成在 Navicat 中选中源数据库右键点击「数据传输」。常规选项卡选择源数据库并勾选数据库对象然后选择目标包括连接、数据库名、模式。高级选项卡勾选「转换对象名为大写」其他选项处勾选「遇到错误继续」。表选项把「外键限制」勾掉。文档说明原因是转换过程中每个表是单独写入数据的如果保留外键限制有外键的表会写入失败。外键需要在迁移完成后手动补充。点击「开始」按钮在「信息日志」选项卡中查看执行日志。第 3 步的「遇到错误继续」不要漏勾否则单表报错会中断整个传输配合日志记录出错表可以在传输结束后单独处理。核对迁移结果迁移完成的判断依据在「信息日志」选项卡传输完成后在日志中记录下出错的表。文档明确说明出错的表需要后续使用其他工具迁移Navicat 这一轮迁移覆盖不了它们。检查目标库中表结构是否齐全外键关系需要在迁移后手动补充因为表选项中外键限制已被勾掉。特殊表处理Quartz 定时任务表这一步是文档明确指出的必要修复不是可选项定时任务的表qrtz_*通过 Navicat 转过去后仍然有问题需要删除这些表然后手工执行原始的 Quartz 初始化脚本。Quartz 初始化脚本为quartz-2.2.3-distribution.tar.gz其他数据库转换方法.md 中给出了百度网盘下载链接解压后找到自己需要的数据库类型脚本即可。操作涉及删除目标库中 Navicat 转出的qrtz_*表执行前先确认这些表只是本轮传输产生的结果避免误删已有数据。可选参考Oracle dmp 导入说明仓库同目录下的 oracle11g dmp说明.txt 记录了另一条 Oracle 侧的 dmp 导入路径与本文 Navicat 传输是不同的方式其中给出的内容为文档示例# Oracle 导出编码 export NLS_LANGAMERICAN_AMERICA.ZHS16GBK导出用户为jeecgbootos文档示例的导入命令为imp scott/tigerorcl filejeecgboot-oracle11g.dmpscott/tigerorcl是文档中的示例值实际使用时替换为你自己的 Oracle 用户、密码和服务名。迁移完成之后JeecgBoot 后端仓库中提供了 Oracle 数据源配置文件 application-oracle.yml其中的数据源地址示例为jdbc:oracle:thin:127.0.0.1:1521:helowin驱动为oracle.jdbc.OracleDriver可作为后端连接迁移后 Oracle 库的配置参考。到此迁移的完整路径是Navicat 连接双库 → 数据传输转换大写 遇错继续 勾掉外键限制→ 按信息日志找出错表 → 删除qrtz_*表并手工执行 Quartz 脚本 → 手动补外键。【免费下载链接】jeecg-boot【低代码v2.0一句话即可生成整个系统】企业级AI低代码平台一键生成前后端代码甚至整个系统。 AI Skills 一句话画流程、设计表单、生成报表、大屏。内置 AI应用平台涵盖AI聊天、知识库、流程编排、MCP插件等兼容主流大模型。引领AI低代码「Skills 生成 → 在线配置 → 代码生成 → 手工合并-AI修改」开发模式解决 Java 项目 90% 重复工作提高效率又不失灵活。项目地址: https://gitcode.com/GitHub_Trending/je/jeecg-boot创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表