Linux下安装Archery及相关环境配置

Archery配置及使用教程 使用教程 参考文档 :官网 基础设置 1.添加实例 实例类型分为主库/从库,支持的数据库类型为MySQL/MsSQL/Redis/PostgreSQL/Oracle/MongoDB/Phoenix,功能支持明细可查看功能清单 资源组:实例都需要关联资源组,才能被关联资源组的用户访问 实例标签:通过支持上线、支持查询的标签来控制实例是否在SQL上线/查询中显示,要使用上线和查询的实例需要关联标签 1.1 添加实例配置 填写需要接入的实例名称、实例类型、数据库类型、实例连接地址等 2.添加资源组 资源 阅读详情

前言

Archery 定位于 SQL 审核查询平台,旨在提升 DBA 的工作效率,支持多种数据库的 SQL 上线和查询,同时支持丰富的 MySQL 运维功能,所有功能都兼容手机端操作

官网 Archery SQL 审核查询平台 - Archery

GitHub https://github.com/hhyo/Archery

准备工作

1. 安装升级Python36

yum install wget gcc make zlib-devel openssl openssl-devel
yum install epel-release
yum install python36 python36-pip

2. 创建 Python venv 环境(Python>=3.6.5,建议使用虚拟环境 )

cd /opt
pip3.6 install virtualenv -i https://mirrors.ustc.edu.cn/pypi/web/simple/
virtualenv venv4archery --python=python3
virtualenv venv4archery --python=python3.6
source /opt/venv4archery/bin/activate

  deactivate可以退出venv 环境

3. 关闭SeLinux

vim /etc/sysconfig/selinux

  英文输入状态下 按 i 进入insert模式  修改如下配置 

SELINUX=disabled

  按esc输入 :wq 保存并退出

正式步骤

 1. 下载源码

  方式一  链接: 百度网盘 请输入提取码 密码: fh43  放置/opt目录下

  方式二 

cd /opt
wget https://github.com/hhyo/archery/archive/v1.8.0.tar.gz

2. 解压源码

#解压包方式
tar -zxvf Archery-1.8.0.tar.gz
#wget方式
tar -zxvf v1.8.0.tar.gz 

 3. 安装相关依赖包

yum -y install gcc gcc-c++ python-devel mysql-devel openldap-devel unixODBC-devel gettext
yum -y install python36-devel
cd Archery-1.8.0
pip3 install -r requirements.txt -i https://mirrors.ustc.edu.cn/pypi/web/simple/

4. 安装Mysql

  Linux下安装MySQL及相关环境配置_让程序飞的博客-优快云博客

5. 安装Percona-Toolkits 

  Linux下安装Percona-Toolkits及相关环境配置_让程序飞的博客-优快云博客

6. 安装goInception

Linux下安装goInception及相关环境配置_让程序飞的博客-优快云博客

7. 安装SOAR

Linux下安装SOAR及相关环境配置_让程序飞的博客-优快云博客

8. 安装Nginx

Linux下安装Tengine(Nginx) 及相关环境配置_让程序飞的博客-优快云博客_linux tengine

安装好之后采用如下nginx配置 进入目录

cd /opt/tengine/conf/servers
touch archery.conf
vi archery.conf

   英文输入状态下 按 i 进入insert模式  新增如下配置

server{
        listen 9123; # 监听的端口
        server_name archery;
        client_max_body_size 20M; # 处理Request Entity Too Large
        proxy_read_timeout 600s;  # 超时时间与Gunicorn超时时间设置一致,主要用于在线查询
 
        location / {
          proxy_pass http://127.0.0.1:8000;
          proxy_set_header Host $host:9123; # 解决重定向404的问题,和listen端口保持一致,如果是docker则和宿主机映射端口保持一致
          proxy_set_header X-Real-IP $remote_addr;
          proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
          proxy_set_header X-Forwarded-Proto $scheme;
        }
 
        location /static {
          alias /opt/Archery-1.8.0/static; # 此处指向settings.py配置项STATIC_ROOT目录的绝对路径,用于nginx收集静态资源
        }
 
        error_page 404 /404.html;
            location = /40x.html {
        }
 
        error_page 500 502 503 504 /50x.html;
            location = /50x.html {
        }
} 

   按esc输入 :wq 保存并退出

