作者:哀乐交加6 | 来源:互联网 | 2023-07-09 15:25
以下是个人整理的Mysql一些重要的参数,需要通过监视工具监视showstatuslikeThreads_connected;--变量的值是表示当前有多少个客户连接该mysql服务
以下是个人整理的Mysql一些重要的参数,需要通过监视工具监视
show status like 'Threads_connected'; --变量的值是表示当前有多少个客户连接该mysql服务器,连接数是否过多,网络时候存在问题!特别是在pconnect的情况下:)
show status like 'created_tmp_tables'; --在硬盘上建立的临时表数目,如果这个值比较大的话,那么查询时需要建立临时表(CREATE TEMPORARY TABLE)的操作 就要消耗更多的时间
show status like 'handler_read_first'; --读表索引的第一行,如果这个值变化比较大的话,可以认为表索引建立的有问题,全索引的扫描操作比较多
show status like 'key_reads'; --读文件系统上面的索引的次数,如果这个值太大的话,就需要考虑key cache设置是否正常了
show status like 'max_used_connections'; --重起后到现在最大连接数,服务器负载和可能需要调节的连接数
show status like 'Open_tables'; --当前打开的表的数目;如果这个值很低,table cache很大,则减小table cache的设置是没有问题的,如果这个值很大,并接近了table cache的值,我们就需要加大talbe cache的设置
flush tables;
show status like 'select_full_join'; --全连接的查询数目,数值过大,需要建立更多的索引来避免
show status like 'Slow_queries'; --慢查询的数目,过大的话就要察看慢查询的日志,并且检查sql语句书写是否恰当
show status like 'uptime'; --运行时间,单位秒
select * from performance_schema.replication_group_members; --MGR查看
show status like 'table_locks_immediate'; --产生表锁的次数,表示可以立即获取锁的查询次数,每立即获取锁加1
show status like 'table_locks_waited'; --出现表锁争用而发生的次数(不能立即获取锁的次数,每等待一次加1),此值较高说明存在着较严重的表级锁争用情况
show status like 'innodb_row_lock_current_waits'; --当前正在等待锁定的数量
show status like 'innodb_row_lock_time' --从系统启动到现在锁定总时间的长度
show status like 'innodb_row_lock_time_avg'; --每次等待所花平均时间
show status like 'innodb_row_lock_time_max'; --从系统启动到现在等待最常的一次所花的时间
show status like 'innodb_row_lock_waits'; --系统启动到现在总共等待的次数
show global status like 'Innodb_buffer_pool_read_requests'; --逻辑读 ,从缓冲池中读取页的次数
show global status like 'Innodb_buffer_pool_reads'; --物理读
show global status like 'Innodb_data_reads'; --发起读取请求的次数,每次读取可能需要读取多个页
show global status like 'Innodb_data_read'; --总共读入的字节数
show global status like 'Innodb_rows_read'; --总共读入的行数
show global status like 'Innodb_pages_read'; --总共读入的页数
show global status like 'Innodb_buffer_pool_read_ahead'; --预读的次数
show global status like 'Innodb_buffer_pool_read_ahead_evicted'; --预读的页,但是没有被读取就从缓冲池中被替换的页的数量,一般用来判断预读的效率
show status like 'innodb_buffer_pool_wait_free'; --If this variable is high, it suggests that MySQL's memory buffer is incorrectly configured for the amount of writes the server is currently performing.
show status like 'Innodb_buffer_pool_pages_free'; --free pages
show variables like 'innodb_buffer_pool_size'; --total page for buffer 分配给缓冲池的页面总数量(数量*页面大小=缓冲池大小),默认每个Page为16k。(8192X16K/1024=128M)
show status like 'Qcache_hits'; --查询缓存命中次数
show variables like 'innodb_log_file_size'; --log file size
show variables like 'innodb_log_files_in_group'; --log file number
show variables like 'innodb_data_file_path'; --undo file
show variables like 'innodb_file_per_table'; --共享表空间
mysql -uroot -p -P 3306 -e "show engine innodb status \G"|grep "srv_master_thread " --负载
show variables like 'innodb_max_dirty_pages_pct'; --脏页百分比
mysql -uroot -p -P 3306 -e "show engine innodb status \G"|grep insert --inserted,update,deleted read count
mysql> show global status like 'Innodb%dblwr%'; --Innodb_dblwr_pages_written/Innodb_dblwr_writes <64 表示IO 没压力,反之则有
+----------------------------+-------+
| Variable_name | Value |
+----------------------------+-------+
| Innodb_dblwr_pages_written | 285 |
| Innodb_dblwr_writes | 62 |
+----------------------------+-------+
2 rows in set (0.00 sec)
SELECT SUM(stat_value) pages, index_name, SUM(stat_value)*@@innodb_page_size size FROM mysql.innodb_index_stats WHERE table_name='dept_emp' AND stat_name = 'size' GROUP BY index_name;
每天进步一点点,多思考,多总结
版权声明:本文为CNblog博主「zaituzhong」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。