• 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。
    

      

  • 相关阅读:
    C++内存机制中内存溢出、内存泄露、内存越界和栈溢出的区别和联系
    ArrayList、Vector、HashMap、HashTable、HashSet的默认初始容量、加载因子、扩容增量
    C++ 智能指针 auto_ptr 和 shared_ptr
    Java初始和环境搭建(一)
    Spring_01
    Linux中常用命令
    linux_Ubuntu项目运行环境搭建
    Nginx_Ubuntu
    idea运行时 Process finished with exit code -1073741819 (0xC0000005)
    MySQL_基础
  • 原文地址:https://www.cnblogs.com/isuben/p/7060616.html
Copyright © 2020-2023  润新知