MySQL Status Uptime 数据库状态作用意思及如何正确

本站中文解释

:MySQL 服务器已经运行的时间(以秒为单位)。

Threads_connected:当前连接服务器的客户端的数量。

Threads_running:当前正在执行查询的线程的数量。

Questions:所有客户端执行的查询的总数。

Queries/sec:每秒执行的查询数量(Questions / Uptime)

Slow_queries:超过long_query_time设置的查询的数量。

Open_tables:目前服务器打开的表数量。

Opened_tables:打开表的次数。

Table_locks_waited:因为意外而无法锁定表而等待数次。

Open_files:当前打开的文件的数量(用于判断open_files_limit配置项)

Flush_tables:发生FLUSH TABLES操作数。

Key_read_requests:请求读取键的次数。

Key_reads:必须读取表以查询键的次数。

Key_write_requests:请求写入键的次数。

Key_writes:实际写入次数,用来制表进行统计。

Bytes_received:从客户接收的字节数。

Bytes_sent:给客户发送的字节数。

MySQL的status变量多用于性能检测,可以帮助DBA迅速掌握MySQL服务器的运行情况。可以通过SHOW GLOBAL STATUS 命令来查看系统状态变量。Status变量是为了统计MySQL服务器运行情况而保存的信息,属于状态性变量,及时更新信息,检测MySQL服务器性能非常重要。

设置方法:
MySQL的Status变量基本上是只读的,但是也有一些可以设置的变量,需要使用“SET GLOBAL变量名=变量值”来设置。除此之外,我们还可以在启动时,作为MySQL的启动参数来设置。

比如,可以使用–long-query-time参数来设置慢查询的阈值。–long-query-time=秒,默认值是10,表示Queries超过10秒的查询属于慢查询,将被记录在slow_queries变量中。

根据自身需要,我们也可以自定义变量,对其性能进行诊断。比如,可以使用下面的命令来定义一个性能测量的变量:

SET GLOBAL perf_timer_start=now();

之后,可以使用如下函数返回所自定义变量perf_timer_start的值

SELECT NOW()-perf_timer_start;

这样,服务器就会返回一个当前时刻自perf_timer_start变量定义之后所经过的时间变化,这就给了我们一个推断服务器性能的数据依据,从而对服务器进行合理的排查。


数据运维技术 » MySQL Status Uptime 数据库状态作用意思及如何正确