MySQL InnoDB缓冲池监控指标介绍
InnoDB可以使用SHOW ENGINE INNODB STATUS的标准监视器输出提供与InnoDB缓冲池操作相关的指标,InnoDB缓冲池指标位于标准监视器输出的BUFFER POOL AND MEMORY部分,显示内容类似如下: ---------------------- BUFFER POOL AND MEMORY……
MySQL InnoDB Buffer Pool
一、InnoDB缓冲池 1. 表空间编号 InnoDB存储引擎是使用表空间来存储页的,表空间又可以被分为系统表空间和独立表空间。为了方便管理,每个表空间都会有一个4字节的编号,值得注意的一点是,系统表空间的编号始终为0,InnoDB也会根据一定规则给其他独立表空间也编上号。 所以,当我们查看或修改某个页的数据的时候,实际上需要同时知道表空间的编号和该页的编号……
MySQL InnoDB缓冲池预读
InnoDB在I/O的优化上有个比较重要的特性为预读,预读请求是一个i/o请求,它会异步地在缓冲池中预先回迁多个页面,预计很快就会需要这些页面,这些请求在一个范围内引入所有页面。InnoDB以64个page为一个extent,那么InnoDB的预读是以page为单位还是以extent? 这样就进入了下面的话题,InnoDB使用两种预读算法来提高I/O性能:线……
MySQL InnoDB Monitor
一、InnoDB Monitor 在MySQL处理死锁问题时,由于show engine innodb status输出来的死锁日志无任务事务上下文,并不能很好地诊断相关事务所持有的所有锁信息,包括:锁个数、锁类型等。于是,需要能查看到更详细的事务锁占用情况。 MySQL提供一套InnoDB监控机制,用于周期性(每15钞)输出InnoDB运行相关状态(In……
MySQL客户端连接管理
MySQL连接管理器线程负责处理服务器侦听的网络接口上的客户端连接请求。连接管理器线程将每个客户端连接与专用于它的线程相关联,以处理该连接的身份验证和请求处理。 连接管理线程在必要时创建一个新线程,但是会先尝试避免这样做,首先查看线程缓存,看它是否包含可用于连接的线程。当连接结束时,如果缓存未满,则其线程返回到线程缓存中,用于下次使用。 在这种连接线程模……
MySQL之长连接、短连接、连接池
当数据库服务器和客户端位于不同的主机时,就需要建立网络连接来进行通信。客户端必须使用数据库连接来发送命令和接收应答、数据。通过提供给客户端数据库的驱动指定连接字符串后,客户端就可以和数据库建立连接了。可以查阅程序语言手册来获知通过何种方式使用短连接、长连接。 1. 短连接 短连接是指程序和数据库通信时需要建立连接,执行操作后,连接关闭。短连接简单来说就是每一……
如何选择MySQL版本?
一、MySQL官方版本 Oracle MySQL目前可分为4个版本:MySQL社区版、MySQL标准版、MySQL企业版、MySQL集群版。 MySQL社区版 可免费下载使用的开源版本,遵循GPL协议,包括如下的这些特性。可插拔的存储引擎架构;多存储引擎支持InnoDB、MyISAM、NDB(MySQL Cluster即采用NDB存储引擎)、Memory……
MySQL InnoDB配置并发线程( innodb_thread_concurrency)
一、thread_concurrency 首先,最重要的一点,这个参数已经在最新版本的MySQL中被移除了,官方MySQL 5.7版本的doc上面对thread_concurrency有这样的说明: thread_concurrency变量是针对于Solaris 8及低版本的系统,设置了这个变量MySQL会调用thr_setconcurrency()函数。这……
MySQL慢查询日志详解
一、慢查询日志 慢查询日记用于记录 SQL 语句查询时间大于 long_query_time 参数中定义的时间,并且需要至少检查 min_examined_row_limit 行。DBA 可以通过慢查询日志来找出有问题的 SQL 语句,对其进行优化。MySQL 慢查询日志默认关闭状态,所以需要通过开启 slow_query_log 参数来记录慢查询日志,并通……
使用PMM(Percona Monitoring and Management)监控MySQL手册
一、PMM介绍 Percona Monitoring and Management (PMM)是一款开源的用于管理和监控MySQL和MongoDB性能的开源平台,通过PMM客户端收集到的DB监控数据用第三方软件Grafana画图展示出来。 PMM提供了对MyISAM、InnoDB、TokuDB和PXC/Glarera的监控,另外也提供了Query Analy……