mysql内存引擎_MySQL存储引擎介绍之Memory

Memory存储引擎使用存在内存中的内容来创建表,每个Memory表只实际对应一个磁盘文件,在磁盘中表现为.frm文件。Memory类型的表访问速度非常快,因为它的数据是放在内存中的,并且默认使用hash索引,但是一旦服务关闭,表中的数据就会丢失。

示例:create table memory_tab(id int)engine=memory;

因为memory在mysqld重启后数据就会丢失,为了获得稳定的数据源,可以在启动mysqld时加上—init-file选项,把insert into memory_tab select 或load data infile类似的语句放进去即可。

另外因为memory表是把数据放到内存中的,所以服务器需要有足够的内存来维持所有在同一时间使用的memory表,注意对连接mysqld的所有用户连接共享内存表中的数据,根据应用如果不是在所有连接间共享数据,最好在内存表中加入标志各个连接的ID。当不再需要memory数据时,要记得去删除自己连接的数据。

对于内存表的官方说明:

The MEMORY storage engine creates tables with contents that are stored in memory. Formerly, these were known as HEAP tables. MEMORY is the preferred term, although HEAP remains supported for backward compatibility.

Each MEMORY table is associated with one disk file. The filename begins with the table name and has an extension of .fr

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值