Sql审核平台Archery的搭建和简单配置

打印 上一主题 下一主题

主题 906|帖子 906|积分 2718

Sql审核平台Archery的搭建和简单配置

   Archery是一个开源的Web应用,基于Python开发,利用Flask作为后端框架,前端采用Vue.js,构建了一个现代化的数据操作界面。提供了SQL审核、数据查询、报表天生等功能,同时支持多种数据库接入,包括Hive、MySQL、Oracle、SQL Server等。
  

  一.安装前查抄

  1. #检查是否安装docker及docker-compose
  2. docker --version
  3. docker-compose --version
复制代码

假如没安装docker大概docker-compose。
教程:Ubuntu20.04 LTS国内源安装指定版本Docker_ubuntu 20.04.1 lts 安装docker-CSDN博客
Docker安装和卸载(centos)_centos卸载docker-CSDN博客
  1. #docker-compose安装
  2. #下载docker-compose文件
  3. sudo curl -L https://github.com/docker/compose/releases/download/v2.20.2/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose
  4. #添加可执行权限
  5. sudo chmod +x /usr/local/bin/docker-compose
  6. #测试安装结果
  7. docker-compose --version
复制代码
二.预备安装文件

  1. #下载安装文件
  2. cd /home/
  3. wget https://github.com/hhyo/archery/archive/v1.11.0.tar.gz
  4. #解压
  5. tar -zxvf v1.11.0.tar.gz
  6. #重命名
  7. mv Archery-1.11.0 archery
复制代码


  1. #进入docker-compose文件所在位置
  2. cd src/docker-compose/
  3. #/home/archery/src/docker-compose
复制代码
  1. #内容如下cat docker-compose.yml
  2. version: '3'
  3. services:
  4.   redis:
  5.     image: redis:5
  6.     container_name: redis
  7.     restart: always
  8.     command: redis-server --requirepass 123456
  9.     expose:
  10.       - "6379"
  11.     healthcheck:
  12.       test: [ "CMD", "redis-cli", "ping" ]
  13.       interval: 5s
  14.       timeout: 5s
  15.       retries: 5
  16.   mysql:
  17.     image: mysql:5.7
  18.     container_name: mysql
  19.     restart: always
  20.     ports:
  21.       - "3306:3306"
  22.     volumes:
  23.       - "./mysql/my.cnf:/etc/mysql/my.cnf"
  24.       - "./mysql/datadir:/var/lib/mysql"
  25.     environment:
  26.       MYSQL_DATABASE: archery
  27.       MYSQL_ROOT_PASSWORD: 123456
  28.     healthcheck:
  29.       test: ["CMD", "mysqladmin", "ping"]
  30.       interval: 5s
  31.       timeout: 5s
  32.       retries: 5
  33.   goinception:
  34.     image: hanchuanchuan/goinception
  35.     container_name: goinception
  36.     restart: always
  37.     ports:
  38.       - "4000:4000"
  39.     volumes:
  40.       - "./inception/config.toml:/etc/config.toml"
  41.   archery:
  42.     # 下方的镜像地址仅为示例, 请前往以下地址确认你需要的版本:
  43.     # dockerhub https://hub.docker.com/r/hhyo/archery
  44.     # github packages https://github.com/hhyo/Archery/pkgs/container/archery
  45.     # 如有需要, 也可以自行build docker 镜像, 替换为自己的镜像
  46.     image: hhyo/archery:v1.10.0
  47.     container_name: archery
  48.     restart: always
  49.     depends_on:
  50.       redis:
  51.         condition: service_healthy
  52.       mysql:
  53.         condition: service_healthy
  54.     ports:
  55.       - "9123:9123"
  56.     volumes:
  57.       - "./archery/settings.py:/opt/archery/local_settings.py"
  58.       - "./archery/soar.yaml:/etc/soar.yaml"
  59.       - "./archery/docs.md:/opt/archery/docs/docs.md"
  60.       - "./archery/downloads:/opt/archery/downloads"
  61.       - "./archery/sql/migrations:/opt/archery/sql/migrations"
  62.       - "./archery/logs:/opt/archery/logs"
  63.       - "./archery/keys:/opt/archery/keys"
  64.     entrypoint: "bash /opt/archery/src/docker/startup.sh"
  65.     env_file:
  66.       - .env
复制代码
  1. #部署
  2. docker-compose up -d
复制代码
然后检察是否启动成功
  1. docker ps
  2. CONTAINER ID   IMAGE                                                                COMMAND                  CREATED        STATUS                            PORTS                                                  NAMES
  3. 52da46df8ddc   registry.cn-hangzhou.aliyuncs.com/docker_image-ljx/mysql:5.7         "docker-entrypoint.s…"   5 hours ago    Up 4 seconds (health: starting)   0.0.0.0:3306->3306/tcp, :::3306->3306/tcp, 33060/tcp   mysql
  4. efc34350d7df   registry.cn-hangzhou.aliyuncs.com/docker_image-ljx/archery:v1.10.0   "bash /opt/archery/s…"   23 hours ago   Up 4 seconds                      0.0.0.0:9123->9123/tcp, :::9123->9123/tcp              archery
  5. 92352a46d78a   registry.cn-hangzhou.aliyuncs.com/docker_image-ljx/goinception       "/usr/local/bin/dumb…"   23 hours ago   Up 3 seconds                      0.0.0.0:4000->4000/tcp, :::4000->4000/tcp              goinception
  6. caa42b1b499c   registry.cn-hangzhou.aliyuncs.com/docker_image-ljx/redis:5           "docker-entrypoint.s…"   23 hours ago   Up 2 seconds (health: starting)   6379/tcp                                               redis
复制代码
三.表结构初始化

  1. #确认运行成功后,进入archery容器
  2. docker exec -ti archery /bin/bash
  3. #进行如下操作初始化表结构
  4. cd /opt/archery
  5. source /opt/venv4archery/bin/activate
  6. python3 manage.py makemigrations sql  
  7. python3 manage.py migrate
  8. # 数据初始化
  9. python3 manage.py dbshell<sql/fixtures/auth_group.sql
  10. python3 manage.py dbshell<src/init_sql/mysql_slow_query_review.sql
  11. # 创建管理用户
  12. python3 manage.py createsuperuser
复制代码
  1. 用户名: admin
  2. 电子邮件地址: admin@qq.com
  3. Password: admin123          ( 实际操作中密码是不显示的 )
  4. Password (again): admin123
  5. 密码跟 用户名 太相似了。
  6. 密码长度太短。密码必须包含至少 9 个字符。
  7. 这个密码太常见了。
  8. Bypass password validation and create user anyway? [y/N]: y
  9. Superuser created successfully.
复制代码
四.浏览器访问测试

地点:<主机IP>:9123,用户名和暗码就是上一步创建的。

至此安装步调完毕。
五.配置数据库并简单测试

1.进入实例管理

选择添加实例

然后填入数据库相干信息

点击保存

2.选择SQL审核

SQL上线,点击提交SQL。

然后选择数据库实例,填入sql。

在触发检测的时候可以查抄SQL是否有误。

修改正确后就可以提交了

3.点击审核通过,而且立即实行


我们可以看到数据库里已经多出了这一条数据

实行成功后还可以检察大概下载回滚SQL对该操作进行回滚。


免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

tsx81429

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表