9. 刷新nginx配置

 nginx -s reload

10. Archery配置

cd /opt/Archery-1.8.0/archery
vi settings.py

  英文输入状态下 按 i 进入insert模式  修改如下配置  文件内容过多  这里贴出我改动过的地方 

# 关闭debug模式
DEBUG = False

# 该项目本身的mysql数据库地址
DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql',
        'NAME': 'archery',
        'USER': 'root',
        'PASSWORD': 'newpass',
        'HOST': '127.0.0.1',
        'PORT': '3306',
        'OPTIONS': {
            'init_command': "SET sql_mode='STRICT_TRANS_TABLES'",
            'charset': 'utf8mb4'
        },
        'TEST': {
            'NAME': 'test_archery',
            'CHARSET': 'utf8mb4',
        },
    }
}

CACHES = {
    "default": {
        "BACKEND": "django_redis.cache.RedisCache",
        "LOCATION": "redis://127.0.0.1:6379/0",
        "OPTIONS": {
            "CLIENT_CLASS": "django_redis.client.DefaultClient",
            "PASSWORD": "newpass"
        }
    },
    "dingding": {
        "BACKEND": "django_redis.cache.RedisCache",
        "LOCATION": "redis://127.0.0.1:6379/1",
        "OPTIONS": {
            "CLIENT_CLASS": "django_redis.client.DefaultClient",
            "PASSWORD": "newpass"
        }
    }
}

  按esc输入 :wq 保存并退出

11. 创建数据库

mysql -h 127.0.0.1  -u root -p

 注:提示输入密码  填入即可

create database archery default character set=utf8mb4;

12. 数据库初始化 

cd /opt/Archery-1.8.0
source /opt/venv4archery/bin/activate
python3 manage.py makemigrations sql
python3 manage.py migrate

13. 数据初始化

python3 manage.py dbshell<sql/fixtures/auth_group.sql
python3 manage.py dbshell<src/init_sql/mysql_slow_query_review.sql

14. 创建管理用户

python3 manage.py createsuperuser

  此时会要求输入用户名密码,用于web页面登录

  Username: admin
  Email address: admin@qq.com
  Password: adminpassword

15. 启动

source /opt/venv4archery/bin/activate
cd /opt/Archery-1.8.0
#启动
./startup.sh &

16. 访问

开启防火墙端口

http://ip:9123

输入用户名密码  admin/adminpassword  进入主页

17. 使用文档

Archery配置及使用教程_让程序飞的博客-优快云博客_archery使用

问题集锦

1. File "/usr/bin/yum", line 30 except KeyboardInterrupt, e:

修改/usr/bin/yum文件中的第一行为#!/usr/bin/python2.7 

2. WARNING: You are using pip version 20.1.1; however,version 20.2.3 is available

升级pip  输入python -m pip install -U pip

3. 依赖包mysql-devel安装报错

方式一

cd /etc/yum.repos.d/
rpm -ivh http://repo.mysql.com/mysql57-community-release-el7-8.noarch.rpm
yum install mysql-devel

方式二

先安装Mysql 再安装依赖包

4. NameError: name ‘_mysql‘ is not defined

pip install pymysql

settings.py 顶部添加 

import pymysql
pymysql.version_info = (1, 4, 13, "final", 0)
pymysql.install_as_MySQLdb()

5. ModuleNotFoundError: No module named 'Crypto'

pip3 uninstall crypto
pip3 uninstall pycrypto
pip3 install pycrypto

