|
11 | 11 | - [mysqltools-python权威指南](#mysqltools-python权威指南)
|
12 | 12 | - [关于](#关于)
|
13 | 13 | - [安装](#安装)
|
| 14 | + - [模拟多个会话连接MySQL](#模拟多个会话连接mysql) |
14 | 15 | - [自动向表中插入随机数据](#自动向表中插入随机数据)
|
15 | 16 | - [数据库监控项采集](#数据库监控项采集)
|
16 | 17 | - [数据库备份](#数据库备份)
|
|
34 | 35 |
|
35 | 36 | ---
|
36 | 37 |
|
37 |
| - **2、** 目前工具包中集成的工具列表 |
38 |
| - |
39 |
| - |**工具名**|**功能说明**| |
40 |
| - |---------|-----------| |
41 |
| - |mtls-monitor| 监控项采集 | |
42 |
| - |mtls-backup| 自动化备份数据库 | |
43 |
| - |mtls-delete-rows| 分批(温和)删除大表中的行| |
44 |
| - |mtls-file-truncate| 分批(温和)的截断物理文件| |
45 |
| - |mtls-big-files| 查询出给定目录下的大文件名| |
46 |
| - |mtls-http| tcp(http)端口连通性测试| |
47 |
| - |mtls-log | 慢查询日志切片| |
48 |
| - |mtls-perf-bench| 数据库跑分工具(开发中)| |
49 |
| - |mtls-kill-all-connections | 杀死所有的客户端连接| |
50 |
| - |mtls-sql-distribution | 统计慢查询文件中的SQL类型与热点表 | |
51 |
| - |mtls-file-stat| 表的最晚更新时间统计| |
52 |
| - |mtls-expired-tables|找出长时间没有使用过的表| |
53 |
| - |
54 |
| - --- |
55 |
| - |
56 | 38 | ## 安装
|
57 | 39 | **目前mysqltools-python支持python-3.x 下的所有版本,可以直接通过pip来安装**
|
58 | 40 | ```
|
|
83 | 65 |
|
84 | 66 | ---
|
85 | 67 |
|
| 68 | +## 模拟多个会话连接MySQL |
| 69 | +模拟多个会话连接进 MySQL,假设我需要 100 个会话连接到 MySQL ,并且每一个会话都不停止的执行 `select * from mysql.user` 。 |
| 70 | +```bash |
| 71 | +mysqltools-python % mtls-multi-session --host=192.168.100.100 --port=3306 --user=appuser --password=xxx --sql="select * from mysql.user" --sessions=100 |
| 72 | +``` |
| 73 | +通过 show processlist 检查有没有连接成功。 |
| 74 | +```sql |
| 75 | +show processlist; |
| 76 | ++-----+---------+--------------------+------+---------+------+-------+------------------+ |
| 77 | +| Id | User | Host | db | Command | Time | State | Info | |
| 78 | ++-----+---------+--------------------+------+---------+------+-------+------------------+ |
| 79 | +| 122 | appuser | 172.16.234.1:51006 | NULL | Sleep | 0 | | NULL | |
| 80 | +| 123 | appuser | 172.16.234.1:51007 | NULL | Sleep | 0 | | NULL | |
| 81 | +| 124 | appuser | 172.16.234.1:51008 | NULL | Sleep | 1 | | NULL | |
| 82 | +| 125 | appuser | 172.16.234.1:51009 | NULL | Sleep | 1 | | NULL | |
| 83 | +| 126 | appuser | 172.16.234.1:51010 | NULL | Sleep | 1 | | NULL | |
| 84 | +| 127 | appuser | 172.16.234.1:51011 | NULL | Sleep | 0 | | NULL | |
| 85 | +... |
| 86 | +| 218 | appuser | 172.16.234.1:51101 | NULL | Sleep | 1 | | NULL | |
| 87 | +| 219 | appuser | 172.16.234.1:51102 | NULL | Sleep | 1 | | NULL | |
| 88 | +| 220 | appuser | 172.16.234.1:51103 | NULL | Sleep | 1 | | NULL | |
| 89 | +| 221 | appuser | 172.16.234.1:51104 | NULL | Sleep | 1 | | NULL | |
| 90 | +| 222 | appuser | 172.16.234.1:51105 | NULL | Sleep | 1 | | NULL | |
| 91 | ++-----+---------+--------------------+------+---------+------+-------+------------------+ |
| 92 | +101 rows in set (0.00 sec) |
| 93 | +``` |
| 94 | +打开 general_log 可以看到如下内容 |
| 95 | +```sql |
| 96 | +2022-03-03T20:51:16.192633+08:00 272 Query select * from mysql.user |
| 97 | +2022-03-03T20:51:16.199083+08:00 279 Query select * from mysql.user |
| 98 | +2022-03-03T20:51:16.201551+08:00 243 Query select * from mysql.user |
| 99 | +2022-03-03T20:51:16.201836+08:00 259 Query select * from mysql.user |
| 100 | +2022-03-03T20:51:16.208231+08:00 226 Query select * from mysql.user |
| 101 | +2022-03-03T20:51:16.210666+08:00 225 Query select * from mysql.user |
| 102 | +2022-03-03T20:51:16.212934+08:00 257 Query select * from mysql.user |
| 103 | +2022-03-03T20:51:16.215569+08:00 230 Query select * from mysql.user |
| 104 | +2022-03-03T20:51:16.215577+08:00 249 Query select * from mysql.user |
| 105 | +2022-03-03T20:51:16.220761+08:00 246 Query select * from mysql.user |
| 106 | +2022-03-03T20:51:16.222372+08:00 235 Query select * from mysql.user |
| 107 | +2022-03-03T20:51:16.226119+08:00 262 Query select * from mysql.user |
| 108 | +2022-03-03T20:51:16.232635+08:00 273 Query select * from mysql.user |
| 109 | +2022-03-03T20:51:16.234286+08:00 247 Query select * from mysql.user |
| 110 | +2022-03-03T20:51:16.235355+08:00 231 Query select * from mysql.user |
| 111 | +2022-03-03T20:51:16.259882+08:00 254 Query select * from mysql.user |
| 112 | +2022-03-03T20:51:16.262224+08:00 227 Query select * from mysql.user |
| 113 | +2022-03-03T20:51:16.262786+08:00 255 Query select * from mysql.user |
| 114 | +2022-03-03T20:51:16.263377+08:00 252 Query select * from mysql.user |
| 115 | +``` |
| 116 | + |
| 117 | +--- |
| 118 | + |
86 | 119 | ## 自动向表中插入随机数据
|
87 | 120 | mtls-auto-fill 启动的时候它会自己去你读的表结构,根据列的数据类型为其生成随机的数据并将它插入到表中,另外它是直接多进程并行插入的。
|
88 | 121 |
|
|
0 commit comments