我当前在线mysql5.0.45复制应用   2台linux mysql 一主一从a  主机 8g内存
b  从机 4g内存a的my.cnf 配置了16个表的表级别复制使用一段时间发现从机 执行sql 相对a而言慢很多  (有时候慢很多,有时候慢不多)
16个表数据都在增长a 表 30万
user 表30万
e表    10万
t表    30万
tm表   15万
p表    5万 
。。其他都是小表
e 表 t表基本每秒都有数据插入。 总体环境并发性比较高       是否相对我的硬件配置而言 ,这些表级别复制而言对从机器压力多大导致sql查询不理想?
有是否方法优化从机的sql查询  ??

解决方案 »

  1.   

    1 发现从机 执行sql 相对a而言慢很多,是指slave执行select的速度慢,还是复制的慢
    2 慢很多是什么概念,5s, 10s, 1min?如果复制慢,先排除网络环境的因素
    如果select慢,explain一下看看,同时看看,master/slave的配置参数
      

  2.   

    select慢master/slave的配置参数  如何检查 , 楼上需要看那个。  参数实在过多
      

  3.   

    master并发性比较高 而slave只是单线程的执行relay sql,所以容易和您的查询竟争锁(读需要写锁释放后才行),有时候慢也正常!1、让您的事务尽可能够快的完成(比如把一些大事务改成短事务)
    2、让slave执行relay sql尽可能的快 参考http://www.maatkit.org/doc/mk-slave-prefetch.html
      

  4.   

    3 同步复制
    使用google的mysql半同步补丁 或者使用 solidDB for mysql
      

  5.   

    太感谢楼上1MAATKIT的使用  请问你有经验咩有啦 
    如果有 请说说啦
    ---------maatkit-2325.tar.gz  
             mk-slave-prefetch Pipeline relay logs on a MySQL slave to pre-warm caches.
            不知道如何用  他的好处在哪里 ? 稳定性好吗 (我的是在线系统哦 不可能用有bug或者不太稳定的产品)
              2 使用google的mysql半同步补丁 或者使用 solidDB for mysql
    ---------没有下载到 请给地址 或者说说他的好处
      

  6.   

    http://code.google.com/p/google-mysql-tools/
    http://www-01.ibm.com/software/data/soliddb/
      

  7.   

    参考高性能MySQL(第2版)中文版
    http://www.verycd.com/topics/2815869/