mysql 案例 ~ 常见案例汇总~2

一 简介: 我们会在此篇文章继续记录日常故障问题

二 案例汇总

     1 sql慢日志出现 administrator command: Prepare; ,时间很长

     分析 : 此场景常见于 PHP相关应用 

     补充基础知识    

     php-pdo 两种prepare模式
   1. 本地prepare 不会发送给MySQL Server
   2. 服务器端prepare 会发送给MySQL Server
   2 解决办法  
      PHP将链接模式修改为本地  然后通过mysql查看 show global status like 'Com_stmt_prepare'; ,如果值不再变化,证明修改成功
   总结  
       1. 在服务器端的prepare毕竟有消耗,当并发量大,频繁prepare的时候,就会有性能问题
  2. 服务端的prepare模式还会带来的另外一个问题就是,排错和slow 优化有困难,因为大部分情况下是看不到真实query的
  3. 尽量设置php-pdo为 $pdo->setAttribute(PDO::ATTR_EMULATE_PREPARES,true) ,在本地prepare,不要给服务器造成额外压力

猜你喜欢

转载自www.cnblogs.com/danhuangpai/p/10873766.html