使用mytop监控mysql
mytop 是一个不错的实时查看mysql 状态的命令行工具,使用简单
安装
yum install -y mytop
环境准备
docker-compose 创建服务
version: "3"
services:
mysql:
image: mysql:5.7.16
ports:
- 3306:3306
volumes:
- "./my.cnf:/etc/mysql/my.cnf"
environment:
MYSQL_ROOT_PASSWORD: dalongrong
MYSQL_DATABASE: gogs
MYSQL_USER: gogs
MYSQL_PASSWORD: dalongrong
TZ: Asia/Shanghai
mysql config
[mysqld]
max_connections=4000
collation_server=utf8mb4_unicode_ci
character-set-server=utf8mb4
启动mysql
docker-compose up -d
配置mytop
使用配置文件 ~/.mytop
user=gogs
pass=dalongrong
host=127.0.0.1
db=gogs
delay=5
port=3306
header=1
color=1
idle=1
一个简单的压力测试
使用sysbench , 具体的安装以及使用可以参考相关文章
- 创建测试数据库
create databse test;
- 准备测试数据
sysbench oltp_read_write.lua --mysql-host=127.0.0.1 --mysql-port=3306 --mysql-db=test --mysql-user=root --mysql-password=dalongrong --table_size=500000 --tables=10 --threads=30 --time=60 --report-interval=10 --db-driver=mysql prepare
- 运行压力测试
sysbench oltp_read_write.lua --mysql-host=127.0.0.1 --mysql-port=3306 --mysql-db=test --mysql-user=root --mysql-password=dalongrong --table_size=500000 --tables=10 --threads=30 --time=60 --report-interval=10 --db-driver=mysql run
- mytop 效果
- 清理数据
sysbench oltp_read_write.lua --mysql-host=127.0.0.1 --mysql-port=3306 --mysql-db=test --mysql-user=root --mysql-password=dalongrong --table_size=500000 --tables=10 --threads=30 --time=60 --report-interval=10 --db-driver=mysql cleanup