lealone / Lealone

比 MySQL 和 MongoDB 快10倍的 OLTP 关系数据库和文档数据库
Other
2.44k stars 514 forks source link

lealone和ruoyi框架整合的数据库配置的问题汇总 #231

Open tangzhongshan opened 1 month ago

tangzhongshan commented 1 month ago

lealone和ruoyi框架整合的数据库配置的问题汇总

大神能否出个lealone数据库和ruoyi框架整合的spring的database的配置

现在我把ruoyi的数据库表都迁移到lealone数据库,但是后台代码这里,配置不好

image

image

tangzhongshan commented 1 month ago

ruoyi-vue是目前比较流行的前后端分离的框架,我想改造成用lealone数据库,现在就是后台这里配置不好

codefollower commented 1 month ago

好的,我先试一下

tangzhongshan commented 1 month ago

https://gitee.com/y_project/RuoYi-Vue 这个是源码的地址

codefollower commented 1 month ago

我用 lealone mysql 插件已经完全跑通 RuoYi-Vue

在 mysql 客户端执行 source ry_20240601.sql 时,有以下几个错误,

  1. create table 语句最后那个 auto_increment=10 参数无法识别,最新的 lealone mysql 插件代码已经能解析这个参数了;
  2. \'ry\' 改成 ''ry'',连续两个单引号就表示在字符串中嵌入一个单引号;
  3. \"直接改成",在字符串中包含一个双引号是不需要用\来转义的;
  4. notice_content longblob 改成 notice_content clob;

这是我修改后的 ry_20240601.sql ry_20240601.zip

codefollower commented 1 month ago

用 lealone mysql 插件跑 RuoYi-Vue,只要用上面修改后的 ry_20240601.sql 即可,其他的都不用动的。 application-druid.yml 里那个 password 参数在 lealone mysql 插件中默认是空,所以把它留空就行。

tangzhongshan commented 1 month ago

好的,谢谢大神,我试一下

tangzhongshan commented 1 month ago

我理解差了,既然已经用了mysql插件,端口就应该用走mysql客户端的那个端口,不用lealone启动的端口,这样的话,ruoyi-vue的druid配置那里除了改成lealone-mysql插件地址和端口,用户名和密码用lealone的mysql实例的数据库就可以了,其他的还是走以前的mysql数据库配置参数就可以了,我现在也可以跑起来了

再次感谢大神的帮助!

codefollower commented 1 month ago

mysql插件

是的,如果使用 mysql 插件,就完全按照 mysql 的习惯来使用即可。

tangzhongshan commented 1 month ago

mysqldump_ruoyi.zip

不过我导入mysqldump的脚本还是有错误,导入ruoyi-vue的修改''ry''和notent的clob的字段以后的sql,现在是支持的

如果大神把附件里面里的mysqldump的语法适配完成,我想mysql的数据迁移到lealone就简单多了,现在主要是mysqldump导入的字段和表名都有``这个符号,还有一些多余的语法,这个就要去验证了,验证好了,能够mysqldump支持导入数据,那以后lealone安装mysql插件以后的场景使用范围就多了

codefollower commented 1 month ago

mysqldump_ruoyi.zip

不过我导入mysqldump的脚本还是有错误,导入ruoyi-vue的修改''ry''和notent的clob的字段以后的sql,现在是支持的

如果大神把附件里面里的mysqldump的语法适配完成,我想mysql的数据迁移到lealone就简单多了,现在主要是mysqldump导入的字段和表名都有``这个符号,还有一些多余的语法,这个就要去验证了,验证好了,能够mysqldump支持导入数据,那以后lealone安装mysql插件以后的场景使用范围就多了

好的,我正在想怎么支持 mysql 的特殊转义方式, mysql 插件要兼容的地方还挺多的,目前也只能先兼容常用的。

codefollower commented 1 month ago

mysqldump_ruoyi.zip 不过我导入mysqldump的脚本还是有错误,导入ruoyi-vue的修改''ry''和notent的clob的字段以后的sql,现在是支持的 如果大神把附件里面里的mysqldump的语法适配完成,我想mysql的数据迁移到lealone就简单多了,现在主要是mysqldump导入的字段和表名都有``这个符号,还有一些多余的语法,这个就要去验证了,验证好了,能够mysqldump支持导入数据,那以后lealone安装mysql插件以后的场景使用范围就多了

好的,我正在想怎么支持 mysql 的特殊转义方式, mysql 插件要兼容的地方还挺多的,目前也只能先兼容常用的。

目前只剩下 SET FOREIGN_KEY_CHECKS = 0 不支持了,mysql 通过这个参数禁用外键约束检查,lealone 还不支持,代码改动有点大。 所以会报告 qrtz_triggers 表找不到,原因是创建表的顺序错了,要把 qrtz_job_details 排在 qrtz_triggers 的前面,qrtz_triggers 排在 qrtz_job_details 的前面,这样才对。

mysqldump 这个工具导出表结构时,它可能没有检查表之间的依赖关系,所以生成的 create table 语句是乱的,只能用 SET FOREIGN_KEY_CHECKS = 0 让 mysql 在后期检查约束。