dbskiter 2.0.0__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (97) hide show
  1. dbskiter-2.0.0/PKG-INFO +546 -0
  2. dbskiter-2.0.0/README.md +501 -0
  3. dbskiter-2.0.0/dbskiter.egg-info/PKG-INFO +546 -0
  4. dbskiter-2.0.0/dbskiter.egg-info/SOURCES.txt +95 -0
  5. dbskiter-2.0.0/dbskiter.egg-info/dependency_links.txt +1 -0
  6. dbskiter-2.0.0/dbskiter.egg-info/entry_points.txt +2 -0
  7. dbskiter-2.0.0/dbskiter.egg-info/requires.txt +16 -0
  8. dbskiter-2.0.0/dbskiter.egg-info/top_level.txt +1 -0
  9. dbskiter-2.0.0/setup.cfg +4 -0
  10. dbskiter-2.0.0/setup.py +68 -0
  11. dbskiter-2.0.0/tests/__init__.py +0 -0
  12. dbskiter-2.0.0/tests/benchmark_sql_fingerprint.py +328 -0
  13. dbskiter-2.0.0/tests/benchmark_sql_master.py +240 -0
  14. dbskiter-2.0.0/tests/conftest.py +20 -0
  15. dbskiter-2.0.0/tests/integration/__init__.py +13 -0
  16. dbskiter-2.0.0/tests/integration/test_exception_scenarios.py +487 -0
  17. dbskiter-2.0.0/tests/integration/test_integration_simple.py +483 -0
  18. dbskiter-2.0.0/tests/integration/test_module_integration.py +522 -0
  19. dbskiter-2.0.0/tests/integration/test_performance_stress.py +398 -0
  20. dbskiter-2.0.0/tests/run_tests.py +137 -0
  21. dbskiter-2.0.0/tests/test_aas_visualizer.py +232 -0
  22. dbskiter-2.0.0/tests/test_advanced_predictor.py +401 -0
  23. dbskiter-2.0.0/tests/test_advanced_security_analyzer.py +417 -0
  24. dbskiter-2.0.0/tests/test_all_skills.py +290 -0
  25. dbskiter-2.0.0/tests/test_batch_analyzer.py +266 -0
  26. dbskiter-2.0.0/tests/test_cache.py +118 -0
  27. dbskiter-2.0.0/tests/test_cache_invalidator.py +226 -0
  28. dbskiter-2.0.0/tests/test_cache_manager.py +303 -0
  29. dbskiter-2.0.0/tests/test_cli_integration.py +47 -0
  30. dbskiter-2.0.0/tests/test_connection_pool.py +395 -0
  31. dbskiter-2.0.0/tests/test_db_diagnose.py +119 -0
  32. dbskiter-2.0.0/tests/test_diagnose_deprecation.py +231 -0
  33. dbskiter-2.0.0/tests/test_diagnose_engine_v3.py +54 -0
  34. dbskiter-2.0.0/tests/test_diagnose_v2.py +105 -0
  35. dbskiter-2.0.0/tests/test_distributed_lock.py +442 -0
  36. dbskiter-2.0.0/tests/test_error_handler.py +187 -0
  37. dbskiter-2.0.0/tests/test_imports.py +97 -0
  38. dbskiter-2.0.0/tests/test_integration.py +433 -0
  39. dbskiter-2.0.0/tests/test_intelligent_inspector.py +578 -0
  40. dbskiter-2.0.0/tests/test_intelligent_optimizer.py +425 -0
  41. dbskiter-2.0.0/tests/test_models.py +207 -0
  42. dbskiter-2.0.0/tests/test_monitor_v2.py +115 -0
  43. dbskiter-2.0.0/tests/test_monitor_v3.py +45 -0
  44. dbskiter-2.0.0/tests/test_monitoring.py +422 -0
  45. dbskiter-2.0.0/tests/test_multidb_config.py +212 -0
  46. dbskiter-2.0.0/tests/test_mysql_aas_calculator.py +323 -0
  47. dbskiter-2.0.0/tests/test_mysql_aas_calculator_v2.py +962 -0
  48. dbskiter-2.0.0/tests/test_mysql_analyzers.py +229 -0
  49. dbskiter-2.0.0/tests/test_mysql_slow_query_collector.py +473 -0
  50. dbskiter-2.0.0/tests/test_oracle_performance_analyzer.py +204 -0
  51. dbskiter-2.0.0/tests/test_performance_model.py +262 -0
  52. dbskiter-2.0.0/tests/test_postgresql_performance_analyzer.py +199 -0
  53. dbskiter-2.0.0/tests/test_query_result.py +123 -0
  54. dbskiter-2.0.0/tests/test_report_generator.py +253 -0
  55. dbskiter-2.0.0/tests/test_result_cleanup.py +27 -0
  56. dbskiter-2.0.0/tests/test_scheduler_engine_v3.py +45 -0
  57. dbskiter-2.0.0/tests/test_scheduler_v2.py +78 -0
  58. dbskiter-2.0.0/tests/test_security_v2.py +101 -0
  59. dbskiter-2.0.0/tests/test_sql_analyzer.py +48 -0
  60. dbskiter-2.0.0/tests/test_sql_dialect.py +77 -0
  61. dbskiter-2.0.0/tests/test_sql_fingerprint.py +340 -0
  62. dbskiter-2.0.0/tests/test_sql_master_v2.py +105 -0
  63. dbskiter-2.0.0/tests/test_sql_validation.py +72 -0
  64. dbskiter-2.0.0/tests/test_sql_validator.py +296 -0
  65. dbskiter-2.0.0/tests/test_table_analyzer.py +257 -0
  66. dbskiter-2.0.0/tests/test_task_executors.py +636 -0
  67. dbskiter-2.0.0/tests/test_trend_analyzer.py +444 -0
  68. dbskiter-2.0.0/tests/test_validators.py +248 -0
  69. dbskiter-2.0.0/tests/test_window_func.py +40 -0
  70. dbskiter-2.0.0/tests/unit/__init__.py +0 -0
  71. dbskiter-2.0.0/tests/unit/db_diagnose/__init__.py +0 -0
  72. dbskiter-2.0.0/tests/unit/db_diagnose/test_models.py +331 -0
  73. dbskiter-2.0.0/tests/unit/db_diagnose/test_utils.py +265 -0
  74. dbskiter-2.0.0/tests/unit/db_inspector/__init__.py +0 -0
  75. dbskiter-2.0.0/tests/unit/db_inspector/test_models.py +239 -0
  76. dbskiter-2.0.0/tests/unit/db_inspector/test_utils.py +387 -0
  77. dbskiter-2.0.0/tests/unit/db_lock_analyzer/__init__.py +0 -0
  78. dbskiter-2.0.0/tests/unit/db_lock_analyzer/test_models.py +278 -0
  79. dbskiter-2.0.0/tests/unit/db_lock_analyzer/test_utils.py +325 -0
  80. dbskiter-2.0.0/tests/unit/db_monitor/__init__.py +0 -0
  81. dbskiter-2.0.0/tests/unit/db_monitor/test_models.py +348 -0
  82. dbskiter-2.0.0/tests/unit/db_monitor/test_utils.py +327 -0
  83. dbskiter-2.0.0/tests/unit/db_scheduler/__init__.py +0 -0
  84. dbskiter-2.0.0/tests/unit/db_scheduler/test_models.py +426 -0
  85. dbskiter-2.0.0/tests/unit/db_scheduler/test_utils.py +418 -0
  86. dbskiter-2.0.0/tests/unit/db_security/__init__.py +0 -0
  87. dbskiter-2.0.0/tests/unit/db_security/test_cli.py +150 -0
  88. dbskiter-2.0.0/tests/unit/db_security/test_models.py +288 -0
  89. dbskiter-2.0.0/tests/unit/db_security/test_skill_simple.py +232 -0
  90. dbskiter-2.0.0/tests/unit/db_security/test_utils.py +224 -0
  91. dbskiter-2.0.0/tests/unit/db_sql_auditor/__init__.py +0 -0
  92. dbskiter-2.0.0/tests/unit/db_sql_auditor/test_models.py +294 -0
  93. dbskiter-2.0.0/tests/unit/db_sql_auditor/test_utils.py +287 -0
  94. dbskiter-2.0.0/tests/unit/sql_master/__init__.py +0 -0
  95. dbskiter-2.0.0/tests/unit/sql_master/test_data_transfer.py +547 -0
  96. dbskiter-2.0.0/tests/unit/sql_master/test_models.py +290 -0
  97. dbskiter-2.0.0/tests/unit/sql_master/test_utils.py +282 -0
