如何判断mysql是innodb
发布网友
发布时间:2022-04-30 02:08
我来回答
共2个回答
懂视网
时间:2022-04-30 06:30
Innodb读写量:
平均每秒读取的数据量:innodb_data_read
平均每秒写入的数据量:innodb_data_written
Innodb读写次数:
平均每秒Innodb从文件中读取的次数:innodb_data_reads
平均每秒Innodb从文件中写入的次数:innodb_data_writes
本文出自 “dba天空” 博客,请务必保留此出处http://9425473.blog.51cto.com/9415473/1671199
innodb的相关监控指标
标签:mysql
热心网友
时间:2022-04-30 03:38
mysql被设计成了一个单进程多线程架构的数据库
开始:
1、默认的InnoDB存储引擎的后台线程有7个,4个IO thread ,1个master thread 1个锁监控 thread 1个错误监控thread,IO thread 的数量由配置文件的innodb_file_io_threads参数控制,默认是4,linux下面不可以调整,但是window下面可以
show engine innodb status \G;(root用户,或者你的用户有查看权限)
show variables like 'innodb_version' \G;
show variables like 'innodb_%io_threads' \G;
注释:我十分建议大家安装独立的mysql,不要用集成环境,因为出现问题会后悔死的
2、innodb存储引擎内存有以下部分:
buffer pool 缓冲池
redo log buffer 重做日志缓冲池
additional memory pool 额外内存池
配置文件的innodb:
# Comment the following if you are using InnoDB tables
#skip-innodb
innodb_data_home_dir = "D:/xampp/mysql/data"
innodb_data_file_path = ibdata1:10M:autoextend
innodb_log_group_home_dir = "D:/xampp/mysql/data"
#innodb_log_arch_dir = "D:/xampp/mysql/data"
## You can set .._buffer_pool_size up to 50 - 80 %
## of RAM but beware of setting memory usage too high
innodb_buffer_pool_size = 16M
innodb_additional_mem_pool_size = 2M
## Set .._log_file_size to 25 % of buffer pool size
innodb_log_file_size = 5M
innodb_log_buffer_size = 8M
innodb_flush_log_at_trx_commit = 1
innodb_lock_wait_timeout = 50
这是my.ini的配置,更多的InnoDB的配置,可以看my_innodb_heavy_4G.ini
注释:配置文件的值可能会根据不同的环境更改,上面的配置文件是在我安装之后默认的
3、缓冲池是用来存放各种数据的缓存,InnoDB存储引擎的工作方式是将数据库文件按页(每页16K)读取到缓冲池,然后按照最近最少使用(LRU)的算法保留在缓冲池中的缓存数据
输入:show engine innodb status\G;