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

lealone在mysql插件终端下,插入一个1000W数据库大表数据,插入中间过程中,mysql模式数据库崩溃连接不了,lealone模式数据库还是可以连接 #236

Open
tangzhongshan opened this issue Jul 9, 2024 · 14 comments

Comments

@tangzhongshan
Copy link

tangzhongshan commented Jul 9, 2024

lealone在mysql插件终端下,插入一个1000W数据库大表数据,插入中间过程中,mysql模式数据库崩溃连接不了,lealone模式数据库还是可以连接

image

mysql模式下数据库连接报如下错误
image

lealone模式下数据库连接正常如下
image

现在是好不容易插入进去到lealone数据库的数据,准备做测试,比较一下mysql和lealone查询大表的性能差异,现在lealone插入到一半数据库崩溃以后,进入都进不了

@tangzhongshan
Copy link
Author

image

用lealone客户端命令也是一样的连接不了

@tangzhongshan
Copy link
Author

最后lealone数据库的日志如下
image

@tangzhongshan
Copy link
Author

有什么办法,可以修复一下,这样的话,之前添加到mysql模式的数据能够可以用起来

@codefollower
Copy link
Member

最后lealone数据库的日志如下 image

我看了一下代码,可能遇到一个 bug 了,一个数据库实例被初始化了两次,报告 object already exists 错误。
登录到运行 lealone 数据库的服务器,按 ctrl+c 或 kill -9 退出,然后重启 lealone。

@codefollower
Copy link
Member

i_6_375 这个目录是某个索引的数据,索引字段的数据是很大的吗?1000万记录不应该有这么多数据文件的,你看看这些数据文件的大小普遍有多大?

@codefollower
Copy link
Member

codefollower commented Jul 9, 2024

1000万条记录如果用 lealone 的客户端多线程并发写很快的,lealone mysql 插件我都还没有做过性能测试和稳定性测试,这段时间难为你了,lealone mysql 插件还很不成熟的,我原本的计划是放到10-12月份再完善。

@codefollower
Copy link
Member

最后lealone数据库的日志如下 image

我没法重现这个 bug,
看看前面还有没有其他的错误信息。

@tangzhongshan
Copy link
Author

主要是为了跟现有架构平滑迁移测试,如果用lealone模式的,jdbc访问方式都不一样了,比如说php访问、java后端访问lealone数据库底层代码都要修改,而且不一定都能支持,所以才选择mysql插件的模式,这样的话代码改动起来最小了

那我还是等mysql插件模式完善以后,再继续做项目迁移测试了

谢谢大神的帮助!

@tangzhongshan
Copy link
Author

i_6_375 这个目录是某个索引的数据,索引字段的数据是很大的吗?1000万记录不应该有这么多数据文件的,你看看这些数据文件的大小普遍有多大?

我查了一下mysql里面占用的空间是2G大小,这里135G确实有点太大了

@tangzhongshan
Copy link
Author

最后lealone数据库的日志如下 image

我看了一下代码,可能遇到一个 bug 了,一个数据库实例被初始化了两次,报告 object already exists 错误。 登录到运行 lealone 数据库的服务器,按 ctrl+c 或 kill -9 退出,然后重启 lealone。

重启虚拟机,ctrl+c 或 kill -9 退出,各种方法都试过了,目前就是mysql模式的连接怎么也进入不了

@tangzhongshan
Copy link
Author

i_6_375 这个目录是某个索引的数据,索引字段的数据是很大的吗?1000万记录不应该有这么多数据文件的,你看看这些数据文件的大小普遍有多大?

image
image

我查了一下mysql里面占用的空间是2G大小,数据量是1077W,这里135G确实有点太大了

@codefollower
Copy link
Member

i_6_375 这个目录是某个索引的数据,索引字段的数据是很大的吗?1000万记录不应该有这么多数据文件的,你看看这些数据文件的大小普遍有多大?

image image

我查了一下mysql里面占用的空间是2G大小,数据量是1077W,这里135G确实有点太大了

索引字段是什么类型,写入操作是只有 insert 还是 insert + update?

@tangzhongshan
Copy link
Author

都是insert插入,是mysql导出的insert语句插入,插入4百万以后中断了,连接不了,索引是字符串字段+timestamp字段

@codefollower
Copy link
Member

我得测一下 lealone mysql 插件的写性能

4百万数据好小的,我平时用 lealone 的客户端压测,随便都是几百万数据,
4百万数据在我的4核的笔记本电脑上一般10-20秒就写完了。

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

2 participants