Archery使用前必须设置的系统管理配置 BACKUP_HOST、BACKUP_PORT、BACKUP_USER、BACKUP_PASSWORD:查看config.toml文件和里面配置的保持一样。GO_INCEPTION_PORT:默认端口4000。系统管理-配置项管理-goinception配置。创建好可以点击实例后面的测试按钮,是否连通。GO_INCEPTION_HOST:容器名。系统管理-其它配置管理-用户管理。系统管理-资源组管理-添加组。实例管理-实例列表-添加实例。设置实例信息、资标签。 阅读详情

相关推荐

docker部署SQL审核平台Archery

docker部署SQL审核平台Archery

Bertram的博客 702

centos7安装配置archery

官方文档: https://github.com/hhyo/archery/wiki/manual 一、基础环境安装 1、升级Python [root@localhost ~]# yum install epel-release -y [root@localhost ~]# yum install python36 python36-pip -y 2、安装virtualenv [root@localhost ~]# pip3.6 install virtualenv -i https://mirrors.

oToyix的博客 2843

【毕设】基于LoRa的物联网控制器:从原理图到PCB的完整硬件设计指南

本文提供了一份完整的基于LoRa的物联网控制器硬件设计指南,涵盖从系统框图、原理图设计到PCB布局布线的全流程。详细讲解了电源电路、单片机最小系统、信号接口以及LoRa无线模块等核心模块的设计要点与抗干扰技巧,并分享了实用的调试心得,旨在帮助电子、物联网专业学生顺利完成毕业设计,掌握低功耗远距离物联网节点的硬件开发实践。

weixin_42126677的博客 306

Archery部署和使用

数据库sql审核查询平台

ErnestW的博客 9010

GWAS与eQTL相结合,进一步筛选疾病相关基因

欢迎关注”生信修炼手册”!在GWAS分析结果中,大部分显著的SNP位点都位于非编码区,很难直接挖掘这些位点的调控机制。通常假设与疾病关联的SNP位点通过调控基因表达来发挥作用,而eQTL...

庐州月光的博客 1万+

DDR March系列算法整理

一

不吃鱼的猫的博客 1万+

使用 Apache Arrow 的 Docker 与 Archery 构建本地可复现的 CI 环境

