| 
                         如果需要删除已经创建的直方图,用DROP HISTOGRAM就可以实现: 
- mysql> ANALYZE TABLE payment DROP HISTOGRAM ON payment_date;  
 - +----------------+-----------+----------+---------------------------------------------------------+  
 - | Table          | Op        | Msg_type | Msg_text                                                |  
 - +----------------+-----------+----------+---------------------------------------------------------+  
 - | sakila.payment | histogram | status   | Histogram statistics removed for column 'payment_date'. |  
 - +----------------+-----------+----------+---------------------------------------------------------+ 
 
  
UPDATE HISTOGRAM可以一次性为多个列创建直方图。如果命令中间写错,ANALYZE TABLE仍然会起作用。比如,你指定了三列,但第二列不存在。MySQL仍然会为第一列和第三列创建直方图。 
- mysql> ANALYZE TABLE customer UPDATE HISTOGRAM ON c_birth_day, c_foobar, c_birth_month WITH 32 BUCKETS;  
 - +----------------+-----------+----------+----------------------------------------------------------+  
 - | Table          | Op        | Msg_type | Msg_text                                                 |  
 - +----------------+-----------+----------+----------------------------------------------------------+  
 - | tpcds.customer | histogram | status   | Histogram statistics created for column 'c_birth_day'.   |  
 - | tpcds.customer | histogram | status   | Histogram statistics created for column 'c_birth_month'. |  
 - | tpcds.customer | histogram | Error    | The column 'c_foobar' does not exist.                    | 
 - +----------------+-----------+----------+----------------------------------------------------------+  
 - 3 rows in set (0.15 sec) 
 
  
数据库内部发生了什么 
当你读过MySQL手册,你可能已经注意到新的系统变量histogram_generation_max_mem_size。当用户建立统计直方图,这个值是用来控制大约多少内存能允许被使用。那么,为什么要控制这个呢? 
                        (编辑:泰州站长网) 
【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! 
                     |