技术开发 频道

深入了解MySQL 5.5分区功能增强

  因为我们没有使用COLUMNS关键字,我们也不能使用它,因为它不支持混合列和函数,表定义中的记录值就是TO_SECONDS函数的计算结果。

  但我们还是要感谢新的函数,我们可以反推这个值,换算成一个更容易读懂的日期。

select
   partition_name part,    partition_expression expr,
    from_seconds(partition_description) descr,
    table_rows  
FROM INFORMATION_SCHEMA.partitions  WHERE     TABLE_SCHEMA = 'test'
    
AND TABLE_NAME='t2';
  
+------+----------------+---------------------+------------+
  | part | expr           |descr               | table_rows |
  +------+----------------+---------------------+------------+ 
 | p01  | to_seconds(dt) | 2009-11-30 08:00:00 |          0 | 
 | p02  | to_seconds(dt) | 2009-11-30 16:00:00 |          0 | 
 | p03  | to_seconds(dt) | 2009-12-01 00:00:00 |          0 | 
 | p04  | to_seconds(dt) | 2009-12-01 08:00:00 |          0 | 
 | p05  | to_seconds(dt) | 2009-12-01 16:00:00 |          0 | 
 | p06  | to_seconds(dt) | 0000-00-00 00:00:00 |          0 | 
 +------+----------------+---------------------+------------+

  总结

  MySQL 5.5对分区用户绝对是个好消息,虽然没有提供直接的性能增强的方法(如果你按响应时间评估性能),但更易于使用的增强功能,以及TRUNCATE PARTITION命令都可以为DBA节省大量的时间,有时对最终用户亦如此。

  这些增强的功能可能会在下一个里程碑发布时得到更新,最终版本预计会在2010年年中发布,届时所有分区用户都可以尝试一下!

0
相关文章