【SQL 审核查询平台】Archery使用介绍

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
RDS MySQL Serverless 高可用系列,价值2615元额度,1个月
简介: 【SQL 审核查询平台】Archery使用介绍

【SQL 审核查询平台】Archery使用介绍

界面截图

image.png

功能清单

image.png

依赖清单

框架

  • 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
  • 贡献代码

部署

准备运行配置

具体可参考:github.com/hhyo/Archer…

启动

下载 Releases文件,解压后进入docker-compose文件夹 如果网络受限可访问码云地址: gitee


#启动
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/

修改配置项

image.png

配置项说明

基础设置

添加实例

  • 实例类型分为主库/从库,支持的数据库类型为MySQL/MsSQL/Redis/PostgreSQL/Oracle/MongoDB/Phoenix/ODPS/ClickHouse,功能支持明细可查看功能清单
  • 资源组:实例都需要关联资源组,才能被关联资源组的用户访问
  • 实例标签:通过支持上线、支持查询的标签来控制实例是否在SQL上线/查询中显示,要使用上线和查询的实例需要关联标签

image.png

添加资源组

资源组是一堆资源对象的集合,与用户关联后用来隔离资源访问权限,一般可以按照项目组划分

image.png

资源组关联用户/实例

用户必须关联资源组才能访问资源组内的实例资源 - 关联对象管理可以批量关联实例和用户 - 在添加用户和实例的时候也可以批量关联资源组

image.png

添加权限组

权限组是一堆权限的集合,类似于角色的概念,工作流的审批配置就是配置的权限组 - 权限组可以按照角色来创建,比如DBA、工程师、项目经理,目前系统初始化数据中会提供五个默认权限组,也可自由分配权限 - 仅[sql|permission]开头的权限是控制业务操作的权限,其他都是控制Django管理后台的权限,与业务无关,可不分配

image.png

用户关联权限组/权限

用户所拥有的权限=用户所在权限组的权限+给用户单独分配的权限

image.png

设置工单上线和查询的审批流程

项目提供简单的多级审批流配置,审批流程和资源组以及审批类型相关,不同资源组和审批类型可以配置不同的审批流程,审批流程配置的是权限组,可避免审批人单点的问题

image.png

设置默认资源组和默认权限组

可在系统配置中进行修改,详见 配置项说明

设置默认资源组和默认权限组,新用户第一次登录时会自动关联,可避免用户登录后出现403(未授权)的问题


相关文章
|
1天前
|
SQL 关系型数据库 MySQL
MYSQL根据查询结果删除sql 去除重复id 新增对比前一条与后一条数据 去重3种方法​ 窗口函数
MYSQL根据查询结果删除sql 去除重复id 新增对比前一条与后一条数据 去重3种方法​ 窗口函数
|
2天前
|
SQL Java 关系型数据库
Mybatis多表关联查询与动态SQL(下)
Mybatis多表关联查询与动态SQL
16 0
|
2天前
|
SQL Java 数据库连接
Mybatis多表关联查询与动态SQL(上)
Mybatis多表关联查询与动态SQL
9 0
|
2天前
|
SQL 分布式计算 DataWorks
实时数仓 Hologres产品使用合集之查询分区表的生命周期(即之前设置的'auto_partitioning.num_retention'值)的SQL语句,可以使用什么查询
实时数仓Hologres是阿里云推出的一款高性能、实时分析的数据库服务,专为大数据分析和复杂查询场景设计。使用Hologres,企业能够打破传统数据仓库的延迟瓶颈,实现数据到决策的无缝衔接,加速业务创新和响应速度。以下是Hologres产品的一些典型使用场景合集。
17 0
|
2天前
|
SQL 前端开发
基于jeecgboot复杂sql查询的列表自定义列实现
基于jeecgboot复杂sql查询的列表自定义列实现
11 0
|
2天前
|
SQL 数据库
SQL数据库基础语法-查询语句
SQL数据库基础语法-查询语句
|
2天前
T-sql 高级查询( 5*函数 联接 分组 子查询)
T-sql 高级查询( 5*函数 联接 分组 子查询)
|
2天前
|
机器学习/深度学习
T-sql 各种查询命令
T-sql 各种查询命令
|
2天前
|
SQL 关系型数据库 数据库
SQL 42501: Postgresql查询中的权限不足错误
SQL 42501: Postgresql查询中的权限不足错误
|
2天前
|
SQL 分布式计算 大数据
MaxCompute操作报错合集之在sql 里嵌套查询时,查询条件带有instr时报错,如何解决
MaxCompute是阿里云提供的大规模离线数据处理服务,用于大数据分析、挖掘和报表生成等场景。在使用MaxCompute进行数据处理时,可能会遇到各种操作报错。以下是一些常见的MaxCompute操作报错及其可能的原因与解决措施的合集。