暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

5.1k star,强大、功能全、开源的SQl审核平台,推荐!!!

大侠之运维 2023-09-11
458

点击上方蓝字  关注大侠之运维

大家好,这里是大侠之运维,每天分享各类干货。

1 Archery简介

Archery是一款开源的sql审核平台,支持大部分数据库,功能比较齐全

如下为该平台支持的功能清单

功能清单

数据库查询审核执行备份数据字典慢日志会话管理账号管理参数管理数据归档
MySQL
MsSQL×××××××
Redis××××××××
PgSQL××××××××
Oracle××××
MongoDB×××××
Phoenix××××××××
ODPS×××××××××
ClickHouse×××××××
Cassandra××××××××

如果想要简单体验的话,可以到如下去体验:

https://demo.archerydms.com/login/

账号:archer 密码:archer

2 安装

Docker

准备运行配置

具体可参考:https://github.com/hhyo/Archery/tree/master/src/docker-compose

启动

下载 Releases文件,解压后进入docker-compose文件夹

#启动
docker-compose -f docker-compose.yml up -d

#表结构初始化
docker exec -ti archery /bin/bash
cd /opt/archery
source /opt/venv4archery/bin/activate
python3 manage.py makemigrations sql
python3 manage.py migrate

#数据初始化
python3 manage.py dbshell<sql/fixtures/auth_group.sql
python3 manage.py dbshell<src/init_sql/mysql_slow_query_review.sql

#创建管理用户
python3 manage.py createsuperuser

#重启服务
docker restart archery

#日志查看和问题排查
docker logs archery -f --tail=10
logs/archery.log

访问

http://127.0.0.1:9123/

手动安装

部署说明

运行测试

python manage.py test -v 3

依赖清单

框架

  • Django
  • Bootstrap
  • jQuery

前端组件

  • 菜单栏 metisMenu
  • 主题 sb-admin-2
  • 编辑器 ace
  • SQL美化 sql-formatter
  • 表格  bootstrap-table
  • 表格编辑  bootstrap-editable
  • 下拉菜单 bootstrap-select
  • 文件上传 bootstrap-fileinput
  • 时间选择  bootstrap-datetimepicker
  • 日期选择  daterangepicker
  • 开关  bootstrap-switch
  • Markdown展示  marked

服务端

  • 队列任务 django-q
  • MySQL Connector mysqlclient-python
  • MsSQL Connector pyodbc
  • Redis Connector redis-py
  • PostgreSQL Connector psycopg2
  • Oracle Connector cx_Oracle
  • MongoDB Connector pymongo
  • Phoenix Connector phoenixdb
  • ODPS Connector pyodps
  • ClickHouse Connector clickhouse-driver
  • SQL解析/切分/类型判断 sqlparse
  • MySQL Binlog解析/回滚 python-mysql-replication
  • LDAP django-auth-ldap
  • 序列化 simplejson
  • 时间处理 python-dateutil

功能依赖

  • 可视化 pyecharts
  • MySQL审核/执行/备份 goInception|inception
  • MySQL索引优化 SQLAdvisor
  • SQL优化/压缩 SOAR
  • My2SQL my2sql
  • 表结构同步 SchemaSync
  • 慢日志解析展示 pt-query-digest|aquila_v2
  • 大表DDL gh-ost|pt-online-schema-change
  • MyBatis XML解析 mybatis-mapper2sql
  • RDS管理 aliyun-openapi-python-sdk
  • 数据加密 django-mirage-field

3 特点

  • sql审核
  • sql查询

在线查询模块适用于简单的SQL查询和日常问题排查,通过工作流控制查询权限的申请和审核,并强制对SQL语句进行改写以限制最大查询数量,同时记录所有的查询日志方便审计。基于目前的定位,查询功能现不能很好的支持大数据量的检索和导出操作

  • sql优化

采用percona-toolkit的pt_query_digest收集慢日志,在系统中进行展示,并且支持一键获取优化建议

大侠之运维,相识便是缘
收集不易,点赞、留言、分享就是大侠🦸‍♀️写下去的动力!


👆点击查看更多内容👆


推荐阅读 ⬇️ 都是高赞

Linux超级漂亮的Shell

notepad++不用了,我用notepad next

再见了 Xshell、iTerm2、FinalShell,mobaxterm,这款开源的终端工具真香
windows远程不要再用mstsc了,推荐一款神器

       

PS:各类干货,每天更新,防止错过,记得读完点一下在看,加个星标,这样每次新文章推送才会第一时间出现在你的订阅列表里。在看支持下吧!


文章转载自大侠之运维,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论