Memory存储引擎使用问题

左大神在这 2009-12-10 08:08:54
我有个数据表,要求插入,更新和查询效率高(只是根据主键查询),最好毫秒以下速度。于是我尝试了下Memory存储引擎,发现每次只能插入2000多条记录,同时报错,the table is full.我知道这个是因为表慢了,我修改了max_heap_table_size(默认16M),然后alter table mytable max_rows = xxx ,测试了下,这2个参数修改都生效了,但是重新测试,还是没有效果,跟没有修改时一样,只能插入2000多条记录,然后就报错the table xxx is full。谁知道什么原因,谢谢。
...全文
50 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
左大神在这 2009-12-11
  • 打赏
  • 举报
回复
好复杂
ACMAIN_CHM 2009-12-10
  • 打赏
  • 举报
回复
The memory needed for one row in a MEMORY table is calculated using the following expression:

SUM_OVER_ALL_BTREE_KEYS(max_length_of_key + sizeof(char*) × 4)
+ SUM_OVER_ALL_HASH_KEYS(sizeof(char*) × 2)
+ ALIGN(length_of_row+1, sizeof(char*))

左大神在这 2009-12-10
  • 打赏
  • 举报
回复
A bigint(20) primary key.
B varchar(2000),
c varchar(500),
d tinyint(2).
怎么计算,就这4个字段,A上建了唯一索引
ACMAIN_CHM 2009-12-10
  • 打赏
  • 举报
回复
你的表结构/索引是什么? 计算一下尺寸。
左大神在这 2009-12-10
  • 打赏
  • 举报
回复
搞不懂什么原因,版本是MYSQL 5.1.31.
左大神在这 2009-12-10
  • 打赏
  • 举报
回复
1G拉 ,我知道有个4G限制,差老远了
ACMAIN_CHM 2009-12-10
  • 打赏
  • 举报
回复
你的内存是多大?

56,679

社区成员

发帖
与我相关
我的任务
社区描述
MySQL相关内容讨论专区
社区管理员
  • MySQL
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