`
85977328
  • 浏览: 1871398 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

MYSQL使用心得(四)----临时表与内存表

阅读更多
mysql5.5性能优化-内存表
内存表分为2种,但共同点是,重起数据库以后,内存中的数据全部丢失,内存表的功能有部分的限制,有些属性不能像正常表一样使用,所以请大家使用的时候谨慎参照官方文档.下面只是抛砖引玉.
1.临时表:表建在内存里,数据在内存里
2.内存表:表建在磁盘里,数据在内存里
其中包括2个重要的参数
[mysqld]
# 内存表容量
max_heap_table_size=1024M
# 临时表容量
tmp_table_size=1024M

建立内存表的时候,在5.5里,需要指定表的引擎类型 ENGINE=MEMORY
CREATE TABLE mem (
  id int(11) AUTO_INCREMENT,
  name varchar(255),
  primary key(id)
) ENGINE=MEMORY DEFAULT CHARSET=utf8 ROW_FORMAT=COMPACT;

临时表
create temporary table tmp1(id int not null);
分享到:
评论
10 楼 bngoogle 2011-11-24  
85977328 写道
可以把常量写在一个固定表里,然后启动的时候,把里面所有数据都加载倒内存表中。

如果常量数据有几千万条的话,也是这样子做吗?
9 楼 85977328 2011-01-18  
可以把常量写在一个固定表里,然后启动的时候,把里面所有数据都加载倒内存表中。
8 楼 linvar 2011-01-18  
对于常量数据表(不知这样称呼对不对)
也就是系统的一些定量保存在数据库中, 但可以动态更新(比较少)
应该使用哪种引擎呢
Memery应该不错, 但是怎样初始化这个内存表呢
7 楼 boygirl 2011-01-08  
处理大表,最麻烦的。。。
6 楼 85977328 2010-12-28  
trigger应该也是可以的,但mis中一般不推荐使用trigger.严重影响性能.使用trigger需要注意数据库关闭后,再次启动,初始加载数据到内存表和临时表中的问题.
5 楼 zhongdw 2010-12-28  
85977328 写道
hardPass 写道
有没有办法,定期把内存表里的东西同步到硬盘上?

当然有了 ,使用 event实现定时器功能
使用存储过程和游标,实现临时表的数据查询,然后持久化到磁盘上

how about trigger?
4 楼 85977328 2010-12-25  
hardPass 写道
有没有办法,定期把内存表里的东西同步到硬盘上?

当然有了 ,使用 event实现定时器功能
使用存储过程和游标,实现临时表的数据查询,然后持久化到磁盘上
3 楼 hardPass 2010-12-22  
有没有办法,定期把内存表里的东西同步到硬盘上?
2 楼 85977328 2010-12-21  
ttl1118 写道
# skip hostname,just use ip
skip-name-resolve


# auto start event
event scheduler=1

麻烦请教下 这两句话什么意思!~谢啦

skip-name-resolve
mysql5.5有个小BUG,设置这个以后,才能远程IP访问
event scheduler=1
mysql启动的时候,启动event
1 楼 ttl1118 2010-12-20  
# skip hostname,just use ip
skip-name-resolve


# auto start event
event scheduler=1

麻烦请教下 这两句话什么意思!~谢啦

相关推荐

Global site tag (gtag.js) - Google Analytics