zoukankan      html  css  js  c++  java
  • [日常] PHP与Mysql测试kill慢查询并检验PDO的错误模式

    <?php
    
    try{
    
            //1. pdo的错误模式,抛出异常,不记录到php的error日志,不影响代码继续运行,
            $opts=array(
                    PDO::ATTR_ERRMODE               => PDO::ERRMODE_EXCEPTION,
            );  
    
            $pdo=new PDO("mysql:host=localhost;dbname=pan","root","xxxx",$opts);
            $pdo->query('set names utf8');
            $sth=$pdo->prepare("select sleep(20) from texts where title like '%测试%'");
            $sth->execute(array("title"=>"测试"));
            $res=$sth->fetchAll(PDO::FETCH_ASSOC);
            print_r($res);
    
    
    }catch(Exception $e){
        
            //2. code不是整型,如果不进行处理,会在此处报Fatal的500错误
            //Fatal error: Uncaught Error: Wrong parameters for MyDbException([string $message [, long $code [, Throwable $previous = NULL]]])
            throw new MyDbException($e->getMessage(),intval($e->getCode()));
    }
    
    class MyDbException extends Exception{
    
    }
    
    echo "1111111";
    
    /*
    3.测试慢查询
            3.1 sql语句中使用 select sleep(20) from
            3.2 开启慢查询日志:
                    配置文件:/etc/mysql/mysql.conf.d/mysqld.cnf
                    slow_query_log = ON
                    slow_query_log_file = /usr/local/mysql/data/slow.log
                    long_query_time = 1
    
                    show variables like 'slow_query%';
                    show variables like 'long_query_time';
            3.3 kill掉mysql的连接线程
                    show full processlist;
                    kill id号
    */
    

      

  • 相关阅读:
    221. 最大正方形
    9. 回文数
    2. 两数相加
    1. 两数之和
    HDU 1864 最大报销额
    47 java包打成本地maven
    46 数组中的元素进行位置交换
    5 docker安装kibana
    45 vue图片放大预览
    4 docker中安装es
  • 原文地址:https://www.cnblogs.com/taoshihan/p/9005570.html
Copyright © 2011-2022 走看看