Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

能不能出一个单机版mysql迁移到lealone的文档 #205

Open
daren990 opened this issue Oct 23, 2023 · 6 comments
Open

能不能出一个单机版mysql迁移到lealone的文档 #205

daren990 opened this issue Oct 23, 2023 · 6 comments

Comments

@daren990
Copy link

能不能出一个单机版mysql迁移到lealone的文档

@codefollower
Copy link
Member

lealone 的 mysql 插件还处于活跃开发阶段,等正式发布后再考虑从 mysql 迁移的事吧。有了 mysql 插件之后,现有的 mysql 应用一般是不需要改动的,所以也不需要专门的从 mysql 迁移到 lealone 的文档。我现在的工作就是让 lealone 的 mysql 插件尽可能多的兼容 mysql。

@daren990
Copy link
Author

明白,会考虑兼容mysql的view,function这些吗

@codefollower
Copy link
Member

view 和 function 的语法支持,mysql 的内置函数不会全部支持,比如跟复制集群相关的。

@dbgp
Copy link

dbgp commented Dec 5, 2023

lealone 的 mysql 插件还处于活跃开发阶段,等正式发布后再考虑从 mysql 迁移的事吧。有了 mysql 插件之后,现有的 mysql 应用一般是不需要改动的,所以也不需要专门的从 mysql 迁移到 lealone 的文档。我现在的工作就是让 lealone 的 mysql 插件尽可能多的兼容 mysql。

我理解是:应用不需要改动,数据库的数据还是要迁移一次的吧?(迁移数据的这个需求也会让mysql插件做吗?)

目前也有类似的需求:想先把mysql的数据迁移到lealone,然后应用层面只需要更换一下数据库连接(数据库的连接驱动也需要更换一下?)

这个文档还是需要的。

计划实验验证一下:现有的springMVC + mysql + myBatis的应用,如何迁移到lealone。

@codefollower
Copy link
Member

mysql 数据量不大的话,直接用 mysqldump 把 mysql 的表结构和数据导出到一个 sql 文件中,然后让 lealone 执行一下这个 sql 文件就可以了。

如果原来是 spring + mysql + mybatis,从mysql 切换到 lealone 后还是用 client-server 模式,那么不需要换 jdbc 驱动,应用依然使用 mysql 的 jdbc 驱动,如果端口号和数据库名跟原来一样,连 jdbc url 都不需要改。

如果用的是嵌入模式,因为 mysql 的 jdbc 不支持嵌入模式的,得换成 lealone 的 jdbc client,然后 url 需要改成 jdbc:lealone:embed 这种方式。

@codefollower
Copy link
Member

把 mysql 的数据迁移到 lealone 的步骤,
以下假设在 mysql 中已经存在一个叫 mydb 的数据库,现在需要把 mydb 的数据迁移到 lealone:

第1步: 用 mysqldump 把 mydb 的表结构和数据导出到一个 mydb.sql 文件
mysqldump -h 127.0.0.1-P 3306 -u root -proot mydb > mydb.sql

第2步: 用 mysql 的命令行客户端连到 lealone 数据库,假设端口号是 9410
mysql -h 127.0.0.1 -P 9410 -u root

第3步: 创建 mydb 数据库,并导入数据

create database test;
use test;
source mydb.sql;

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants