日期:2014-05-16 浏览次数:20734 次
一 物化视图
??? 物化视图,它是用于预先计算并保存表连接或聚集等耗时较多的操作的结果,这样,在执行查询时,就可以避免进行这些耗时的操作,而从快速的得到结果。
??? 只有大型数据库oracle10g,db2才支持这个功能,而MySQL5.1暂时还没有这个功能。本人通过事件调度和存储过程模拟了物化视图。下面大家一起来讨论吧。^-^
二 准备知识
??? 1)存储过程:玩过数据库的人,都知道他是啥~,~
??? 2)事件调度:在MySQL5.1开始才有的新功能。说白了就是个定时器。跟java里的timer差不多。
show processlist; --这个命令能是查看线程,如果启动了时间调度器,则会多个event_scheduler set global event_scheduler = on; --启动时间调度器,关闭就不用我说了吧,off就可以了 show processlist\G;--查看线程,是不是多了个 User: event_scheduler --如果想启动单个事件,则执行下面命令 ALTER EVENT `myEvent` ON COMPLETION PRESERVE ENABLE; --关闭 ALTER EVENT `myEvent` ON COMPLETION PRESERVE DISABLE;
mysql默认不会启动event,所以需要修改你的my.ini或my.cnf[mysqld]的下面加入如下行
event_scheduler=1
三 模拟物化视图
??? 1)先建个基表吧。