Apache Arrow 项目的大部分 Linux 持续集成(CI)任务都通过 Docker 与 docker-compose 解耦自公共 CI 服务,从而在本地也能一键复现 CI 构建。本文以仓库中的 [docker.rst](https://link.gitcode.com/i/115bc4664b385d6c85b58ab74f02ad1a) 文档为骨架,结合 [docker-compose

gitblog_00433的博客 1032

STM32F4系列HAL库配置定时器实验——输入捕获

STM32F4系列HAL库配置定时器实验——输入捕获 输入捕获简单讲解 输入捕获模式可以用来测量脉冲宽度或者测量频率。我们以测量周期和频率为例,用一个简图来说明输入捕获的原理 假定定时器工作在向上计数模式, 图中 t1~t2 时间,就是我们需要测量的高电平时间。测量方法如下:首先设置定时器通道 x 为 上升沿捕获,这样,t1 时刻,就会捕获到当前的 CNT 值,然后立即清零 CNT,并设置通道 x为下降沿捕获,这样到 t2 时刻,又会发生捕获事件,得到此时的 CNT 值,记为 CCRx2。这样,根据定时器

azs0504的博客 9286

Linux服务器上如何搭建archery(数据库管理系统)

Archery 是一款开源的数据库管理平台,主要用于帮助用户更高效地管理和监控数据库,尤其是针对大规模分布式数据库的管理。Archery 的名字来源于传统的射箭运动,象征着精准与控制,正如它在数据库管理中的目标——为开发者和运维团队提供精准、稳定的数据库管理体验。它最初由阿里巴巴团队开发,旨在提供一个灵活、易扩展的数据库管理平台,支持多种数据库类型,包括 MySQL、PostgreSQL、SQL Server 和更多。

weixin_58701060的博客 1316

2025年普通人转向人工智能运维(AIOps)学习建议(附最新技术实践与资源)

AIOps不仅是技术的叠加,更是运维流程的重构。建议通过“学习-实践-反馈”循环,逐步从工具使用者成长为解决方案设计者。如需完整资源链接,可访问上述推荐的优快云博客及GitHub仓库。

资深全栈架构师,乐于在 优快云 分享技术见解,与大家携手共进,共攀技术巅峰! 3096

harbor x509: certificate signed by unknown authority【20251222】

本教程通过「合并证书链(服务器端)+ 预置根 CA(客户端)」彻底解决了自签名证书的 x509 错误,同时集成了 Trivy 漏洞扫描,实现了 Harbor 从搭建到实用的全流程。证书链合并是服务器端的关键,确保客户端获取完整信任路径;客户端需同时配置「系统信任库 + Docker 信任目录」,避免 Docker 独立信任机制导致的问题;所有 IP 需保持一致(Harbor 配置、证书绑定、客户端访问),是避免错误的基础。

老韩的Linux云计算架构师进阶之路 681

Apache Arrow 开发者工具 Archery 完全指南:安装、命令与 Docker 持续集成实战

Apache Arrow 是一个面向多语言的高性能列式内存数据交换与处理工具箱,其仓库规模庞大、语言绑定众多,日常开发涉及 C++ 构建、多语言集成测试、代码规范检查、基准对比与打包发布等多类任务。为了统一并简化这些高频工作,Apache Arrow 在仓库内提供了一套用 Python 编写的开发者实用工具——**Archery**。本篇指南将围绕 `docs/source/developers/

gitblog_01041的博客 485

QT控件 参考Qt的PIMPL设计模式实现使用QWidget控件绘制3D饼状图表和3D柱状图表,使用QChartView绘制圆柱体图表

工作中之前遇到了绘制3D饼状图表的需求,通过Qt 实现3维饼状图 一文,成功迅速解决问题,现在闲下来了,之前看QtTreePropertyBrowser库的源代码,就想着学习学习Qt的PIMPL模式,于是就参照PIMPL模式实现通过QWidget控件的paintEvent函数重新绘制3D饼状图表和3D柱状图表统计数据的显示效果, 而使用QChartView绘制圆柱体图表完全是取巧了,为了紧急完成工作采用的方法,实际上使用3D柱状图表显示统计数据更加合理。

... 727

Apache Arrow 开发者工具 Archery 完整使用指南:从安装子包到构建、Lint、基准测试与 Crossbow 打包

Archery 是 Apache Arrow 仓库内置的一套 Python 命令行开发工具集,用于简化 Arrow 开发者日常的代码检查(lint)、C++ 构建初始化、基准测试对比、Docker 构建、跨语言集成测试以及跨平台打包调度(Crossbow)等高频操作。本文基于仓库中的 [dev/archery/README.md](https://link.gitcode.com/i/f1e084

gitblog_00931的博客 152

2025年再论 SAP ABAP 系统经典的三层架构的理解

【摘要】本文基于作者19年SAP开发经验,深入解析SAP经典三层架构在S/4HANA时代的演进与实践。数据库层从多数据库支持转向HANA专属,通过SQLScript实现计算下推;应用层以ABAP平台为核心,融合OData和RAP等现代开发范式;表现层从SAP GUI过渡到Fiori Launchpad为主导。文章通过真实案例(如月末关账优化、ATP检查改造)展示三层协作如何提升性能,并探讨了本地/云/混合部署策略。全文贯穿SAP官方技术文档参考,为开发者提供体系化架构认知和实践指导。

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 756

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

Apache Arrow 持续集成(CI)体系深度解析:Docker 构建、Archery 与 Crossbow 实战指南

Apache Arrow 是一个横跨 C++、Python、Java、R、Ruby、Go、JavaScript 等多种语言的多语言数据交换与内存处理工具箱,其持续集成(Continuous Integration)体系也因此异常复杂:需要同时覆盖不同的包管理器、编译器、软件库版本、操作系统及其组合。本指南以仓库 [docs/source/developers/continuous_integrat

gitblog_00110的博客 131

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

Apache Arrow 持续集成体系全解:Docker 构建、Archery 与 Crossbow 的协作架构与实战

Apache Arrow 是一个跨语言的数据交换与内存处理工具箱,其持续集成(CI)体系需要覆盖多种包管理器、编译器、依赖版本、操作系统与硬件架构的组合。本篇技术指南以仓库中 [docs/source/developers/continuous_integration](https://link.gitcode.com/i/0a5f23137fe148059bf9392e8565e145) 系列文

gitblog_00243的博客 469

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

IMSL CNL 7.0.0 (x86-64)Crack

IMSL CNL 7.0.0 (x86-64)Crack intel的算法库破解文件,这是C++版本的破解文件

SQL审核平台Archery1.10部署

安装前准备安装python3.9.10yuminstalllibffi-develwgetgccmakezlib-developensslopenssl-develncurses-developenldap-develgettextbzip2-develxz-devel wget "https://www.python.org/ftp/python/3.9.10/Pyth...

qq_34692500的博客 353

Apache Arrow 开发者利器:用 Archery 统一日常构建、基准测试与持续集成工作流

Apache Arrow 仓库规模庞大(C++、Java、Python、R、Ruby 等多个语言实现并存),日常开发中构建、测试、基准对比与 CI 调度高度重复。Archery 是 Arrow 官方为开发者打造的 Python 命令行工具,把初始化 C++ 构建、运行基准测试、调度 Docker Compose 构建、执行跨语言集成测试等任务统一封装为独立子命令。读完本文,你将掌握 Archery

gitblog_00881的博客 522

Apache Arrow Java 构建指南:从源码编译、JNI 本地库到 Nightly 包安装的完整实践

本篇技术指南围绕 [docs/source/developers/java/building.rst](https://link.gitcode.com/i/e0851f89a45eabb41fd050d71f0e5390) 展开,系统讲解如何在本地从源码构建 Apache Arrow 的 Java 模块(`arrow-vector`、`arrow-memory`、`flight-core`、`d

gitblog_00863的博客 466

Apache Arrow 的 Docker 化 CI 构建:Archery、docker-compose 与分层镜像体系完全指南

Apache Arrow 将绝大多数基于 Linux 的持续集成(CI)任务与公共 CI 服务解耦,统一封装在 Docker 与 docker-compose 之中,从而在本地获得与 CI 完全一致的可复现构建环境。本文基于仓库中的 [docker.rst](https://link.gitcode.com/i/846a0ae6340e0b3c76a27125935dba82) 文档,结合 [do

gitblog_00159的博客 13

数据源审计平台Archery搭建和部分注意点

数据源审计平台Archery搭建和部分注意点, 新项目引入

mys328的专栏 742

Apache Arrow 的 PyArrow 源码开发指南:编码规范、单元测试与跨平台构建全解析

> 本文是 Apache Arrow 项目中 PyArrow(Python 语言绑定)的开发者指南,覆盖从编码风格检查、pytest 单元测试体系、测试分组与 doctest,到 Linux/macOS/Windows 三平台从零源码构建 PyArrow 的完整流程,并深入解读 CMake preset、`PYARROW_*` 环境变量矩阵、调试技巧与清理策略。读完本文,你将具备独立搭建 PyAr

gitblog_00517的博客 142

Apache Arrow 持续集成体系全解析:GitHub Actions 触发构建与 Crossbow 扩展构建实战指南

Apache Arrow 是一个横跨 C++、Python、Java、R、Go、Ruby、C#、Swift 等多种语言的列式内存数据格式与处理工具箱,其持续集成(CI)体系需要同时覆盖不同包管理器、编译器、软件库版本、操作系统与架构的组合,复杂度远超普通项目。本文以仓库中 [CI 总览文档](https://link.gitcode.com/i/959ef30556adbf7a699b86f0ca

gitblog_00832的博客 207
上一篇: Linux下安装SOAR及相关环境配置
下一篇: Linux下安装Nginx及相关环境配置
让程序飞
博客等级 码龄10年 8831粉丝 99原创
评论 4
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

让程序飞

您的鼓励将是我最大的动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值