zoukankan      html  css  js  c++  java
  • mysql常见用法

    查看连接数
    show processlist;
    查看慢日志
    show variables like '%slow_query_log%';
    show variables like 'long_query_time%';设置慢日志记录什么样的SQL,默认10s
    log-queries-not-using-indexes:未使用索引的查询也被记录到慢查询日志中,一般也开启这个变量


    如果出现如下情况

    mysql> show variables like '%slow_query_log%';
    +---------------------+---------------------+
    | Variable_name | Value |
    +---------------------+---------------------+
    | slow_query_log | OFF |
    | slow_query_log_file | ZhiBingLiu-slow.log |
    +---------------------+---------------------+
    2 rows in set

    windows下my.ini添加
    [mysqld]

    slow-query-log=1
    slow-query-log-file = "D:/xampp/mysql/data/mysql-slow.log"
    long_query_time = 4 #默认为10秒

    #min-examined-row-limit=30 #查询检查返回少于该参数指定行的SQL不被记录到慢查询日志
    log-queries-not-using-indexes

    {注:

    slow_query_log

    long_query_time = 5

    log-slow-queries=slow.log

    现在必须要这种设置才行

    slow-query-log=1

    long_query_time = 5 #这个没变
    slow-query-log-file=slow.log

    看来从5.6.* 可能已经全面取消了

    log-slow-queries=slow.log这种写法了}

    查看log日志是否开启
    show variables like 'general_log'
    set GLOBAL general_log='ON';
    SET GLOBAL general_log_file = '/tmp/mysql.log'
    不使用的时候记得关掉,否则会大量占用磁盘空间。

     mysql的性能和max_connections(最大连接数默认值为100) 和 wait_timeout(空闲等待时长,缺省情况下,wait_timeout的初始值是28800)  都有关系。wait_timeout 的值越大,连接的空闲等待就越长,这样就会造成当前连接数越大

    [mysqld]
    max_connections=1000 #默认是100
    wait_time_out=1814400  #21天,默认是8小时
    interactive_timeout=1814400 #需要和上一个参数必须同时设置  

     将MySQL慢查询日志写入表的的设置为。set global log_output='TABLE';

    在抓取数据的时候总是提示:MySQL server has gone away, 在这样的情况下正是由于某两条SQL查询之间隔离的时间过长,导致该连接自动断开。 解决方案:在打开链接的时候如下多加一个参数
    
    mysql_connect($dbhost, $dbuser, $dbpw, false, MYSQL_CLIENT_INTERACTIVE)
    然后接着执行这样的query:
    
    mysql_query("set interactive_timeout=24*3600");
    这样的话,就不会出现mysql server has gone away 了。
    为什么呢? 看看官方手册里的说明
    MYSQL_CLIENT_COMPRESS 使用压缩的通讯协议 
    MYSQL_CLIENT_IGNORE_SPACE 允许在函数名后留空格位 
    MYSQL_CLIENT_INTERACTIVE 允许设置断开连接之前所空闲等候的 interactive_timeout 时间(代替 wait_timeout)。
    MYSQL_CLIENT_SSL 使用 SSL 加密。本标志仅在 MySQL 客户端库版本为 4.x 或更高版本时可用。在 PHP 4 和 Windows 版的 PHP 5 安装包中绑定的都是 3.23.x。
    

      

  • 相关阅读:
    【WP8】关于类库本地化问题
    【WP8】富文本功能实现
    【WP8】换肤功能的实现
    【WP8】图片缓存控件
    【WP8】图片压缩处理
    【WP8】让TextBox文本支持滑动(Scroll)
    <正则吃饺子> :关于Guava中 Joiner 和 Splitter 的简单使用
    <正则吃饺子> :关于前端往后端传递布尔值参数的问题
    <正则吃饺子>:关于使用powerDesign连接oracle数据库,导出数据表结构(ER图吧)
    <正则吃饺子>:关于集合的简单整理总结
  • 原文地址:https://www.cnblogs.com/isuben/p/7060616.html
Copyright © 2011-2022 走看看