mysql无进程, io高?

JJ___JJ 2016-07-28 11:04:16
大家好,

在公司搭了台机器, centos, 32G*8核, mysql5.7, 专门做一些数据分析, 100张表innodb, 其中几张表比较大, 数据千万~几亿, 100G~300G之间,大表做了简单的分区(分100), mysql的数据都放在额外的1T的ssd上(刚刚换新的, 旧了用了2年多,已扔), 最近发现即使mysql里没有进程(全关了, mysql重启后), 但是硬盘的IO很是很高, 读写数据如下, 望各位大大指点迷津.




配置文件my.conf

datadir=/mysql-data/mysql
socket=/var/lib/mysql/mysql.sock

# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0

log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid

sql_mode = 'STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION'

innodb-flush-method = O_DIRECT
innodb-log-files-in-group = 2
innodb-log-file-size = 512M
innodb-flush-log-at-trx-commit = 1
innodb-file-per-table = 1
innodb-buffer-pool-size = 20G

tmp-table-size = 10240M
max-heap-table-size = 10240M
query-cache-type = 0
query-cache-size = 0
max-connections = 10000
thread-cache-size = 100
open-files-limit = 65535
table-definition-cache = 1024
table-open-cache = 2048
#max-allowed-packet = 64M
max_allowed_packet = 64M
max-connect-errors = 1000000
innodb_lock_wait_timeout = 86400
...全文
266 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
JJ___JJ 2016-07-28
  • 打赏
  • 举报
回复
引用 1 楼 yupeigu 的回复:
从最后一个图来看,mysql的多个线程,确实有大量的写数据,每秒8M左右,而读相对少800k左右。

你说把mysql重启,说明mysql还是在提供服务 ,会不会是有其他程序连接到mysql了,或者mysql在做定时的备份,或者重启后在做数据库恢复


不断的刷着监控, 确定没有其他在调用mysql,
定时备份也不可能, 可能是重启后在做数据回复, 不过不知道怎么确定, 貌似日志也没更新, 求教建议吗
LongRui888 2016-07-28
  • 打赏
  • 举报
回复
另外,你可以试试连接到mysql后,监控一下,有没有在运行什么大的sql语句
LongRui888 2016-07-28
  • 打赏
  • 举报
回复
从最后一个图来看,mysql的多个线程,确实有大量的写数据,每秒8M左右,而读相对少800k左右。 你说把mysql重启,说明mysql还是在提供服务 ,会不会是有其他程序连接到mysql了,或者mysql在做定时的备份,或者重启后在做数据库恢复

56,679

社区成员

发帖
与我相关
我的任务
社区描述
MySQL相关内容讨论专区
社区管理员
  • MySQL
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