易截截图软件、单文件、免安装、纯绿色、仅160KB

mysql查询缓存的内存碎片

query_cache_min_res_unit   查询缓存分配的最小块的大小(字节)
query_alloc_block_size    为查询分析和执行过程中创建的对象分配的内存块大小
Qcache_free_blocks代表内存自由块的多少,反映了内存碎片的情况
==========================
1)当查询进行的时候,Mysql把查询结果保存在qurey cache中,但如果要保存的结果比较大,超过query_cache_min_res_unit的值 ,这时候mysql将一边检索结果,一边进行保存结果,所以,有时候并不是把所有结果全部得到后再进行一次性保存,而是每次分配一块query_cache_min_res_unit 大小的内存空间保存结果集,使用完后,接着再分配一个这样的块,如果还不不够,接着再分配一个块,依此类推,也就是说,有可能在一次查询中,mysql要进行多次内存分配的操作。
2)内存碎片的产生。当一块分配的内存没有完全使用时,MySQL会把这块内存Trim掉,把没有使用的那部分归还以重复利用。比如,第一次分配4KB,只用了3KB,剩1KB,第二次连续操作,分配4KB,用了2KB,剩2KB,这两次连续操作共剩下的1KB+2KB=3KB,不足以做个一个内存单元分配, 这时候,内存碎片便产生了。
3)使用flush query cache,可以消除碎片
4)如果Qcache_free_blocks值过大,可能是query_cache_min_res_unit值过大,应该调小些
5)query_cache_min_res_unit的估计值:(query_cache_size - Qcache_free_memory) / Qcache_queries_in_cache


相关文档:

mysql中show指令详细使用方法

关键字: GreenSQL Sphinx phpMyAdmin MySQL内核 数据库安全配置
本文主要介绍mysql数据库下show命令的主要用法
  a. show tables或show tables from database_name; -- 显示当前数据库中所有表的名称。
  b. show databases; -- 显示mysql中所有数据库的名称。
  c. show columns from table_name from data ......

MySQL备份、还原

还原一个数据库:mysql -h localhost -u root -p123456 www<c:\www.sql
备份一个数据库:mysqldump -h localhost -u root -p123456 www > d:\www2008-2-26.sql
//以下是在程序中进行测试
//$command = "mysqldump --opt -h $dbhost -u $dbuser -p $dbpass $dbname | gzip > $backupFile";
$command="mysqldum ......

MYSQL和java中的数值范围 91KGE

mysql数值范围
tinyint  -128~127   0~255
smallint  -32768~32767  0~65535
mediumint -8388608~8388607  0~16777215
int -2147483648~2147483647 0~4294967295
bigint  -9223372036854775808~9223372036854775807   0~18446744073709551615
java中
byte   ......

MySQL教程:Order By用法


先按照下面的表结构创建mysql_order_by_test数据表,我们用实例一点一点告诉你,MySQL order by的用法。
  ORDER BY uid ASC
  按照uid正序查询数据,也就是按照uid从小到大排列
  ORDER BY uid DESC
  按照uid逆序查询数据,也就是按照uid从大到小排列
  我们来看
SELECT * from mysql_order_by_test OR ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号