@@ -0,0 +1,546 @@
1
+ Metadata-Version: 2.4
2
+ Name: dbskiter
3
+ Version: 2.0.0
4
+ Summary: 数据库 Skills 集合 - 监控、诊断、安全、调度、SQL执行
5
+ Home-page: https://github.com/magicCzc/dbskiter.git
6
+ Author: MagiCzc
7
+ Author-email: magiczc@139.com
8
+ Classifier: Development Status :: 4 - Beta
9
+ Classifier: Intended Audience :: Developers
10
+ Classifier: Topic :: Database
11
+ Classifier: Topic :: Software Development :: Libraries :: Python Modules
12
+ Classifier: License :: OSI Approved :: MIT License
13
+ Classifier: Programming Language :: Python :: 3
14
+ Classifier: Programming Language :: Python :: 3.8
15
+ Classifier: Programming Language :: Python :: 3.9
16
+ Classifier: Programming Language :: Python :: 3.10
17
+ Classifier: Programming Language :: Python :: 3.11
18
+ Classifier: Programming Language :: Python :: 3.12
19
+ Requires-Python: >=3.8
20
+ Description-Content-Type: text/markdown
21
+ Requires-Dist: sqlalchemy>=2.0.0
22
+ Requires-Dist: pymysql>=1.0.0
23
+ Requires-Dist: psycopg2-binary>=2.9.0
24
+ Requires-Dist: python-dotenv>=1.0.0
25
+ Requires-Dist: pandas>=2.0.0
26
+ Requires-Dist: jinja2>=3.0.0
27
+ Requires-Dist: pydantic>=2.0.0
28
+ Provides-Extra: dev
29
+ Requires-Dist: pytest>=7.0.0; extra == "dev"
30
+ Requires-Dist: pytest-asyncio>=0.21.0; extra == "dev"
31
+ Requires-Dist: black>=23.0.0; extra == "dev"
32
+ Requires-Dist: flake8>=6.0.0; extra == "dev"
33
+ Provides-Extra: report
34
+ Requires-Dist: weasyprint>=59.0; extra == "report"
35
+ Dynamic: author
36
+ Dynamic: author-email
37
+ Dynamic: classifier
38
+ Dynamic: description
39
+ Dynamic: description-content-type
40
+ Dynamic: home-page
41
+ Dynamic: provides-extra
42
+ Dynamic: requires-dist
43
+ Dynamic: requires-python
44
+ Dynamic: summary
45
+
46
+ # dbskiter - 数据库AIOps运维助手
47
+
48
+ <p align="center">
49
+ <img src="image.png" alt="dbskiter架构图" width="800"/>
50
+ </p>
51
+
52
+ <p align="center">
53
+ <strong>开源免费的数据库运维工具,让AI帮你管理数据库</strong>
54
+ </p>
55
+
56
+ <p align="center">
57
+ <a href="#快速开始">快速开始</a> |
58
+ <a href="#功能特性">功能特性</a> |
59
+ <a href="#使用示例">使用示例</a> |
60
+ <a href="#项目架构">项目架构</a> |
61
+ <a href="#ai集成">AI集成</a>
62
+ </p>
63
+
64
+ ---
65
+
66
+ ## 项目简介
67
+
68
+ **dbskiter** 是一个开源的数据库运维工具集,提供诊断、监控、安全审计、SQL执行等核心功能。
69
+
70
+ ### 适用场景
71
+
72
+ - 中小企业没有专职DBA
73
+ - 需要快速诊断数据库问题
74
+ - 定期安全审计和巡检
75
+ - AI辅助的数据库管理
76
+
77
+ ### 支持数据库
78
+
79
+ | 数据库 | 状态 | 说明 |
80
+ |--------|------|------|
81
+ | MySQL | 完全支持 | 主推荐,功能最完善 |
82
+ | Oracle | 支持 | 11g/12c/19c+ |
83
+ | PostgreSQL | 部分支持 | 基础功能可用 |
84
+ | SQL Server | 计划中 | 未来版本支持 |
85
+
86
+ ---
87
+
88
+ ## 快速开始
89
+
90
+ ### 1. 安装
91
+
92
+ ```bash
93
+ # 克隆仓库
94
+ git clone https://github.com/magicCzc/dbskiter.git
95
+ cd dbskiter
96
+
97
+ # 安装依赖
98
+ pip install -e .
99
+ ```
100
+
101
+ ### 2. 配置环境变量
102
+
103
+ 创建 `.env` 文件(**切勿提交到Git仓库**):
104
+
105
+ ```bash
106
+ # 复制示例配置
107
+ cp .env.example .env
108
+
109
+ # 编辑 .env 文件,填入你的数据库配置
110
+ ```
111
+
112
+ **最小配置示例(单数据库)**:
113
+
114
+ ```bash
115
+ # MySQL配置
116
+ DB_HOST=localhost
117
+ DB_PORT=3306
118
+ DB_USER=root
119
+ DB_PASSWORD=your_password
120
+ DB_NAME=your_database
121
+ ```
122
+
123
+ **多实例配置示例(推荐)**:
124
+
125
+ ```bash
126
+ # MySQL - 示例库1(示例配置,请替换为实际值)
127
+ DB_JUMP_HOST=your_mysql_host
128
+ DB_JUMP_PORT=3306
129
+ DB_JUMP_USER=your_username
130
+ DB_JUMP_PASSWORD=your_password
131
+ DB_JUMP_NAME=your_database
132
+ DB_JUMP_DIALECT=mysql+pymysql
133
+
134
+ # MySQL - 示例库2(示例配置,请替换为实际值)
135
+ DB_CHENZC_HOST=your_mysql_host
136
+ DB_CHENZC_PORT=3306
137
+ DB_CHENZC_USER=your_username
138
+ DB_CHENZC_PASSWORD=your_password
139
+ DB_CHENZC_NAME=your_database
140
+ DB_CHENZC_DIALECT=mysql+pymysql
141
+
142
+ # Oracle - 示例库(示例配置,请替换为实际值)
143
+ DB_ORCL_HOST=your_oracle_host
144
+ DB_ORCL_PORT=1521
145
+ DB_ORCL_USER=your_username
146
+ DB_ORCL_PASSWORD=your_password
147
+ DB_ORCL_SERVICE=orcl
148
+ DB_ORCL_DIALECT=oracle+jdbc
149
+ ```
150
+
151
+ **使用别名连接**:
152
+
153
+ ```bash
154
+ # 使用别名连接指定数据库
155
+ dbskiter --database=jump sql execute "SELECT 1"
156
+ dbskiter --database=orcl sql execute "SELECT 1 FROM DUAL"
157
+ ```
158
+
159
+ ### 3. 验证安装
160
+
161
+ ```bash
162
+ # 查看帮助
163
+ dbskiter --help
164
+
165
+ # 测试连接(使用默认配置或指定数据库)
166
+ dbskiter monitor health
167
+ dbskiter --database=jump monitor health
168
+ ```
169
+
170
+ ---
171
+
172
+ ## 功能特性
173
+
174
+ ### 1. 数据库诊断 (db-diagnose)
175
+
176
+ SQL诊断、慢查询分析、索引推荐、性能报告。
177
+
178
+ ```bash
179
+ # 诊断慢查询
180
+ dbskiter --database=<数据库名> diagnose slow-queries --limit=10
181
+
182
+ # 诊断特定SQL
183
+ dbskiter --database=<数据库名> diagnose sql "SELECT * FROM users WHERE email='test@example.com'"
184
+
185
+ # 推荐索引
186
+ dbskiter --database=<数据库名> diagnose recommend-indexes --table=orders
187
+
188
+ # 生成综合报告
189
+ dbskiter --database=<数据库名> diagnose report
190
+ ```
191
+
192
+ ### 2. 健康监控 (db-monitor)
193
+
194
+ 健康检查、异常检测、容量预测、趋势分析。
195
+
196
+ ```bash
197
+ # 健康检查
198
+ dbskiter --database=<数据库名> monitor health
199
+
200
+ # 异常检测
201
+ dbskiter --database=<数据库名> monitor anomalies
202
+
203
+ # 容量预测(磁盘)
204
+ dbskiter --database=<数据库名> monitor capacity --resource=disk --days=30
205
+
206
+ # 查看历史趋势
207
+ dbskiter --database=<数据库名> monitor history cpu_usage
208
+ ```
209
+
210
+ ### 3. 安全审计 (db-security)
211
+
212
+ SQL注入检测、敏感数据扫描、权限审计、密码策略检查。
213
+
214
+ ```bash
215
+ # 完整安全审计
216
+ dbskiter --database=<数据库名> security audit
217
+
218
+ # SQL注入检测
219
+ dbskiter --database=<数据库名> security sql-injection "SELECT * FROM users WHERE id=%s"
220
+
221
+ # 敏感数据扫描
222
+ dbskiter --database=<数据库名> security sensitive-data
223
+
224
+ # 检查密码策略
225
+ dbskiter --database=<数据库名> security password-policy
226
+ ```
227
+
228
+ ### 4. SQL执行 (sql-master)
229
+
230
+ 智能SQL执行、数据导入导出、SQL审核。
231
+
232
+ ```bash
233
+ # 执行SQL
234
+ dbskiter --database=<数据库名> sql execute "SELECT COUNT(*) FROM users"
235
+
236
+ # 导出数据
237
+ dbskiter --database=<数据库名> sql export --table=users --output=users.csv
238
+
239
+ # SQL审核
240
+ dbskiter --database=<数据库名> sql audit "SELECT * FROM orders"
241
+ ```
242
+
243
+ ### 5. 锁分析 (db-lock-analyzer)
244
+
245
+ 锁分析、死锁检测、锁等待链追踪。
246
+
247
+ ```bash
248
+ # 分析当前锁
249
+ dbskiter --database=<数据库名> lock analyze
250
+
251
+ # 检测死锁
252
+ dbskiter --database=<数据库名> lock deadlocks
253
+
254
+ # 查看锁等待链
255
+ dbskiter --database=<数据库名> lock chains
256
+ ```
257
+
258
+ ### 6. 智能巡检 (db-inspector)
259
+
260
+ 配置检查、性能检查、安全检查、根因分析。
261
+
262
+ ```bash
263
+ # 执行巡检
264
+ dbskiter --database=<数据库名> inspector run
265
+
266
+ # 生成报告
267
+ dbskiter --database=<数据库名> inspector report --output=report.html
268
+
269
+ # 智能巡检
270
+ dbskiter --database=<数据库名> inspector intelligent
271
+ ```
272
+
273
+ ---
274
+
275
+ ## � 使用示例
276
+
277
+ ### 场景1:数据库变慢了
278
+
279
+ ```bash
280
+ # 1. 快速健康检查
281
+ dbskiter --database=<数据库名> monitor health
282
+
283
+ # 2. 查看慢查询
284
+ dbskiter --database=<数据库名> diagnose slow-queries --limit=5
285
+
286
+ # 3. 分析锁情况
287
+ dbskiter --database=<数据库名> lock analyze
288
+
289
+ # 4. 获取优化建议
290
+ dbskiter --database=<数据库名> diagnose recommend-indexes
291
+ ```
292
+
293
+ ### 场景2:日常安全巡检
294
+
295
+ ```bash
296
+ # 1. 安全审计
297
+ dbskiter --database=<数据库名> security audit
298
+
299
+ # 2. 检查弱密码
300
+ dbskiter --database=<数据库名> security weak-passwords
301
+
302
+ # 3. 扫描敏感数据
303
+ dbskiter --database=<数据库名> security sensitive-data
304
+
305
+ # 4. 生成巡检报告
306
+ dbskiter --database=<数据库名> inspector report
307
+ ```
308
+
309
+ ### 场景3:容量规划
310
+
311
+ ```bash
312
+ # 1. 磁盘容量预测
313
+ dbskiter --database=<数据库名> monitor capacity --resource=disk --days=90
314
+
315
+ # 2. 连接数趋势
316
+ dbskiter --database=<数据库名> monitor trend --metric=connections
317
+
318
+ # 3. 查看历史数据
319
+ dbskiter --database=<数据库名> monitor history table_size
320
+ ```
321
+
322
+ ---
323
+
324
+ ## 项目架构
325
+
326
+ ```
327
+ dbskiter/
328
+ ├── cli/ # CLI命令入口
329
+ │ ├── commands/ # 各模块命令实现
330
+ │ │ ├── diagnose.py # 诊断命令
331
+ │ │ ├── monitor.py # 监控命令
332
+ │ │ ├── security.py # 安全命令
333
+ │ │ ├── sql.py # SQL命令
334
+ │ │ ├── lock.py # 锁分析命令
335
+ │ │ └── inspector.py # 巡检命令
336
+ │ ├── main.py # CLI主入口
337
+ │ └── config.py # 配置管理
338
+
339
+ ├── db_diagnose/ # 诊断模块
340
+ │ ├── skill.py # 诊断Skill主类
341
+ │ ├── engine.py # 诊断引擎
342
+ │ └── analyzers/ # 各类分析器
343
+
344
+ ├── db_monitor/ # 监控模块
345
+ │ ├── skill.py # 监控Skill主类
346
+ │ ├── collector.py # 指标采集器
347
+ │ ├── storage.py # 数据存储
348
+ │ └── models.py # 数据模型
349
+
350
+ ├── db_security/ # 安全模块
351
+ │ ├── skill.py # 安全Skill主类
352
+ │ ├── advanced_security_analyzer.py
353
+ │ ├── sensitive_data_scanner_v2.py
354
+ │ └── password_policy_checker.py
355
+
356
+ ├── db_scheduler/ # 调度模块
357
+ │ ├── skill.py # 调度Skill主类
358
+ │ ├── connection_pool.py # 连接池管理
359
+ │ └── persistent_storage.py # 持久化存储
360
+
361
+ ├── db_inspector/ # 巡检模块
362
+ │ ├── skill.py # 巡检Skill主类
363
+ │ └── intelligent_inspector.py # 智能巡检
364
+
365
+ ├── db_lock_analyzer/ # 锁分析模块
366
+ │ └── skill.py # 锁分析Skill主类
367
+
368
+ ├── sql_master/ # SQL执行模块
369
+ │ ├── skill.py # SQL Skill主类
370
+ │ ├── executor.py # SQL执行器
371
+ │ └── data_transfer.py # 数据传输
372
+
373
+ └── shared/ # 共享组件
374
+ ├── database_connector.py # 数据库连接器
375
+ ├── unified_connector.py # 统一连接器
376
+ ├── zabbix_client.py # Zabbix客户端
377
+ ├── prometheus_client.py # Prometheus客户端
378
+ └── mysql_aas_calculator_v2.py # AAS计算器
379
+ ```
380
+
381
+ ---
382
+
383
+ ## AI集成
384
+
385
+ dbskiter 支持多种AI集成方式,包括MCP Server和Skill文档。
386
+
387
+ ### MCP Server(推荐)
388
+
389
+ 通过Model Context Protocol与Claude、Cursor等AI助手集成。
390
+
391
+ **安装MCP Server:**
392
+ ```bash
393
+ pip install dbskiter-mcp-server
394
+ ```
395
+
396
+ **配置Claude Desktop:**
397
+ 编辑 `claude_desktop_config.json`:
398
+ ```json
399
+ {
400
+ "mcpServers": {
401
+ "dbskiter": {
402
+ "command": "dbskiter-mcp",
403
+ "env": {
404
+ "DB_DIALECT": "mysql",
405
+ "DB_HOST": "localhost",
406
+ "DB_PORT": "3306",
407
+ "DB_USER": "root",
408
+ "DB_PASSWORD": "your_password",
409
+ "DB_NAME": "your_database"
410
+ }
411
+ }
412
+ }
413
+ }
414
+ ```
415
+
416
+ **使用示例:**
417
+ 用户可以直接问Claude:
418
+ - "检查我的数据库健康状态"
419
+ - "分析这个SQL语句的性能"
420
+ - "找出最慢的10个查询"
421
+
422
+ ### Skill文档
423
+
424
+ 通过Skill文档让AI IDE(如Trae、Cursor)学会使用工具。
425
+
426
+ **配置方法:**
427
+ ```bash
428
+ # Trae IDE
429
+ cp -r .trae/skills/* ~/.trae/skills/
430
+
431
+ # Cursor IDE
432
+ cp -r .trae/skills/* .cursor/skills/
433
+ ```
434
+
435
+ **AI使用示例:**
436
+
437
+ **用户**:帮我检查数据库健康状态
438
+
439
+ **AI**(自动读取 Skill 文档):
440
+ ```bash
441
+ # 执行健康检查
442
+ dbskiter --database=<数据库名> monitor health --json
443
+
444
+ # 解析结果
445
+ 健康评分:85/100
446
+ 状态:健康
447
+ 连接数:45/100 (45%)
448
+ CPU使用率:35%
449
+ 建议:系统运行良好,无需处理
450
+ ```
451
+
452
+ ### 相关项目
453
+
454
+ - [dbskiter-mcp-server](https://github.com/magicCzc/dbskiter-mcp-server) - MCP Server实现
455
+
456
+ ---
457
+
458
+ ## 高级配置
459
+
460
+ ### 多数据库配置
461
+
462
+ ```bash
463
+ # 使用别名连接指定数据库(推荐方式)
464
+ dbskiter --database=jump monitor health
465
+ dbskiter --database=orcl monitor health
466
+
467
+ # 或使用前缀方式(向后兼容)
468
+ dbskiter --prefix=ORACLE monitor health
469
+ dbskiter --prefix=MYSQL2 monitor health
470
+ ```
471
+
472
+ ### JSON输出
473
+
474
+ ```bash
475
+ # 便于程序解析
476
+ dbskiter --database=<数据库名> --json monitor health
477
+ ```
478
+
479
+ ### 配合Prometheus
480
+
481
+ ```bash
482
+ # 导出Prometheus格式指标
483
+ dbskiter --database=<数据库名> monitor collect
484
+ ```
485
+
486
+ ---
487
+
488
+ ## 重要说明
489
+
490
+ ### 定位说明
491
+
492
+ dbskiter 是**诊断工具**,不是实时监控系统。
493
+
494
+ | 场景 | 推荐方案 |
495
+ |------|----------|
496
+ | 实时监控 | Prometheus + Grafana |
497
+ | 告警通知 | Alertmanager |
498
+ | 故障诊断 | **dbskiter** |
499
+ | SQL优化 | **dbskiter** |
500
+ | 安全审计 | **dbskiter** |
501
+
502
+ ### 定时任务示例
503
+
504
+ ```bash
505
+ # 每小时健康检查(使用默认配置)
506
+ 0 * * * * dbskiter monitor health --json > /var/log/db-health.json
507
+
508
+ # 每天安全审计(指定数据库)
509
+ 0 2 * * * dbskiter --database=jump security audit > /var/log/db-security-audit.log
510
+ ```
511
+
512
+ ---
513
+
514
+ ## 文档
515
+
516
+ - [CLI命令参考](docs/CLI_COMMAND_REFERENCE.md)
517
+ - [AI集成指南](AI集成指南.md)
518
+ - [Skill系统介绍](.trae/skills/README.md)
519
+ - [数据采集方案](docs/DATA_COLLECTION_PLAN.md)
520
+
521
+ ---
522
+
523
+ ## 开发
524
+
525
+ ```bash
526
+ # 安装开发依赖
527
+ pip install -e ".[dev]"
528
+
529
+ # 代码格式化
530
+ black dbskiter/
531
+
532
+ # 类型检查
533
+ mypy dbskiter/
534
+ ```
535
+
536
+ ---
537
+
538
+ ## License
539
+
540
+ MIT License
541
+
542
+ ---
543
+
544
+ <p align="center">
545
+ <strong>让每个人都能轻松管理数据库</strong>
546
+ </p>