MySQL服务器状态

系统变量

    SHOW VARIABLES
    可以使用这些变量,代表配置信息,可以通过INFORMATION_SCHEMA数据库里的各个表访问这些变量

状态变量

    SHOW STATUS
    只读,可以从INFORMATION_SCHEMA.GLOBAL_STATUS和INFORMATION_SCHEMA.SESSION_STATUS表取值

线程和连接统计信息

    尝试连接,退出连接,网络流量,线程统计信息:
        Connections,Max_used_connections,Threads_connected
        Aborted_clients,Aborted_connects
        Bytes_received,Bytes_sent
        Slow_launch_threads,Threads_cached,Threads_created,Threads_running
    Aborted_connects不为0,是有网络问题或者尝试连接并且失败。太大也会有问题
    Aborted_clients在累加,有应用错误发生
    Threads_created/Uptime跟0差不多,意味着线程缓冲区太小了

二进制日志状态

    Binlog_cache_use和Binlog_cache_disk_use可以显示当前二进制日志缓存保存了多少个事务,有多少事务过于庞大无法放入缓存,只能把它们的语句存储在一个临时文件

命令计数器

    Com_*记录了已发出的每一种SQL的数目

临时表和文件

    SHOW GLOBAL STATUS LIKE 'Created_tmp%';

Handler操作

    Handler API是MySQL与存储引擎之间的借口。Handler_*变量记录了Handler的操作次数
    SHOW GLOBAL STATUS LIKE 'Handler%';

MyISAM索引键缓冲区

    Key_*包含了MyISAM索引键缓冲区的度量值和计数器
    SHOW GLOBAL STATUS LIKE 'Key_%';

文件描述符

    主要是MyISAM,它能告诉MySQL打开每一张表的.frm,.MYI,.MYD文件的频度分别是多少
    SHOW GLOBAL STATUS LIKE 'Open_%';

查询缓存

    通过Qcache_*来检查查询缓存
    SHOW GLOBAL STATUS LIKE 'Qcache_%';

SELECT

    Select_*记录了各类型SELECT查询的次数
    SHOW GLOBAL STATUS LIKE 'Select_%';
    Select_range
            一种联接数目,该连接在第一个表的索引的指定范围内做扫描
    Select_scan
            对第一个表做全表扫描的联接数目
    Select_full_range_join
            使用表n里的一个值去获取表n+1里某个引用索引范围内的行
    Select_range_check
            为表n里的每一行,在表n+1里对索引重新估值,开销非常高
    Select_full_join
            检查的行总数是每个表里行数的乘积,很糟糕
    一般最后两个变量的增长不应该很快。

排序

    当MySQL无法使用索引区获得预排序的行时,就会去做文件排序,增加Sort_*的值。MySQL使用排序缓冲区存储一批数据行做排序,完成排序后,把已排序的行归并到结果里,增加Sort_merge_passes的值,然后又填充一批新数据到缓冲区。
    SHOW GLOBAL STATUS LIKE 'Sort_%';
    当MySQL从文件排序的结果读取排序过的数据行,增加Sort_scan和Sort_range。如果查询方案触发了Select_scan增长,Sort_scan也会增长。当Select_range增长时,Sort_range也会增长

表锁定

    Table_locks_immediate和Table_locks_waited可以知道在一个时刻内有多少锁立即被授予,有多少需要等待

SHOW INNODB STATUS

    1.SEMAPHORE
        包含两种数据:时间计数器,可选的当前等待线程的列表。如果有高并发的工作负载,需要关注这一段信号量
    2.LATEST FOREIGN KEY ERROR
        只有在服务器上有外键错误的时候才会出现
    3.LATEST DETECTED DEADLOCK
        只有当服务器内有死锁时才会出现
    4.TRANSACTION
        包含InnoDB事务的一些信息
    5.FILE I/O
        显示是I/O helper线程的状态,用性能计数器的方式表示
        至少会看到插入缓冲区线程,日志线程,读线程,写线程
    6.LOG
        显示InnoDB事务LOG子系统的统计信息
    7.BUFFER POOL AND MEMORY
    8.ROW OPERATIONS
    9.SHOW PROCESSLIST
        显示连接到MySQL的线程的当前状态信息。Command和State列显示线程状态
    10.SHOW MUTEX STATUS
        返回InnoDB互斥量的细节信息,用于深入观察系统伸缩性和并发性的问题

复制状态

    SHOW MASTER STATUS 显示主机复制信息和配置
    SHOW BINARY LOGS 得到一个二进制日志的清单
    SHOW BINLOG EVENTS 查看二进制日志里的事件
    SHOW SLAVE STATUS 查看从服务器的状态和配置信息
        Master_Log_File/Read_Master_Log_Pos I/O线程在主服务器二进制日志上正在读取的位置
        Relay_Log_File/Relay_Log_Pos SQL线程在从服务器转发日志上正在执行的位置
        Relay_Master_Log_File/Exec_Master_Log_Pos  SQL线程在主服务器二进制日志上正在执行的位置

INFORMATION_SCHEMA

    是一套按照SQL标准定义的系统视图。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值